NAMA : HARLITA VICTURA
NIM : 1155201038
PARALEL PROCESSING
A. PENGERTIAN
- Paralel Processing (pemrosesan paralel) menggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Paralel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan. Namun, paralel processing ini memerlukan software canggih yang disebut distributed processing software. Parallel processing berbeda dengan multitasking (satu CPU mengeksekusi beberapa program sekaligus), Parallel processing disebut juga parallel computing.
- Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. 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.
- Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.
- 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 membutuhkan : Algoritma, Bahasa pemrograman, Compiler
B. ARSITEKTUR KOMPUTER PARALEL
- SISD (Single Instruction Single Data Stream) Arus Instruksi Tunggal dan Data Tunggal
- SIMD (Single Instruction Multiple Data Stream) Arus Instruksi Tunggal dan Multiple Data
- MISD (Multiple Instruction Single Data Stream) Arus Multiple Instruksi dan Data Tunggal
- MIMD (Multiple Instruction Multiple Data Stream) Arus Multiple Instruksi dan Multiple Data
- Prosesor tunggal
- Aliran instruksi tunggal
- Data disimpan dalam memori tunggal
- Uni-processor
Single Instruction, Multiple Data Stream – SIMD
- Single machine instruction
- Mengontrol eksekusi secara simultan
- Sejumlah elemen-elemen pengolahan
- Berdasarkan Lock-step
- Setiap pengolahan elemen memiliki hubungan dengan memori data
- Setiap instruksi dieksekusi pada kumpulan data yang berbeda oleh prosesor yang berbeda
- Prosesor Vector and array
Multiple Instruction, Single Data Stream – MISD
- Rangkaian dari data
- Dikirimkan ke kumpulan prosesor
- Setiap prosesor mengeksekusi urutan instruksi yang berbeda
- Belum pernah diimplementasikan (komesial)
- Kumpulan/sejumlah prosesor
- Mengeksekusi secara simultan urutan instruksi yang berbeda
- Kumpulan data yang berbeda
- SMP, Cluster and sistem NUMA