1. Parallelism Concept
Komputasi paralel merupakan salah satu teknik komputasi, dimana
proses komputasinya dilakukan oleh beberapa resources ( komputer ) yang
independen, secara bersamaan. Komputasi paralel biasanya diperlukan pada
saat terjadinya pengolahan data dalam jumlah besar ( di industri
keuangan, bioinformatika, dll ) atau dalam memenuhi proses komputasi
yang sangat banyak. Selanjutnya, komputasi paralel ini juga dapat
ditemui dalam kasus kalkulasi numerik dalam penyelesaian persamaan
matematis di bidang fisika ( fisika komputasi ), kimia ( kimia komputasi
), dll. Dalam menyelesaikan suatu masalah, komputasi paralel memerlukan
infrastruktur mesin paralel yang terdiri dari banyak komputer yang
dihubungkan dengan jaringan dan mampu bekerja secara paralel.
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. Tidak
berarti dengan mesin paralel semua program yang dijalankan diatasnya
otomatis akan diolah secara paralel. Pemrograman paralel adalah teknik
pemrograman komputer yang memungkinkan eksekusi perintah / operasi
secara bersamaan ( komputasi paralel ), baik dalam komputer dengan satu (
prosesor tunggal ) ataupun banyak ( prosesor ganda dengan mesin paralel
) CPU. Bila komputer yang digunakan secara bersamaan tersebut dilakukan
oleh komputer-komputer terpisah yang terhubung dalam suatu jaringan
komputer lebih sering istilah yang digunakan adalah sistem terdistribusi
( distributed computing ). 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.
2. Distributed Processing
Pemrosesan paralel adalah pendekatan komputasi untuk meningkatkan
tingkat di mana satu set data diolah dengan pengolahan bagian yang
berbeda dari data pada waktu yang sama secara simultan atau bersamaan
pada sebuah komputer dan berfungsi memecah beban besar menjadi beberapa
beban kecil untuk mempercepat proses penyelesaian masalah.
Didistribusikan pengolahan paralel menggunakan pemrosesan paralel
pada beberapa mesin. Salah satu contoh dari hal ini adalah bagaimana
beberapa komunitas memungkinkan pengguna untuk mendaftar dan
mendedikasikan komputer mereka sendiri untuk memproses beberapa data set
yang diberikan kepada mereka oleh server. Ketika ribuan pengguna
mendaftar untuk ini, banyak data dapat diproses dalam jumlah yang sangat
singkat.
Tipe lain dari komputasi paralel yang
kadang-kadang disebut “didistribusikan” adalah gagasan dari sebuah
komputer paralel cluster. Sebuah cluster akan banyak CPU terhubung
melalui kecepatan tinggi koneksi ethernet ke hub sentral (Server) yang
memberi masing-masing beberapa pekerjaan yang harus dilakukan. Metode
cluster mirip dengan metode yang dijelaskan dalam paragraf di atas,
kecuali bahwa semua CPU secara langsung terhubung ke server, dan
satu-satunya tujuan mereka adalah untuk melakukan perhitungan yang
diberikan kepada mereka.
Parallel distributed computing dapat dibentuk dari :
a. Ada : digunakan konsep pertemuan yang menggabungkan fitur RPC dan monitor.
b. PVM (Parallel Virtual Machine) untuk mendukung workstation clusters
c. MPI (Message-Passing Interface) programming GUI untuk parallel computers.
3. Architectual Parallel Computer
-
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.
Tidak ada komentar:
Posting Komentar