PARAREL PROCESSING
Pengertian
Parallel procesing adalah penggunaan lebih
dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya,
parallel procesing membuat program berjalan lebih cepat karena semakin banyak
CPU yang digunakan. Tetapi seringkali sulit membagi program sehingga dapat
dieksekusi oleh CPU yang berbeda – beda tanpa berkaitan diantaranya.
Komputasi parallel adalah salah satu teknik
melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer
secara bersamaan. Biasanya kapasitas yang diperlukan sangat besar karena
mengolah data dalam jumlah besar atau proses komputasi yang banyak. Untuk
melakukan komputasi paralel diperlukan infrastruktur mesin paralel yang terdiri
dari banyak komputer yang dihubungkan dengan jaringan dan bekerja secara
paralel untuk menyelesaikan satu masalah.
Pemrograman parallel adalah teknik
pemrograman komputer yang memungkinkan eksekusi perintah secara bersamaan baik
dalam komputer dengan satu (prosesor tunggal)
atau banyak (prosesor ganda)
CPU. Tujuan pemrograman paralel adalah untuk meningkatkan peforma komputasi.
Parallel procesing berbeda dengan multitasking, yaitu
satu CPU mengeksekusi beberapa program sekaligus. Parallel procesing disebut
juga parallel computing.
- Arsitektur
Komputer Parallel
Multiprocessing dibagi menjadi 3 sesuai simetrinya :
1. Asymmetric Multiprocessing (ASMP)
Asymmetric Multiprocessing Scheduling biasa disebut
penjadwalan Master Slave Multiprocesor. Pada metode ini, satu prosesor bertindak
sebagai master dan prosesorlainnya
sebagai slave. Master Procesor bertugas untuk menjadwalkan dan mengalokasikan
proses yang akan dijalankan oleh slave procesor. Metode ini sederhana
karena hanya satu prosesor yang
mengakses struktur data sistem dan mengurangi data sharing.
2. Symmetric Multiprocessing (SMP)
Pada metode ini, setiap prosesor menjadwalkan
dirinya sendiri (self scheduling). Penjadwalan terlaksana dengan menjadwalkan
setiap prosesor untuk
memeriksa antrian ready dan memilih suatu proses untuk dieksekusi. Jika suatu
sistem Multiprocessor Scheduling mencoba untuk mengakses dan mengupdate suatu
struktur data, penjadwal dari prosesor tersebut
harus diprogram dengan hati-hati. Semua sistem operasi modern mendukung SMP (
Windows XP, Windows 2000, Windows Vista, Solaris, Linux, Novell UnixWare SMP,
dll ).
3. Non-Uniform Memory Access Multiprocessing
(NUMA)
NUMA adalah memori komputer rancangan yang digunakan
dalam multiprocessor, dimana waktu akses memori tergantung pada lokasi memori
relatif terhadap prosesor.
Dalam NUMA, prosesor dapat
mengakses memori lokal sendiri lebih cepat dari memori non-lokan yaitu memori
lokal ke prosesor atau
memori bersama antara prosesor.
- Sesuai
Taksonomi Flynn, Organisasi Prosesor dibagi
menjadi 4 :
Single Instruction, Single Data merupakan
satu satunya yang menggunakan arsitektur Von Neumann, karena model ini hanya
menggunakan satu prosesor saja.
Model ini bisa disebut sebagai model untuk komputasi tunggal.
- Satu
instruksi stream
- Satu prosesor
- Data
disimpan di satu memori
SIMD menggunakan banyak prosesor dengan
instruksi yang sama, namun setiap prosesormengolah
data yyang berbeda.
- Instruksi
mesin tunggal
- Terdapat
sejumlah elemen proses
- Setiap
instruksi dieksekusi dalam set data yang berbeda oleh proses yang berbeda
MISD menggunakan banyak prosesor dengan
setiap prosesor menggunakan
instruksi yang berbeda namun mengolah data yang sama.
- Satu
aliran instruksi
- Banyak
aliran data
- Belum
dapat diimplementasikan dengan baik
MIMD menggunakan banyak prosesor dengan
setiap prosesor memiliki
instruksi yang berbeda dan mengolah data yang berbeda.
- Terdiri
dari sejumlah set prosesor
- Terdiri
dari sejumlah set data yang berbeda
- Mengeksekusi
urutan instruksi yang berbeda
KESIMPULAN
Pararel
prosesing (parallel processing) adalah penggunakan lebih dari
satu CPU
untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing
membuat program berjalan 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.