Parallel
Processing
Tujuan Parallel
Processing
Tujuan utama dari pemrosesan
paralel adalah untuk meningkatkan performa komputasi. Semakin banyak hal yang
bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak
pekerjaan yang bisa diselesaikan.
Pemrograman
paralel adalah
teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi
secara bersamaan baik dalam komputer dengan satu (prosesor tunggal)
ataupunbanyak (prosesor ganda dengan mesin paralel) CPU. Tujuan utama dari
pemrograman paraleladalah untuk meningkatkan performa komputasi. Semakin banyak
hal yang bisa dilakukan secarabersamaan (dalam waktu yang sama), semakin banyak
pekerjaan yang bisa diselesaikan.
Komputasi
paralel membutuhkan:
- algoritma
- bahasa pemrograman
- compiler
Sebagai
besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih
darisatu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu
CPU dapat melakukan parallel processing dengan menghubungkannya dengan komputer
lain pada jaringan. Namun, parallel processing ini memerlukan software canggih
yang disebut distributed processing software.
Parallel
processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi
beberapa program sekaligus. Parallel processing disebut juga parallel
computing.
Contoh
struktur dari parallel processing sbb :
Pemrosesan paralel (parallel processing) adalah penggunakan lebih dari
satu CPU untuk menjalankan sebuah program secara simultan.
Idealnya, parallel processing membuat programberjalan lebih cepat karena
semakin banyak CPU yang digunakan. Tetapi dalam praktek,seringkali sulit
membagi program sehingga dapat dieksekusi oleh CPU yang berbea-beda tanpa
berkaitan di antaranya.
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.
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).
Yang perlu diingat adalah
komputasi paralel berbeda dengan multitasking. Pengertian multitasking adalah
komputer dengan processor tunggal mengeksekusi beberapa tugas secara bersamaan.
Walaupun beberapa orang yang bergelut di bidang sistem operasi beranggapan
bahwa komputer tunggal tidak bisa melakukan beberapa pekerjaan sekaligus,
melainkan proses penjadwalan yang berlakukan pada sistem operasi membuat komputer
seperti mengerjakan tugas secara bersamaan. Sedangkan komputasi paralel sudah
dijelaskan sebelumnya, bahwa komputasi paralel menggunakan beberapa processor
atau komputer. Selain itu komputasi paralel tidak menggunakan arsitektur Von
Neumann. Untuk lebh memperjelas lebih dalam mengenai perbedaan komputasi
tunggal (menggunakan 1 processor) dengan komputasi paralel (menggunakan
beberapa processor), maka kita harus mengetahui terlebih dahulu pengertian
mengenai model dari komputasi. Ada 4 model komputasi yang digunakan, yaitu:
- SIMD
- SIMD
- MISD
- MIMD
SISD
Yang merupakan singkatan dari
Single Instruction, Single Data adalah satu-satunya yang menggunakan arsitektur
Von Neumann. Ini dikarenakan pada model ini hanya digunakan 1 processor saja.
Oleh karena itu model ini bisa dikatakan sebagai model untuk komputasi tunggal.
Sedangkan ketiga model lainnya merupakan komputasi paralel yang menggunakan
beberapa processor. Beberapa contoh komputer yang menggunakan model SISD adalah
UNIVAC1, IBM 360, CDC 7600, Cray 1 dan PDP 1.
SIMD
Yang merupakan singkatan dari
Single Instruction, Multiple Data. SIMD menggunakan banyak processor dengan
instruksi yang sama, namun setiap processor mengolah data yang berbeda. Sebagai
contoh kita ingin mencari angka 27 pada deretan angka yang terdiri dari 100
angka, dan kita menggunakan 5 processor. Pada setiap processor kita menggunakan
algoritma atau perintah yang sama, namun data yang diproses berbeda. Misalnya
processor 1 mengolah data dari deretan / urutan pertama hingga urutan ke 20, processor
2 mengolah data dari urutan 21 sampai urutan 40, begitu pun untuk
processor-processor yang lain. Beberapa contoh komputer yang menggunakan model
SIMD adalah ILLIAC IV, MasPar, Cray X-MP, Cray Y-MP, Thingking Machine CM-2 dan
Cell Processor (GPU).
MISD
Yang merupakan singkatan dari
Multiple Instruction, Single Data. MISD menggunakan banyak processor dengan
setiap processor menggunakan instruksi yang berbeda namun mengolah data yang
sama. Hal ini merupakan kebalikan dari model SIMD. Untuk contoh, kita bisa
menggunakan kasus yang sama pada contoh model SIMD namun cara penyelesaian yang
berbeda. Pada MISD jika pada komputer pertama, kedua, ketiga, keempat dan
kelima sama-sama mengolah data dari urutan 1-100, namun algoritma yang
digunakan untuk teknik pencariannya berbeda di setiap processor. Sampai saat
ini belum ada komputer yang menggunakan model MISD.
MIMD
Yang merupakan singkatan dari
Multiple Instruction, Multiple Data. MIMD menggunakan banyak processor dengan
setiap processor memiliki instruksi yang berbeda dan mengolah data yang
berbeda. Namun banyak komputer yang menggunakan model MIMD juga memasukkan
komponen untuk model SIMD. Beberapa komputer yang menggunakan model MIMD adalah
IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM
BG/L.
Di buat
oleh :
1. Andi Hasanudin
50412761
2. Dany
Satria Perdana 51412711
3. Yoga
Raditya 57412829
Tidak ada komentar:
Posting Komentar