komputek-anime.blogspot.com Yondaime Images Wallpaper Hitsugaya ban-kai Images Wallpaper Naruto And Kyuubi Wallpaper Kakashi Cape Wallpaper Anbu Kakashi Wallpaper Uchiha Madara Wallpaper Grimmjaw Sixth Espada Wallpaper Kuchiki Byakuya-searching For Purpose Wallpaper

Senin, 23 Juni 2014

BIOINFORMATIKA


NAMA : Mustika Ningrum
KELAS : 4IA19
NPM : 54410874
ALAMAT BLOG : komputek-anime.blogspot.com
DOSEN : KUWAT S.
MATERI : BIOINFORMATIKA


Softkill Pada Matkul Komputasi Modern

BAB I
PENDAHULUAN
1.1. Latar Belakang Bioinformatika Pada Bidang Tekhnology

Teknologi computer dan metode statistika untuk mengelompokkkan dan menganalisa besarnya data biologi seperti DNA, RNA, rangkaian protein, struktur protein, riwayat gen dan interaksi protein disebut dengan istilah Bioinformatika yang merupakan salah satu cabang baru ilmu biologi yang merupakan perpaduan antara biologi dan teknologi informasi. Menurut Durso (1997) bioinformatika adalah manajemen dan analisis informasi biologis yang disimpan dalam database merupakan aplikasi dari disiplin beberapa disiplin ilmu yaitu biologi, biokimia, matematika dan komputasi.Ilmu ini mengajarkan aplikasi, analisis, dan mengorganisir miliaran bit informasi ompute dalam sel mahluk hidup. Studi bioinformatika terutama didukung uleh studi ompute, biologi komputasi, dan teknologi omputer. Menurut Roderick (lihat Hieter & Boguski, 1997), Compute adalah studi yang berhubungan dengan pemetaan, sekuen, dan analisis genom.

BioInformatika sendiri mencakup kajian yang lebih mendalam dari ompute. Dalam studi bioinformatika digunakan komputer yang mampu menyimpan data dalam jumlah yang sangat banyak dan didukung berbagai macam software untuk menganalisis jutaan data yang berasal dari mahluk hidup.

BAB II
ISI PEBAHASAN

2.2 Perkembangan Bioinformatika

Studi Bioinformatika mulai tumbuh sebagai akibat dari perkembangan berbagai metode sekuens baru yang menghasilka data yang sangat banyak. Hal tersebut, secara kebetulan, didukung pula oleh teknologi penyimpanan, manajemen, dan pertukaran data melalui komputer. Inovasi dalam pemetaan dan sekuensing memiliki peran penting dalam proses pengambilan data biologis. Penggunaan Yeast Artificial Chromosome (YAC), sangat membantu dalam konstruksi peta fisik genom kompleks secara lengkap (Touchmann & Green, 1998). Untuk mengklon fragmen-fragmen DNA besar (sekitar 150.000 pasangan basa) digunakan bacterial Artificial Chromosome (BAC).

Kemungkinan, teknologi yang paling banyak kontribusinya adalah teknologi PCR. Walaupun tergolong tua (PCR ditemukan tahun 1985), meode ini sangat efektif, dan telah mengalami penyempurnaan selama bertahun-tahun.

Perkembangan teknologi sekuensing dimulai dan semi-automatic sequencer yang pertama pada tahun 1987, dilanjutkan dengan Taq Cycle sequencing pada tahun 1990. Pelabelan Flourescen fragmen DNA dengan Sanger dideoxy Chain Termination Method, merupakan dasar bagi proyek sekuensing skala besar (Venter et. al., 199).

Seluruh perkembangan tersebut sia-sia saja tanpa obyek yang diteliti, yang memiliki nilai komersil tinggi dan data yang berlimpah. Gampang ditebak, pasti Manusia melalui Human Genome Project.

Selain perkembangan dalam bidang Genomik, Bioinformatika sangat dipengaruhi oleh perkembangan di bidang teknologi informasi dan komputer.

Pada fase awal (sekitar tahun 80-an) perkembangan yang paling signifikan adalah kapasitas penyimpanan data. Dari hanya baeberapa puluh byte (1980), hingga mencapai Terabyte (1 terabyte=1 trilyun byte),

Setelah pembuatan database, selanjutnya dimulai perkembangan pemuatan perangkat lunak untuk mengolah data. Awalnya, metode yang digunakan hanya pencariaan kata kunci, dan kalimat pendek. perkembangan selanjutnya berupa perangkat lunak dengan algoritma yang lebih kompleks, seperti penyandian nukleotida, menjadi asam-asam amino, kemudian membuat struktur proteinnya.

Saat ini, perangkat lunak yang tersedia meliputi pembacaan sekuens nukleotida dari gel elektroforesis, prediksi kode protein, identifikasi primer, perbandingan sekuens, analisis kekerabatan, pengenalan pola dan prediksi struktur. Dengan perkembangan seperti diatas, ternyata masih belum cukup. Kurangnya pemahaman terhadap sistem biologis dan organisasi molekular membua analisis sekuens masih mengalami kesulitan. Perbandingan sekuens antar spesies masih sulit akibat variabilitas DNA.

Usaha yang dilakukan saat ini, baru mencoba mempelajari eori-teori tersebut melalui proses inferensi, penyesuaian model, dan belajar dari contoh yang tersedia (Baldi & Brunac, 1998).

Perkembangan perangkat keras komputer juga berperan sangat penting. Kecepatan prosesor, kapasitas RAM, dan kartu grafik merupakan salah satu pendorong majunya bioinformatika.

Terakhir perkembangan bioinformatika sangat dipengaruhi oleh pertumbuhan jaringan Internet. Mulai dari e-mail, FTP, Telnet (1980-an), Gopher, WAIS, hingga ditemukannya World Wide Web oleh Tim Berners-Lee pada tahun 1990, mendukung kemudahan transfer data yang cepat dan mudah. Saat ini, telah tersedia sekitar 400 database biologis yang dapat diakses melalui internet.

2.2 Bidang-Bidang yang Terkait dengan Bioinformatika :

a.Biophysics
Biologi molekul sendiri merupakan pengembangan yang lahir dari biophysics. Biophysics adalah sebuah bidang interdisipliner yang mengaplikasikan teknik- teknik dari ilmu Fisika untuk memahami struktur dan fungsi biologi (British Biophysical Society). Sesuai dengan definisi di atas, bidang ini merupakan suatu bidang yang luas. Namun secara langsung disiplin ilmu ini terkait dengan Bioinformatika karena penggunaan teknik-teknik dari ilmu Fisika untuk memahami struktur membutuhkan penggunaan TI.

b.Computational Biology
Computational biology merupakan bagian dari Bioinformatika (dalam arti yang paling luas) yang paling dekat dengan bidang Biologi umum klasik. Fokus dari computational biology adalah gerak evolusi, populasi, dan biologi teoritis daripada biomedis dalam molekul dan sel. Tak dapat dielakkan bahwa Biologi Molekul cukup penting dalam computational biology, namun itu bukanlah inti dari disiplin ilmu ini. Pada penerapan computational biology, model-model statistika untuk fenomena biologi lebih disukai dipakai dibandingkan dengan model sebenarnya. 

Dalam beberapa hal cara tersebut cukup baik mengingat pada kasus tertentu eksperimen langsung pada fenomena biologi cukup sulit. Tidak semua dari computational biology merupakan Bioinformatika, seperti contohnya Model Matematika bukan merupakan Bioinformatika, bahkan meskipun dikaitkan dengan masalah biologi.

c.Cheminformatics
Cheminformatics adalah kombinasi dari sintesis kimia, penyaringan biologis, dan pendekatan data-mining yang digunakan untuk penemuan dan pengembangan obat (Cambridge Healthech Institute’s Sixth Annual Cheminformatics conference). Pengertian disiplin ilmu yang disebutkan di atas lebih merupakan identifikasi dari salah satu aktivitas yang paling populer dibandingkan dengan berbagai bidang studi yang mungkin ada di bawah bidang ini.

Salah satu contoh penemuan obat yang paling sukses sepanjang sejarah adalah penisilin, dapat menggambarkan cara untuk menemukan dan mengembangkan obatobatan hingga sekarang –meskipun terlihat aneh–. Cara untuk menemukan dan mengembangkan obat adalah hasil dari kesempatan, observasi, dan banyak proses kimia yang intensif dan lambat. Sampai beberapa waktu yang lalu, disain obat dianggap harus selalu menggunakan kerja yang intensif, proses uji dan gagal (trial-error process).

Kemungkinan penggunaan TI untuk merencanakan secara cerdas dan dengan mengotomatiskan proses-proses yang terkait dengan sintesis kimiawi dari komponen-komponen pengobatan merupakan suatu prospek yang sangat menarik bagi ahli kimia dan ahli biokimia. Penghargaan untuk menghasilkan obat yang dapat dipasarkan secara lebih cepat sangatlah besar, sehingga target inilah yang merupakan inti dari cheminformatics.
Ruang lingkup akademis dari cheminformatics ini sangat luas. Contoh bidang minatnya antara lain: Synthesis Planning, Reaction and Structure Retrieval, 3-D Structure Retrieval, Modelling, Computational Chemistry, Visualisation Tools and Utilities.

d.Genomics
Genomics adalah bidang ilmu yang ada sebelum selesainya sekuen genom, kecuali dalam bentuk yang paling kasar. Genomics adalah setiap usaha untuk menganalisa atau membandingkan seluruh komplemen genetik dari satu spesies atau lebih. Secara logis tentu saja mungkin untuk membandingkan genom-genom dengan membandingkan kurang lebih suatu himpunan bagian dari gen di dalam genom yang representatif.

g.Mathematical Biology
Mathematical biology lebih mudah dibedakan dengan Bioinformatika daripada computational biology dengan Bioinformatika. Mathematical biology juga menangani masalah-masalah biologi, namun metode yang digunakan untuk menangani masalah tersebut tidak perlu secara numerik dan tidak perlu diimplementasikan dalam software maupun hardware. Bahkan metode yang dipakai tidak perlu “menyelesaikan” masalah apapun; dalam mathematical biology bisa dianggap beralasan untuk mempublikasikan sebuah hasil yang hanya menyatakan bahwa suatu masalah biologi berada pada kelas umum tertentu. 

Istilah proteomics pertama kali digunakan untuk menggambarkan himpunan dari protein-protein yang tersusun (encoded) oleh genom. Ilmu yang mempelajari proteome, yang disebut proteomics, pada saat ini tidak hanya memperhatikan semua protein di dalam sel yang diberikan, tetapi juga himpunan dari semua bentuk isoform dan modifikasi dari semua protein, interaksi diantaranya, deskripsi struktural dari proteinprotein dan kompleks-kompleks orde tingkat tinggi dari protein, dan mengenai masalah tersebut hampir semua pasca genom. 



h.Pharmacogenomics
Pharmacogenomics adalah aplikasi dari pendekatan genomik dan teknologi pada identifikasi dari target-target obat. Contohnya meliputi menjaring semua genom untuk penerima yang potensial dengan menggunakan cara Bioinformatika, atau dengan menyelidiki bentuk pola dari ekspresi gen di dalam baik patogen maupun induk selama terjadinya infeksi, atau maupun dengan memeriksa karakteristik pola-pola ekspresi yang ditemukan dalam tumor atau contoh dari pasien untuk kepentingan diagnosa (kemungkinan untuk mengejar target potensial terapi kanker). 

Istilah pharmacogenomics digunakan lebih untuk urusan yang lebih “trivial” — tetapi dapat diargumentasikan lebih berguna– dari aplikasi pendekatan Bioinformatika pada pengkatalogan dan pemrosesan informasi yang berkaitan dengan ilmu Farmasi dan Genetika, untuk contohnya adalah pengumpulan informasi pasien dalam database.

i.Pharmacogenetics
Tiap individu mempunyai respon yang berbeda-beda terhadap berbagai pengaruh obat; sebagian ada yang positif, sebagian ada yang sedikit perubahan yang tampak pada kondisi mereka dan ada juga yang mendapatkan efek samping atau reaksi alergi. Sebagian dari reaksi-reaksi ini diketahui mempunyai dasar genetik. Pharmacogenetics adalah bagian dari pharmacogenomics yang menggunakan metode genomik/Bioinformatika untuk mengidentifikasi hubungan-hubungan genomik, contohnya SNP (Single Nucleotide Polymorphisms), karakteristik dari profil respons pasien tertentu dan menggunakan informasi-informasi tersebut untuk memberitahu administrasi dan pengembangan terapi pengobatan. 

Secara menakjubkan pendekatan tersebut telah digunakan untuk “menghidupkan kembali” obat-obatan yang sebelumnya dianggap tidak efektif, namun ternyata diketahui manjur pada sekelompok pasien tertentu. Disiplin ilmu ini juga dapat digunakan untuk mengoptimalkan dosis kemoterapi pada pasien-pasien tertentu. Gambaran dari sebagian bidang-bidang yang terkait dengan Bioinformatika di atas memperlihatkan bahwa Bioinformatika mempunyai ruang lingkup yang sangat luas dan mempunyai peran yang sangat besar dalam bidangnya. Bahkan pada bidang pelayanan kesehatan Bioinformatika menimbulkan disiplin ilmu baru yang menyebabkan peningkatan pelayanan kesehatan.

BAB III
ANALISA

3.1 Potensi dan Aplikasi Bioinformatika

Potensi komersial dari aplikasi bioinformatika sangat menggiurkan. Pada tahun 1998 saja, pangsa pasarnya mencapai sekitar $290 juta, dan diperkirakan akan mencapai $2 milyar pada tahun 2005.

Selama bulan Maret tahun 2000 investasi pada bidang ini sedikitberkurang. Hal tersebut disebabkan oleh pernyataan Presiden AS Bill Clinton dan PM Inggris Tony Blair, yang membebaskan akses terhadap informasi genom manusia sehingga dianggap menghalangi paten terhadap genom manusia. Tapi, pada akhir bulan, investasi mulai kembali normal karena bioinformatika masih dianggap cukup prospektif di masa depan.

Menurut laporan Ventureone di Amerika Serikat pada tahun 2001 dana-dana ventura telah mencapai $700 juta digunakan untuk pengembangan bioinformatika.

Sementara itu, kepala Divisi Teknologi Khusus untuk Bioinformatika yang pertama di Microsoft menganggap, ini adalah peluang yang amat besar. Penjualan komputer untuk ilmuwan-ilmuwan akan mencapai $43 juta.

3.2 Aplikasi BioInformatika

1.Transformasi sekuen menjadi informasi genetik.

Intinya adalah menjual data, dalam bentuk gen komplit, atau fragmen, yang dapat digunakan oleh pihak lain untuk mencari potensi terhadap gen tersebut.

2.Pasien sebagai komoditas

Pasien dengan kecenderungan terhadap penyakit tertentu dapat diketahui, sehingga mudah sekali bagi perusahaan oba untuk menawarkan produknya.

3.Mencari potensi gen

Potensi dari sebuah gen sangat beragam, bergantung pada ekspresi gen tersebut. Aplikasi lebih lanjut dapat berupa transgenik, terapi genetik, atau berbagai rekayasa dan pemanfaatan geneik lainnya.

3.3 Permasalahan dan tantangan yang dihadapi

Perkembangan yang sedemikian pesat menghasilkan berbagai teknik dan perangkat baru dalam melakukan manajemen dan analisis data. Karena beragamnya teknik dan perangkat tersebut, terjadi kesulitan dalam perbandingan, penyimpanan, dan analisis data dari berbagai platform (Ladd, 2000).

Usaha standarisasi sedang dilakukan belakangan ini. Salah satu usaha standarisasi yang paling terkenal adalah BioStandard Project yang dilakukan oleh European Bioinformatics Institute (Cambridge, UK). Proyek ini didanai oleh European Bioinformatics Institute, The European Commission, dan beberapa perusahaan farmasi. Dalam proyek tersebut, dilakukan pengembangan perangkat lunak pengolah data yang sesuai dengan standar saat ini maupun masa depan (Murray-Rust, 1994)

Selain standarisasi, bioinformatika juga memiliki masalah lain, yaitu pengolahan data. Saat ini, data yang berhasil dikumpulkan saat ini, sehingga membutuhkan waktu yang sangat lama untuk dianalisis.

Data dasar yang diperoleh dari data genomik hanya berupa sekumpulan simbol A, G, T, dan C yang jumlahnya mencapai milyaran bahkan trilyunan. Kesulitannya adalah bagaimana merubah simbol tersebut menjadi -misalnya- gen penyakit asma. Proses menganalisis data genomik menjadi informasi yang dapat dimengerti biasa disebut Data Mining.

Dalam proses Data Mining digunakan teknologi pengenalan pola (Pattern Recognition Technology) dan analisis statistika untuk mengolah data dalam jumlah banyak (Wedin, 1999). Tujuan dari Data mining adalah untuk mencari korelasi baru, pola, dan trend.

Permasalahan lain pun muncul menghadang. Sebagai disiplin ilmu yang baru terbentuk, bioinformatika kekurangan SDM yang kompeten. Hal tersebut dijelaskan oleh Craig Benham, seorang Profesor pada sekolah kedokteran Mount Sinai di New York. Ia mengajar bioinformatika aplikasi teknologi informasi. Seperti dijelaskan Benham, ia pada tahun 2000-2001 tidak memiliki murid di program pasca sarjananya. Padahal, diprediksikan bidang ini membutuhkan sekitar 20.000 tenaga kerja terlatih yang kompeten dalam bidang biologi sekaligus ilmu komputer.

Bagaimana dengan Indonesia? Saat ini, jarang sekali (adakah?) orang yang kompeten dalam bidang biologi sekaligus dalam bidang ilmu komputer. Walaupun ada, karena terbatasnya sarana, mungkin akan sulit bagi orang tersebut untuk mengekspresikan kemampuannya. Padahal sebagai negara Mega Diversity Indonesia menjadi sasaran bagi para peneliti asing. Saat ini, sedang berlangsung perlombaan untuk mendapatkan paten terhadap data keanekaragaman gen untuk kepentingan komersial. Akankah kita membeli harta sendiri di masa depan?.

BAB IV
KESIMPULAN

BioInformatika suatu perpaduan antara ilmu biologi dan teknologi informasi. Bioinformatika merupakan manajemen dan analisis informasi biologis yang disimpan dalam suatu database. Jadi Bidang-Bidang yang terkait dengan BioInformatika ada 7 bidang, diantaranya :
1. Biophysics
2. Computational Biology
3. Cheminformatics
4. Genomics
5. Mathematical Biology
6. Pharmacogenomics
7. Pharmacogenetics

DAFTAR PUSTAKA
4.http://himbioui1.tripod.com/bioinformatika.html

Sabtu, 31 Mei 2014

ALGORITMA PARALEL

UNIVERSITAS GUNADARMA
FAKULTAS TEKNOLOGI INDUSTRI
LogoGunadarma.jpg
                              MAKALAH TUGAS ALGORITMA PARALEL



Nama                          :  Mustika Ningrum 54410874

Jurusan                      : Teknik Informatika

                        Kelas                           :  4ia19
                        Tugas                          :  Softkill ke 2
Dosen                          :  Kuwat Setiyanto
                       


Diajukan Guna Melengkapi Sebagian Syarat
UNTUK MENCAPAI JENJANG SETARA SARJANA MUDA

Universitas Gunadarma
2014






BAB I
PENDAHULUAN

              1.1     LATAR BELAKANG
Pada algoritma ini, setiap proses tidak membutuhkan sinkronisasi dan komunikasi antar proses. Meskipun prosesor mengakses data yang sama, setiap prosesor dapat melakukan komputasi sendiri tanpa tergantung pada data antara yang dihasilkan oleh proses lain. Contoh algoritma relaksasi adalah algoritma perkalian matrik, pengurutan dengan mengunakan metode ranksort dan lain sebagainya maka dari itu dibutuhkan penyelesain yang koknrit yaitu dengan melakukan pemecahan masalah dengan Algoritma Paralel adalah sebuah algoritma yang dapat dieksekusi sepotong pada waktu pada banyak perangkat pengolahan yang berbeda, dan kemudian digabungkan bersama-sama lagi pada akhir untuk mendapatkan hasil yang benar. Algoritma paralel berharga karena perbaikan substansial dalam multiprocessing sistem dan munculnya multi-core prosesor. Secara umum, lebih mudah untuk membangun komputer dengan prosesor cepat tunggal dari satu dengan banyak prosesor lambat dengan sama throughput yang . Tapi kecepatan prosesor meningkat terutama dengan mengecilkan sirkuit, dan prosesor modern yang mendorong ukuran fisik dan batas panas. Hambatan kembar telah membalik persamaan, membuat multiprocessing praktis bahkan untuk sistem kecil. Biaya atau kompleksitas algoritma serial diperkirakan dalam hal ruang (memori) dan waktu (siklus prosesor) yang mereka ambil. Algoritma paralel perlu mengoptimalkan satu sumber daya yang lebih, komunikasi antara prosesor yang berbeda. Ada dua cara paralel prosesor berkomunikasi, memori bersama atau pesan lewat.
1.2       TUJUAN UTAMA
Tujuan utama dari pemrograman paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan. Analogi yang paling gampang adalah, bila anda dapat merebus air sambil memotong-motong bawang saat anda akan memasak, waktu yang anda butuhkan akan lebih sedikit dibandingkan bila anda mengerjakan hal tersebut secara berurutan (serial). Atau waktu yg anda butuhkan memotong bawang akan lebih sedikit jika anda kerjakan berdua.
Performa dalam pemrograman paralel diukur dari berapa banyak peningkatan kecepatan (speed up) yang diperoleh dalam menggunakan tehnik paralel. Secara informal, bila anda memotong bawang sendirian membutuhkan waktu 1 jam dan dengan bantuan teman, berdua anda bisa melakukannya dalam 1/2 jam maka anda memperoleh peningkatan kecepatan sebanyak 2 kali.

1.1.1.      TEORI
Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan (komputasi paralel), baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang terhubung dalam suatu jaringan komputer lebih sering istilah yang digunakan adalah sistem terdistribusi(distributed computing).Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapakomputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untukmenyelesaikan persamaanmatematis dibidang fisika (fisikakomputasi), kimia (kimia komputasi) dll. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputeryang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi. 
1.1.2.   Desain & Analisis

SISD Single Instruction stream, Single Data Stream istilah yang mengacu pada arsitektur komputer di mana prosesor tunggal, sebuah uniprocessor, mengeksekusi aliran instruksi tunggal, untuk beroperasi pada data yang tersimpan dalam memori tunggal. Ini sesuai dengan arsitektur von Neumann . SISD adalah salah satu dari empat klasifikasi utama sebagaimana didefinisikan dalam taksonomi Flynn . Dalam sistem ini klasifikasi didasarkan pada jumlah instruksi bersamaan dan data stream hadir dalam arsitektur komputer. Menurut Michael J. Flynn , SISD dapat memiliki karakteristik pemrosesan konkuren. Instruksi fetching dan eksekusi pipelined instruksi adalah contoh umum ditemukan di komputer SISD paling modern.
File: SISD.svg
MISD Multiple Instruction Stream, Single Data Stream jenis komputasi paralel arsitektur di mana banyak unit fungsional melakukan operasi yang berbeda pada data yang sama. Pipa arsitektur termasuk tipe ini, meskipun purist mungkin mengatakan bahwa data berbeda setelah pengolahan oleh setiap tahap dalam pipa. Komputer toleransi kegagalan mengeksekusi instruksi yang sama secara berlebihan dalam rangka untuk mendeteksi dan masker kesalahan, dengan cara yang dikenal sebagai replikasi tugas , dapat dianggap milik jenis ini. Tidak banyak contoh arsitektur ini ada, sebagai MIMD dan SIMD sering lebih tepat untuk data teknik paralel umum. Secara khusus, mereka memungkinkan skala yang lebih baik dan penggunaan sumber daya komputasi daripada MISD tidak. Namun, salah satu contoh yang menonjol dari MISD dalam komputasi adalah Space Shuttle komputer kontrol penerbangan.
File: MISD.svg
SIMD Single Instruction Stream, Multiple Data Stream Kelas komputer paralel dalam taksonomi Flynn . Ini menggambarkan komputer dengan beberapa elemen pemrosesan yang melakukan operasi yang sama pada beberapa titik data secara bersamaan. Dengan demikian, mesin tersebut memanfaatkan data tingkat paralelisme . SIMD ini terutama berlaku untuk tugas umum seperti menyesuaikan kontras dalam citra digital atau menyesuaikan volume audio digital . Paling modern CPU desain termasuk instruksi SIMD dalam rangka meningkatkan kinerja multimedia digunakan.
Keuntungan SIMD antara lain sebuah aplikasi yang dapat mengambil keuntungan dari SIMD adalah salah satu di mana nilai yang sama sedang ditambahkan ke (atau dikurangkan dari) sejumlah besar titik data, operasi umum di banyak multimedia aplikasi. Salah satu contoh akan mengubah kecerahan gambar. Setiap pixel dari suatu gambar terdiri dari tiga nilai untuk kecerahan warna merah (R), hijau (G) dan biru (B) bagian warna. Untuk mengubah kecerahan, nilai-nilai R, G dan B yang dibaca dari memori, nilai yang ditambahkan dengan (atau dikurangi dari) mereka, dan nilai-nilai yang dihasilkan ditulis kembali ke memori.
Dengan prosesor SIMD ada dua perbaikan proses ini. Untuk satu data dipahami dalam bentuk balok, dan sejumlah nilai-nilai dapat dimuat sekaligus. Alih-alih serangkaian instruksi mengatakan “mendapatkan pixel ini, sekarang mendapatkan pixel berikutnya”, prosesor SIMD akan memiliki instruksi tunggal yang efektif mengatakan “mendapatkan n piksel” (dimana n adalah angka yang bervariasi dari desain untuk desain). Untuk berbagai alasan, ini bisa memakan waktu lebih sedikit daripada “mendapatkan” setiap pixel secara individual, seperti desain CPU tradisional.
Keuntungan lain adalah bahwa sistem SIMD biasanya hanya menyertakan instruksi yang dapat diterapkan pada semua data dalam satu operasi. Dengan kata lain, jika sistem SIMD bekerja dengan memuat delapan titik data sekaligus, add operasi yang diterapkan pada data akan terjadi pada semua delapan nilai pada waktu yang sama. Meskipun sama berlaku untuk setiap desain prosesor super-skalar, tingkat paralelisme dalam sistem SIMD biasanya jauh lebih tinggi.
Kekurangannya adalah :
Tidak semua algoritma dapat vectorized. Misalnya, tugas aliran-kontrol-berat seperti kode parsing tidak akan mendapat manfaat dari SIMD.
Ia juga memiliki file-file register besar yang meningkatkan konsumsi daya dan area chip.
Saat ini, menerapkan algoritma dengan instruksi SIMD biasanya membutuhkan tenaga manusia, sebagian besar kompiler tidak menghasilkan instruksi SIMD dari khas C Program, misalnya. vektorisasi dalam kompiler merupakan daerah aktif penelitian ilmu komputer. (Bandingkan pengolahan vektor .)
Pemrograman dengan khusus SIMD set instruksi dapat melibatkan berbagai tantangan tingkat rendah.
SSE (Streaming SIMD Ekstensi) memiliki pembatasan data alignment , programmer akrab dengan arsitektur x86 mungkin tidak mengharapkan ini.
Mengumpulkan data ke dalam register SIMD dan hamburan itu ke lokasi tujuan yang benar adalah rumit dan dapat menjadi tidak efisien.
Instruksi tertentu seperti rotasi atau penambahan tiga operan tidak tersedia dalam beberapa set instruksi SIMD.
Set instruksi adalah arsitektur-spesifik: prosesor lama dan prosesor non-x86 kekurangan SSE seluruhnya, misalnya, jadi programmer harus menyediakan implementasi non-Vectorized (atau implementasi vectorized berbeda) untuk mereka.
Awal MMX set instruksi berbagi register file dengan tumpukan floating-point, yang menyebabkan inefisiensi saat pencampuran kode floating-point dan MMX. Namun, SSE2 mengoreksi ini.

DAFTAR PUSTAKA

Rancangan dan Implementasi Sistem Keamanan pada Parallel Prosessing Komputasi dengan menggunakan PC Cluster, MUSTIKA NINGRUM 54410874
http://www.beritanet.com
http://www.ilmukomputer.com
http://www.lam-mpi.org


.



Program Datagram Socket

Program Datagram Socket
TUGAS JARKOM LANJUT

PENDAHULUAN
Penggunaan socket programming memungkinkan adanya komunikasi antara client dan server. Salah satu contoh sederhana penggunaan socket programming adalah pembuatan program untuk chatting. Program tersebut sebenarnya merupakan bentuk aplikasi berupa komunikasi antara client dan server. Ketika seorang user (client) melakukan koneksi ke chat server, program akan membuka koneksi ke port yang diberikan, sehingga server perlu membuka socket pada port tersebut dan “mendengarkan” koneksi yang datang. Socket sendiri merupakan gabungan antara host-adress dan port adress. Dalam hal ini socket digunakan untuk komunikasi antara client dan server.
Proses datagram Jika client mengirimkan data ke server, data tersebut ada kemungkinan sampai ke server atau tidak. Untuk ituclient menunggu isyarat ‘error free’ daripada client. Jika client tidak menerima isyarat ‘error free’ dalam satu jangka waktu, maka clientakan mengirimkan lagi data tersebut. Contoh aplikasi yang menggunakan datagram socket adalah tftp dan bootp.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV9RtWUxBs2wVYBL534a8EDUjNcVi6BOzA4RIIodev8JaUCfzFAC2oYfxvF3sudmgMxmv-3kyaYp7I0LJxJczwBTZnVlscXvRb5iMkqHxfFmCRpEyfoquW8ABYAaLd5PzuF3BZUqZfz2M/s320/haizum2.jpg
Data yang dikirimkan melalui datagram socket akan melalui proses yang diberi nama enkapsulasi (data encapsulation). Data yang akan dikirimkan sebelumnya dibungkus dulu dengan sebuah header dari protokol yang pertama (misalnya TFTP), lalu dibungkus lagi dengan protokol berikutnya (misalnya UDP), lalu IP dan yang terakhir dibungkus dengan ethernet protokol pada physical layer.

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjvMtMeQxx5EhWckOa1nxGUgRAzuyYNRE7BNW-xI_TMcEcFmmSiv71hWCcujynIDshJV7fEp1CkCbOapwzV29IhSfQ5dS1qsdXaidJL6ph812-dgUl_ovR7Zi7VRLg2OyrNIvCGZUIy3ys/s320/haizum4.jpg

Algorithma pemprograman datagram socket
Pada socket datagram algoritmanya lebih sederhana, tidak memerlukan sambungan antara server dan client. Sehingga system call/function yang diperlukan, iaitu socket(), bind(), sendto() dan recvfrom(), sendto() dan recvfrom() adalah fungsi khusus yang digunakan untuk mengirim dan menerima data pada socket datagram.
Antara langkah – langkah yang dilakukan pada client dan server, pada socket datagram adalah seperti berikut :
1. Langkah – langkah di client :
a. Membuka connection client ke server, yang di dalamnya adalah :
i. Membuat socket dengan perintah socket().
ii. Melakukan pengalamatan ke server.
b. Melakukan komunikasi (mengirimkan data), dengan menggunakan perintah sendto()
c. Menutup hubungan dengan perintah close();

2. Langkah – langkah di server :
a. Membuat socket dengan perintah socket()
b. Mengikatkan socket kepada sebuah alamat network dengan perintah bind()
c. Melakukan komunikasi (menerima data), dengan menggunakan perintah recvfrom()

Jenis socket yang kedua yaitu datagram socket disebut juga connectionless socket sebab untuk interaksi client-server tidak harus selalu terhubung terus menerus. Jika client mengirimkan data ke server, data tersebut ada kemungkinan sampai ke server atau tidak. Untuk itu client menunggu sinyal ‘error free’ dari client. Jika client tidak menerima sinyal ‘error free’ dalam suatu kurun waktu, maka client akan mengirimkan lagi data tersebut. Contoh aplikasi yang menggunakan datagram socket adalah tftp dan bootp.

Berikut contoh program client server yang menggunakan datagram socket yang dibuat dengan bahasa C.
Client
/*
** client02.c -- a datagram
*/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>

#define MYPORT 4950 // no port server yang digunakan

int main(int argc, char *argv[])
{
    int sockfd;
    struct sockaddr_in their_addr; // ip server
    struct hostent *he;
    int numbytes;
   
    if (argc != 3)
    {
        fprintf(stderr,"usage: client hostname message\n");
        exit(1);
    }

    // dpt info tentang host
    if ((he=gethostbyname(argv[1])) == NULL)
    {
        perror("gethostbyname");
        exit(1);
    }

    if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
    {
        perror("socket");
        exit(1);
    }

    their_addr.sin_family = AF_INET; // host byte order
    their_addr.sin_port = htons(MYPORT); // host to network short
    their_addr.sin_addr = *((struct in_addr *)he->h_addr);
    memset(&(their_addr.sin_zero), '\0', 8); // set semua nilai ke 0

    if ((numbytes=sendto(sockfd, argv[2], strlen(argv[2]), 0, (struct sockaddr *)&their_addr, sizeof(struct sockaddr))) == -1)
    {
        perror("sendto");
        exit(1);
    }

    printf("Kirim %d byte ke %s\n", numbytes,
    inet_ntoa(their_addr.sin_addr));
    close(sockfd);
   
    return 0;
}

Berikut penjelasan dari program client:
Program ini memberikan paket kepada alamat server yang ditentukan melalui parameter pada saat dijalankan. Didalamnya termasuk membuat socket dengan memanfaatkan system call yang tersedia seperti socket(), listen() dan connect().
Server
/*
** server02.c -- a datagram sockets "server"
*/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>

#define MYPORT 4950 // no port server
#define MAXBUFLEN 100

int main(void)
{
    int sockfd;
    struct sockaddr_in my_addr; // ip address server
    struct sockaddr_in their_addr; // ip address client
    int addr_len, numbytes;
    char buf[MAXBUFLEN];

    if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
    {
        perror("socket");
        exit(1);
    }

    my_addr.sin_family = AF_INET; // host byte order
    my_addr.sin_port = htons(MYPORT); // host to network short
    my_addr.sin_addr.s_addr = INADDR_ANY; // ip address server
    memset(&(my_addr.sin_zero), '\0', 8); // set semua nilai menjadi 0

    if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1)
    {
        perror("bind");
        exit(1);
    }

    addr_len = sizeof(struct sockaddr);

    if ((numbytes=recvfrom(sockfd,buf, MAXBUFLEN-1, 0, (struct sockaddr *)&their_addr, &addr_len)) == -1)
    {
        perror("recvfrom");
        exit(1);
    }

    printf("Mendapat paket dari : %s\n",inet_ntoa(their_addr.sin_addr));
    printf("Panjang paket : %d bytes \n",numbytes);
    buf[numbytes] = '\0';
    printf("Isi paket : \"%s\"\n",buf);
    close(sockfd);

    return 0;
}

Berikut penjelasan dari program server:
Pada program server menggunakan socket untuk mendapatkan file descriptor dan menghitung jumlah paket dan memberikan informasi tersebut pada saat dijalankan, serta menggunakan memanfaatkan banyak system call seperti socket(), bind(), listen(), connect(), dll.

Langkah-langkah menjalankan program:
Simpan source program client dengan nama client2.c dan server dengan nama server2.c
Lakukan installasi gcc yang sudah dijelaskan pada artikel sebelumnya.
Lakukan kompilasi pada program.
#gcc client2.c -o client2
#gcc server2.c -o server2
Jalankan program server, kemudian jalankan program client pada komputer client.
#./server2
#./client2 <alamat ip server> <pesan tanpa spasi/dalam tanda kutip>

Berikut tampilan outputnya:
Client
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4e3pPbkaWvlARLVgdPziI6z9hShh3RyddMQEOMOgr1gDCtCuhJCd9sbWWBCngXUijsH1cjad-nV20vl0vPoT3C2P81cLqBbVyu0fBnBbjcl9rjZ4I8Vwuc2AmiFbeU5CY1k6qEF-kLwzF/s1600/client2.png
Server
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnAwBDmtJwkhSg87i9yCO6tHF4jDLpYlkcER5CwUXWiw2QHyfRrOWLnvhfafnsHlM6VRhARzRL-xpWUjiDk-bQ9jJeVfxv-e1ZOTWtXj6uqxuHzjinrQlbymKLscBCGCwj9vDVO3fn3NLm/s1600/server2.png

Mengecek port yang digunakan oler server dengan menggunakan perintah berikut:

# netstat -nlptu | grep server2

Berikut tampilan outputnya:
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7D53-FMwieOIwfDP9Lka-T10ZDNwPX3gmXf_RzkygMPhtG44NIqmxO1VKlC1rRI3vo4K_ccuDgnIBHFBNXI6MFy-47Pbj1mmm0NNbQ4t2BjMUez7pwooDUyp4N9_G2XIROCNfhXhwpp5C/s1600/netstat.png

Dari output tersebut dapat terlihat bahwa program server melakukan listening menggunakan port 4950 dan menggunakan protokol udp.

Selanjutnya mengecek port yang digunakan oleh client dengan menggunakan perintah berikut:

# tcpdump -nt -i (interface yang digunakan)

Berikut tampilan outputnya:
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK6d55Dx6Sv9UrXpnqr83eBMNoc3VtyO-Wb6iB4TY_pMIQA-K5vnjDJeHrwTimpITHj2KTzWRhkodPbgzV7vhyXwMq3V56MoB4M4zTfX9_rKBT2zYypMbJBHkfPbca1ZBDitfijlnzcirM/s1600/tcpdump.png

Dari output tersebut terlihat bahwa program client menggunakan port 53341 yang merupakan random port apabila program client dijalankan kembali maka port yang digunakan akan berubah.