Pengertian Parallel Computation
Parallel Computation merupakan salah satu teknologi paling menarik
yang penting sejak ditemukannya komputer elektronik pada tahun 1940-an.
Terobosan dalam pemrosesan paralel selalu berkembang dan mendapatkan tempat
disamping teknologi-teknologi lainnya sejak Era Kebangkitan (1950-an), Era
Mainframe (1960-an), Era Minis (1970-an), Era PC (1980-an), dan Era Komputer
Paralel (1990-an). Dengan berbagai pengaruh atas perkembangan teknologi
lainnya, dan bagaimana teknologi ini mengubah persepsi terhadap komputer, dapat
dimengerti betapa pentingnya Parallel Computation itu. Inti dari Parallel
Computation yaitu hardware, software, dan aplikasinya.
Parallel Computation adalah salah satu teknik melakukan komputasi
secara bersamaan dengan memanfaatkan beberapa komputer independen secara
bersamaan ataupun simultan. Biasanya digunakan untuk kapasitas yang pengolahan
data yang sangat besar (lingkungan industri, bioinformatika dan lain-lain) atau
karena tuntutan komputasi yang banyak. Parallel Computation adalah komputer
tunggal dengan beberapa internal prosesor atau beberapa komputer yang
dihubungkan oleh suatu interconnection network (IN). Parallel Computation membuat program maupun proses berjalan lebih cepat karena
semakin banyak CPU yang digunakan. Pada dasarnya Parallel Computation
menggunakan media jaringan, tapi yang menjadi ciri khususnya adalah bagaimana
menyelesaikan masalah.
Parallel Computationdapat dikelompokkan berdasarkan pengorganisasian memorinya
ke dalam dua arsitektur dasar
- Sistem
memori bersama (shared memory) : Komunikasi antar proses dengan melakukan pengeksekusian rangkaian instruksi yang berbeda pada kumpulan data yang berbeda pula dengan memori yang dapat digunakan bersama secara bersama.
- Sistem
memori tersebar (distributed memory) :Komunikasi antar proses menggunakan mekanisme pertukaran pesan (message passing). Program paralel dengan pertukaran pesan dapat ditulis menggunakan suatu bahasa pemrograman tingkat tinggi (misalnya: fortran, C/C++), dan menyetarakan (atau pemanggilan) suatu pustaka pertukaran pesan MPI (Message Passing Interface) atau PVM (Parallel Virtual Machine)
Kelebihan dan Kekurangan Parallel Computation
Kelebihan:
- Waktu eksekusi lebih cepat dan efisien
- Througjput jadi lebih tinggi (throughput adalah banyaknya keluaran yang dihasilkan per unit waktu)
- Dapat memecahkan masalah yang lebih besar
Kekurangan:
Architectural Parallel Computation
- Membutuhkan daya yang besar untuk perangkat yang dibutuhkan
Architectural Parallel Computation
Klasifikasi arsitektural didasarkan pada penggandaan alur
instruksi dan alur data, yang diperkenalkan oleh Michael J. Flynn. Terdapat 4
katagori dalam klasifikasi ini, yaitu:
- Single Instruction
Stream - Single Data Stream (SISD):Instruksi dilaksanakan secara berturut tetapi boleh overlap dalam tahap eksekusi (pipeline).
- Single Instruction Stream - Multiple Data Stream (SIMD):Beberapa Processor Unit (Processing Element) disupervisi oleh Control Unit yang sama. Semua Processing Element menerima instruksi yang sama dari control unit, tetapi mengeksekusi data yang berbeda dari alur data yang berbeda pula. Subsistem memori berisi modul-modul memori. Processor vektor dan processor array termasuk dalam kategori ini.
- Multiple Instruction Stream - Single Data Stream (MISD):Sejumlah PU, masing-masing menerima instruksi yang berbeda dan mengoperasikan data yangsama. Output salah satu prosesor menjadi input bagi prosesor berikutnya. Struktur komputer ini tidak praktis, sehingga tidak ada komputer yang menggunakannya.
- Multiple Instruction Stream - Multiple Data Stream (MIMD):Sejumlah prosesor secara simultan mengeksekusi rangkaian instruksi yang berbeda pada kumpulan data yang berbeda pula. MIMD dapat berupa multiprosesor dengan memori yang dapat digunakan bersama (shared memory) atau multikomputer dengan memori yang terdistribusi.
Penggambaran Katagori Klasifikasi Architectural Parallel Computation
| Single Instruction Stream - Single Data Stream (SISD) |
| Single Instruction Stream - Multiple Data Stream (SIMD) |
| Multiple Instruction Stream - Multiple Data Stream (MIMD) |
Implementasi Parallel Computation
Pada dunia
bisnis perfilm-an, implementasi parallel computation yaitu berupa proses
rendering 3D pada sebuah film. Proses rendering film menggunakan unit komputasi
parallel distributed memory multicomuter. Dikarenakan komputer digunakan untuk
membuat rendering film, yaitu kluster komputer. Kluster komputer adalah proses
menghubungkan beberapa komputer agar dapat bekerja secara bersama-sama dengan
sebuah jaringan sebagai media penghubungnya. Sehingga pemrosesan dapat
dilakukan lebih cepat karena mempunyai mesin-mesin yang masing-masing
miltiprocessor.
Namun proses render membutuhkan daya
komputasi yang sangat besar karena banyaknya titik koordinat yang harus
dikomputasikan, terutama jika data 3D yang diolah cukup rumit. Model 3D
rendering yang dihasilkan berupa data geometri, titik pandang, tekstur dan
cahaya yang diperlikan untuk membuat gambar yang utuh. Dan salah satu cara
untuk memecahkan masalahnya yaitu dengan menggunakan algoritma divide and
conquer yang diterapkan ke dalam metode komputasi parallel. Karena komputasi
parallel terbukti lebih efektif untuk melakukan ojek 3D dibanding hanya dengan
menggunakan sebuah unit komputasi.
Tujuan Parallel Computation
Tujuan dari parallel computation adalah untuk meningkatkan
sistem komputasi dengan cara menyelesaikan beberapa pekerjaan atau masalah
secara bersama-sama pada waktu yang sama dengan memanfaatkan beberapa
komputer independen secara bersamaan ataupun simultan.
Sumber: