Anda di halaman 1dari 30

Parallel Processing

ORGANISASI KOMPUTER II

STMIK – AUB SURAKARTA


Introduction
 Umumnya sistem multiprosesor
menggunakan dua hingga selusin prosesor.

 Peningkatan sistem multiprosesor 


menggunakan jumlah prosesor yang sangat
banyak  ratusan, ribuan bahkan puluhan
ribu  sistem prosesor paralel atau sistem
prosesor yang massif (untuk ribuan
prosesor)
Penyebab Munculnya Prosesor Paralel
(1)
 Pemanfaatan komoditas prosesor
RISC
 Prosesor RISC yang murah dan
berkinerja tinggi mudah diperoleh.
 Pada kebanyakan sistem, prosesor
komoditas ini dipakai sebagai blok
bangunan dasar, yang mengurangi
keharusan perancang prosesor paralel
untuk merancang prosesor dasar dan
juga organisasi secara keseluruhan.
Penyebab Munculnya Prosesor
Paralel (2)
 Kemajuan teknik komunikasi dari
prosesor ke prosesor
 Dengan ratusan atau ribuan prosesor
yang harus bekerja bersama, metode
koordinasi dan pertukaran data yang
efisien dan fail-safe merupakan hal yang
vital.
Penyebab Munculnya Prosesor Paralel
(3)
 Kebutuhan akan kinerja
 Dengan peningkatan kinerja pada
generasi prosesor yang akan datang,
kebutuhan kinerja aplikasi meningkat
lebih cepat.
 Teknik pengolahan paralel menyediakan
fasilitas untuk meningkatkan kinerja
dengan menggunakan teknologi prosesor
yang ada.
Sistem Prosesor Paralel
 Sistem dengan sejumlah prosesor yang
diinterkoneksikan dan bekerjasama untuk
mengeksekusi program-program aplikasi.
 Istilah prosesor paralel diartikan sebagai
sistem yang mendukung paralelisme
tingkat tinggi.
 Sistem yang menawarkan framework
eksplisit untuk pembuatan perangkat lunak
sistem dan aplikasi menggunakan
paralelisme.
Paralelisme Tingkat Rendah
 Instruksi Pipelining
 Setiap eksekusi instruksi dibagi menjadi
sejumlah tahapan, sehingga instruksi-instruksi
tersebut dapat dieksekusi secara paralel, dimana
masing-masing instruksi berada pada tahapan
yang berbeda.
 Unit Fungsional Prosesor Jamak
 Replikasi unit-unit ALU mengizinkan pendekatam
skalar, dimana sejumlah instruksi dieksekusi
secara paralel, semuanya pada tahapan eksekusi
yang sama.
Paralelisme Tingkat Rendah
 Prosesor Terspesialisasi yang
Terpisah
 Contoh yang sangat umum adalah
penggunaan prosesor I/O, yang
membebaskan CPU dari tanggung jawab
kontrol I/O secara rinci
Taksonomi Sistem Komputer
 Single instruction, single data stream – SISD

 Single instruction, multiple data stream – SIMD

 Multiple instruction, single data stream – MISD

 Multiple instruction, multiple data stream- MIMD


Single Instruction Single Data
 Sebuah prosesor tunggal
menginterpretasikan aliran instruksi
agar beroperasi terhadap data yang
tersimpan pada sebuah memori
tunggal.
Single Instruction Multiple Data
 Sebuah instruksi mesin tunggal mengontrol
secara simultan eksekusi sejumlah elemen-
elemen pengolahan berdasarkan lock-step.
 Setiap elemen pengolahan memiliki kaitan
dengan memori data tertentu, sehingga
setiap instruksi dieksekusi terhadap
himpunan data yang berbeda oleh prosesor
yang berbeda.
 Contoh : Prosesor vektor dan prosesor
array
Multiple Instruction Single Data
 Sejumlah data dikirimkan ke
himpunan prosesor, dengan setiap
prosesor mengeksekusi rangkaian
instruksi yang berbeda.
 Struktur ini tidak pernah digunakan
Multiple Instruction Multiple Data
 Sejumlah prosesor secara simultan
mengeksekusi rangkaian instruksi
yang berbeda pada kumpulan data
yang berbeda pula.
Organisasi MIMID
 Prosesor general-purpose, karena
prosesor-prosesor tersebut harus
mampu memproses semua instruksi
yang diperlukan untuk melakukan
transformasi data.
 MIMD dapat digolongkan menurut
komunikasi data.
 Shared memory (multiprosesor)
 Distributed memory (multikomputer)
MIMD
 Apabila prosesor menggunakan memori umum
secara bersama dan prosesor berkomunikasi satu
sama lainnya dengan melalui memori tersebut,
maka sistem tersebut dikenal sebagai sistem
multiprosesor.
 Apabila masing-masing prosesor memiliki suatu
dedicated memory, maka setiap elemen
pengolahannya menggunakan komputer self-
contained. Komunikasi antara komputer-komputer
tersebut dapat melalui lintasan-lintasan tetap atau
melalui sejenis mekanisme message-switching.
Sistem ini dikenal sebagai multikomputer.
Sistem Pengolahan Paralel
Terapan
 Meliputi :
 SISD
 Multiprosesor
 Multikomputer
Parallel Organizations - SISD

 Gambaran organisasi SISD secara umum


 Terdapat beberapa unit kontrol yang
mengirimkan aliran instruksi (Instruction
Stream-IS) ke unit pengolahan. Unit
pengolahan beroperasi pada single data
stream (DS) yang berasal dari unit memori.
Parallel Organizations - SIMD
 Pada SIMD, masih terdapat unit
kontrol tunggal, yang sekarang akan
memberikan aliran instruksi tunggal
ke sejumlah elemen pengolahan.
 Setiap elemen pengolahan dapat
memiliki memori terdedikasi sendiri
atau dapat juga memori yang dapat
digunakan bersama.
Parallel Organizations - MIMD
Shared Memory
Parallel Organizations - MIMD
Distributed Memory
 Pada MIMD terdapat sejumlah unit
kontrol yang masing-masing unit
kontrolnya memberikan aliran
instruksi terpisah ke elemen
pengolahan milikinya sendiri.
 MIMD dapat berupa multiprosesor
dengan memori yang dapat digunakan
bersama atau multikomputer dengan
memori yang terdistribusi.
Multiprosesor
 Sebuah sistem komputer menjalankan satu
buah aplikasi atau lebih yang kemudian
dipecah menjadi sejumlah proses sekuensial
yang berko-operasi.
 Dapat diimplementasikan pada sistem
berprosesor tunggal, namun akan lebih
mudah apabila diimplementasikan pada
sebuah sistem multiprosesor.
 Setiap saat, setiap proses jamak akan
mengeksekusi proses lainnya.
 Komunikasi antara proses dilakukan oleh
pesan-pesan dan flag-flag yang dapat
dikirimkan ke prosesor lainnya melalui
memori utama.
Multikomputer
 Keterbatasan skala multiprosesor 
multikomputer
 Tujuan  untuk membuat organisasi
yang scalable yang dapat
mengakomodasi bermacam-macam
prosesor.
 Prosesor-prosesor multikomputer
berkomunikasi dengan cara saling
bertukar pesan  elemen penting
perancangan = jaringan interkoneksi
(harus dibuat seefisien mungkin)
 Secara umum, terdapat trade-off
antara lintasan terpanjang di antara
dua simpul dengan jumlah koneksi
fisik yang diperlukan pada setiap
simpul.
Topologi Interkoneksi
 Untuk mendukung skalabilitas dan
untuk memberikan kinerja yang
efisien.
 Ring
 Mesh
 Tree
 Hypercube
Topologi Interkoneksi Ring
 Apabila komunikasi dua arah di
sepanjang ring, maka jarak maksimum
antara dua buah simpul pada ring
dengan n simpul adalah n/2
 Biasanya paket-paket pesan berukuran
tetap digunakan dengan melibatkan
alamat tujuan yang dilibatkan.
 Cocok untuk jumlah prosesor yang
relatif sedikit dengan komunikasi data
minimal
Topologi Mesh
 Bentuk mesh yang paling sederhana adalah
array dua dimensi tempat masing-masing
simpul saling terhubung dengan keempat
tetangganya.
 “Diameter” komunikasi sebuah mesh yang
sederhana adalah 2(n-1)
 Koneksi wraparound pada bagian-bagian
ujung akan mengurangi ukuran diameter
menjadi 2(n/2).
 Cocok untuk hal-hal yang berkaitan dengan
algoritma yang berorientasi matriks.
Topologi Tree
 Jaringan topologi untuk mendukung
algoritma divide-and-conquer, seperti
searching dan sorting.
Topologi Hypercube
 Menggunakan N=2n prosesor yang
disusun dalam sebuah kubus
berdimensi n, dimana setiap simpul
mempunyai n= log2N link bidirectional
dengan simpul yang berdekatan.
Diameter komunikasi hiperkubus
seperti itu sama dengan n.

Anda mungkin juga menyukai