Komputasi paralel adalah salah satu teknik untuk melakukan komputasi
secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.
Biasanya diperlukan saat kapasitas yang diperlukan sangat besar, baik
karena harus mengolah data dalam jumlah besar ataupun karena tuntutan
proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi
paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari
banyak komputer yang 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.
Komputasi
Paralel merupakan salah satu teknologi paling menarik sejak
ditemukannya komputer pada tahun 1940-an. Terobosan dalam pemorosesan
parallel 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 komputasi parallel
itu.
Inti
dari komputasi parallel yaitu hardware, software, dan aplikasinya.
Paralel prosesing merupakan suatu pemrosesan informasi yang lebih
mendekatkan pada manipulasi rata-rata dari elemen data terhadap satu
atau lebih penyelesaian proses dari sebuah masalah. Dengan kata lain
komputasi parallel adalah komputer dengan banyak processor dapat
melakukan parallel processing dengan cara membagi-bagi proses ke
source-source yang dimiliki.
Paradigma
pemrosesan parallel bergantung pada model SIMD (single instruction
multiple data), dan paradigma functional dataflow yang memperkenalkan
konsep model MIMD (Multiple Instrution Multiple Data). Suatu program
parallel memerlukan koordinasi ketika sebuah tugas bergantung pada tugas
lainnya. Ada dua macam bentuk koordinasi pada komputer parallel :
asynchronous dan synchronous. Bentuk synchronous merupakan koordinasi
pada hardware yang memaksa semua tugas agar dilaksanakan pada waktu yang
bersamaan dengan mengesampingkan adanya ketergantungan tugas yang satu
dengan yang lainnya. Sementara bentuk asynchronous mengandalkan
mekanisme pengunci untuk mengkoordinasikan processor tanpa harus
berjalan bersamaan.
Tujuan Komputasi Paralel
Tujuan dari komputasi paralel adalah
meningkatkan kinerja komputer dalam menyelesaikan berbagai masalah.
Dengan membagi sebuah masalah besar ke dalam beberapa masalah kecil,
membuat kinerja menjadi cepat.
Formula komputasi paralel yang diajukan pada hukum Amdahl
Dimana a adalah banyaknya paralel yang
terjadi. Secara teori, artinya proses penyelesaian masalah menjadi lebih
cepat dengan menggunakan komputasi paralel.
Salah satu jenis penggunaan komputasi paralel adalah:
PVM(Parallel Virtual Machine)
Merupakan sebuah perangkat lunak yang mampu mensimulasikan pemrosesan paralel pada jaringan.
Model komputasi Paralel.
1. Embarasingly Parallel adalah pemrograman paralel yang
digunakan pada masalah-masalah yang bisa diparalelkan tanpa membutuhkan
komunikasi satu sama lain. Sebenarnya pemrograman ini bisa dibilang
sebagai pemrograman paralel yang ideal, karena tanpa biaya komunikasi,
lebih banyak peningkatan kecepatan yang bisa dicapai.
2. Taksonomi dari model pemrosesan paralel dibuat berdasarkan alur instruksi dan alur data yang digunakan:
- SISD (Single Instruction Single Datapath) merupakan prosesor tunggal, yang bukan paralel.
- SIMD (Single Instruction Multiple Datapath)alur
instruksi yang sama dijalankan terhadap banyak alur data yang berbeda.
Alur instruksi di sini kalau tidak salah maksudnya ya program komputer
itu. trus datapath itu paling ya inputnya, jadi inputnya lain-lain tapi
program yang digunakan sama.
- MIMD (Multiple Instruction
Multiple Datapath)alur instruksinya banyak, alur datanya juga banyak,
tapi masing-masing bisa berinteraksi.
- MISD (Multiple Instruction Single Datapath)alur instruksinya banyak tapi beroperasi pada data yang sama.
Kesimpulan :
Banyak
perkembangan-perkembangan baru dalam arsitektur komputer yang
didasarkan pada konsep pemrosesan paralel. Pemrosesan paralel dalam
sebuah komputer dapat didefinisikan sebagai pelaksanaan
instruksi-instruksi secara bersamaan waktunya. Hal ini dapat menyebabkan
pelaksanaan kejadian-kejadian dalam interval waktu yang sama, dalam
waktu yang bersamaan atau dalam rentang waktu yang saling tumpang
tindih.
Sekalipun
didukung oleh teknologi prosesor yang berkembang sangat pesat, komputer
sekuensial tetap akan mengalami keterbatasan dalam hal kecepatan
pemrosesannya. Hal ini menyebabkan lahirnya konsep keparalelan
(parallelism) untuk menangani masalah dan aplikasi yang membutuhkan
kecepatan pemrosesan yang sangat tinggi, seperti misalnya prakiraan
cuaca, simulasi pada reaksi kimia, perhitungan aerodinamika dan
lain-lain.
Konsep
keparalelan itu sendiri dapat ditinjau dari aspek design mesin paralel,
perkembangan bahasa pemrograman paralel atau dari aspek pembangunan dan
analisis algoritma paralel. Algoritma paralel itu sendiri lebih banyak
difokuskan kepada algoritma untuk menyelesaikan masalah numerik, karena
masalah numerik merupakan salah satu masalah yang memerlukan kecepatan
komputasi yang sangat tinggi.