Parallel
Computation atau Komputasi paralel adalah salah satu teknik melakukan komputasi
secara bersamaan dengan memanfaatkan beberapa komputer independen secara
bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar,
baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan
proses komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik
untuk menyelesaikan persamaan matematis di bidang fisika (fisika komputasi),
kimia (kimia komputasi) dll.
a.
Parallelism Concept
Komputasi
paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan
memanfaatkan beberapa komputer secara bersamaan. Biasanya diperlukan saat
kapasitas yang diperlukan sangat besar, baik karena harus mengolah datadalam
jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Untuk
melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin
paralel yang terdiridari 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.
b.
Distributed Processing
Pemrograman
Paralel sendiri adalah teknik pemrograman komputer yang memungkinkan eksekusi
perintah/operasi secara bersamaan. Bila komputer yang digunakan secara bersamaan
tersebut dilakukan oleh komputer-komputer terpisah yang terhubung dalam satu
jaringan komputer, biasanya disebut sistem terdistribusi. Bahasa pemrograman
yang populer digunakan dalam pemrograman paralel adalah MPI (Message Passing
Interface) dan PVM (Parallel Virtual Machine).
c.
Architectural Parallel Computer
- 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.
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.
d. Pengantar
Thread Programming
Sebuah
thread di dalam pemrograman komputer adalah sebuah informasi terkait tentang
penggunaan sebuah program tunggal yang dapat menangani beberapa pengguna secara
bersamaan.Thread ini memungkinkan program untuk mengetahui bagaimana user masuk
ke dalam program secara bergantian dan user akan masuk kembali menggunakan user
yang berbeda. Multiple thread dapat berjalan bersamaan dengan proses lainnya
membagi sumberdaya menjadi memori, disaat proses lain tidak membaginya.
e. Pengantar
Message Passing
Open
MPMessage Passing merupakan sebuah bentuk dari komunikasi yang digunakan di
komputasi paralel, OOT (Object Oriented Programming) atau Pemrograman Berbasis
Objek dan komunikasi interproses
f. Pengantar
Pemrograman CUDA GPU
Sebelum
saya membahas tentang CUDA, saya akan membahas GPU terlebih dahulu. GPU dalah
sebuah processor khusus untuk memepercepat dan mengubah memori untuk
mempercepat pemrosesan gambar. GPU ini sendiri biasanya berada di dalam graphic
card komputer ataupun laptop.
sumber: