Disusun Oleh:
Agenda g
Agenda presentasi adalah sebagai berikut: Terminologi Klasifikasi Flynn Komputer MIMD Performa Multiprocessor Time Sharing Kesimpulan p
Terminologi-1 g
Parallel Processing
Pemrosesan informasi yang menekankan pada pengolahan elemen elemen elemen-elemen data dari satu atau lebih proses untuk memecahkan masalah tunggal. Komputer Paralel Komputer dengan beberapa prosesor yang mampu melaksanakan pemrosesan paralel S Super komputer k t Komputer serba guna yang mampu menyelesaikan masalahmasalah dengan kecepatan komputasi yang luar biasa biasa, dibandingkan dengan komputer-komputer lain pada masa yang sama. Semua super komputer kontemporer adalah komputer paralel. l l
Terminologi-2 g
Data Parallelism
Penggunaan beberapa unit fungsi untuk melaksanakan suatu operasi y g yang simulatan p pada beberapa elemen dari suatu set data. p Pipelining dan data parallelism merupakan cara untuk meningkatkan konkurensi. Perbandingan antara mesin sekuensial (a), pipeline (b), dan data-paralel (c) ditunjukkan dengan ilustrasi berikut berikut. A,B,C : langkah masing-masing yang memerlukan satu satuan waktu w1,w1,: data
A B C
(a) W2 W1
A B C A B C
(c) ( )
W3
W1
A B C
(b)
W4 W3 W2 W1
W4
W2
Terminologi-3 g 3
Pipeline
Pada konsep pipeline/pipelining, instruksi yang akan dikerjakan oleh komputer dibagi menjadi beberapa subsiklus instruksi yang lebih kecil. Beberapa sub siklus instruksi dari fungsi atau program yang berbeda dapat diproses secara bersamaan (secara paralel) pada perangkat keras y g p yang terpisah. Multiprogramming Pelaksanaan beberapa program, dalam interval waktu yang sama. Multiprocessing Pelaksanaan/pengeksekusian beberapa kejadian (event) dari satu atau lebih program secara bersamaan dengan menggunakan beberapa pemroses. Event bisa berupa kejadian apa saja yang merupakan bagian pelaksanaan suatu instruksi.
Terminologi-4 g 4
instruksi 2 1 a pipelining i li i b waktu 2 1 a b multiprogramming waktu program
Klasifikasi Flynn y
1. SISD (Si (Single I l Instruction i
memori (M)
CPU
stream, Single Data stream) Instruksi pada komputer SISD dijalankan satu-persatu. Contoh : komputer Von Neuman 2. SIMD (Single Instruction stream, Multiple Data stream) Suatu instruksi pada komputer SIMD dilaksanakan satu persatu namun mampu bekerja pada beberapa aliran data sekaligus. Contoh : prosessor Array Ket. IP : I Instruction Processor i P DE : Data Processor
memori (M) IP DP DP
DP
Klasifikasi Flynn-2 y
IP
3. MISD (M lti l I t (Multiple Instruction ti stream, Single Data stream) Melaksanakan beberapa operasi instruksi bersamaan pada satu aliran data. Belum ada penerapan dari komputer jenis ini 4. MIMD (Multiple Instruction stream, Multiple Data stream) Eksekusi beberapa instruksi secara paralel, dimana masingmasing instruksi dapat beroperasi pada b b d beberapa aliran d t li data. Kelompok ini meliputi komputer multiprocessor, seperti mainframe dan komputer super.
IP
M
IP
MUX
DP IP DP
M
IP
DP
DP
DP
Komputer MIMD p
Memori bersama (shared memory) Komputer MIMD Memori tersebar (distributed memory)
Berdasarkan cara berkomunikasinya, komputer paralel MIMD dibagi menjadi 2 kelompok besar, yaitu : komputer paralel dengan memori bersama dan komputer paralel memori tersebar. Pada kelompok pertama, d t d program di i t b P d k l k t data dan disimpan pada suatu memori d t i bersama dan masing-masing processor (dalam suatu komputer paralel) saling berkomunikasi melalui memori tersebut. Pada SMP, beberapa prosessor b b g memori y g sama melalui suatu b dengan ,b b p p berbagi yang bus g waktu akses ke berbagai lokasi memori relatif sama untuk masing-masing processor. Sedangkan pada NUMA, waktu akses memori untuk lokasi yang tidak sama dapat berbeda. Cluster dibentuk dari kumpulan beberapa komputer dengan processor tunggal atau Cl dib kd ik l b b k d l beberapa SMP yang saling dihubungkan dan dapat bekerja bersama-sama sebagai komputer tunggal.
Performa Multiprocessor p
Uk Ukuran performa atau ki j multiprocessor yang paling f t kinerja lti li
penting adalah speedup (Sp) , yaitu perbandingan waktu yang diperlukan untuk menjalankan suatu aplikasi dengan processor tunggal (dari suatu komputer paralel ) dengan waktu untuk menja-lankan aplikasi yang sama dengan p processor.
dengan T1: waktu yang diperlukan 1 processor; p : waktu yang diperlukan dengan p processor
S ( Speedup )
T1 Tp
Performa Multiprocessor-2 p
Tipe Speedup
Tujuan sistem yang scalable adalah speedup linier (S=P), namun sulit diwujudkan karena: - tidak semua bagian dalam program dapat diparalelkan. - adanya overhead yang disebabkan oleh inisialisasi, sinkronisasi, komunikasi, komunikasi koherensi cache dan ketidakseimbangan beban cache, beban. (S : sppedup dan P : jumlah processor)
S
Superlinier S > P Linier S = P Sublinier S < P
S max
1 1 f f
p dengan, Smax : adalah speedup maksimum yang dapat dicapai oleh komputer paralel dengan p prosessor, p : jumlah prosessor, f : bagian/fraksi dari operasi komputasi yang dapat dikerjakan secara paralel (dalam terminologi waktu), dimana 0 f 1. Hukum ini mengasumsikan bahwa tiap prosessor melakukan sejumlah komputasi paralel yang setara setara. Untuk mencapai speedup yang baik, fraksi komputasi yang dijalankan secara sequensial harus sangat kecil. Tidak akan terlalu bermanfaat menggunakan sistem multiprosessor atau komputer paralel untuk mengerjakan aplikasi yang memiliki bagian sequensial yang besar.
p p f ( p 1)
Dimisalkan suatu aplikasi tertentu dijalankan pada komputer paralel dengan 64 prosessor
dan 70% komputasi dari aplikasi tersebut dapat dikerjakan secara paralel paralel. Berapakah speedup maksimum yang dapat diharapkan dari sistem tersebut dan bandingkan apabila aplikasi yang sama dijalankan pada komputer paralel dengan 16 prosessor. Jawab : S max (64 ) = 64 / (64 0,7.63) = 3,22 S max (16) = 16 / (16 0,7.15) = 2.91 Ternyata perubahan speedup jauh lebih kecil dibanding peningkatan jumlah prosessor yang digunakan.
Time Sharing-1 g
Ti Time sharing adalah i h i d l h inovasi yang memungkinkan i ki k
komputer-komputer besar memproses banyak tugas secara simultan, dengan memberikan potongan waktu pada masing-masing tugas, dan beralih dari satu tugas ke tugas lainnya dengan cepat. Varian dari multiprogramming, dimana tiap pemakai mempunyai satu terminal on-line dengan pemroses hanya memberi l b i layanan pada pemakai yang aktif secara d k i k if bergantian dengan cepat. Pemakai akan merasa dilayani terus menerus, padahal sebenarnya digilir persatuan waktu menerus yang cukup singkat.
Time Sharing-2 g
Perbedaan Time Sharing dengan Batch Multiprogramming Batch Multiprogramming Principal objective Source of directives to operating system Maximize processor use Job control language commands provided with the job Time Sharing Minimize response time Commands entered at the terminal
Processor
L1 Cache
Processor
L1 Cache
L2 Cache
L2 Cache
L2 Cache
BUS S
Seperti ditunjukkan pada gambar skema organisasi komputer SMP. Pada organisasi ini semua prosessor dan SMP ini, modul I/O berbagi bus untuk mengakses memori utama. Kelebihan : sederhana (simplicity) fleksibel (simplicity), fleksibel, handal (reliability). Kekurangan: koherensi cache cache.
Time Sharing-5 g5
CPU melakukan multiplex pada beberapa jobs yang b l k k lti l d b b j b berada d
di memory (dan disk) CPU hanya dialokasikan kepada jobs yang telah siap dan berada di memori Besar memori masih sangat terbatas: Pada job dilakukan swapped in dan out dari memory ke disk. Komunikasi on-line (interaktif) antara user dan sistim: j ( ) jika OS telah selesai mengeksekusi satu perintah, menunggu p perintah berikut bukan dari card reader, tapi dari p terminal user On-line system harus tersedia bagi user yang akan mengakses data dan kode.
Kesimpulan p
D Dengan memanfaatkan k f tk kemampuan sistem operasi untuk i t i t k
melakukan multiprogramming (multitasking) , maka dimungkinkan juga menyisipkan job-job interaktif yang job job berasal dari beberapa user yang berbeda melalui sistem jaringan terminal. Teknik ini disebut Time Sharing Dengan kata lain, teknik time-sharing memiliki basis yang sama dengan teknik multiprogramming, perbedaanya adalah bahwa pada time-sharing j b j b yang di i i k d l hb h d i h i job-job disisipkan (interleaved) berasal dari user yang berbeda-beda melalui jaringan terminal terminal.
Referensi
Buku: Stalling, William. Computer Organization And Architecture Designingfor Performance. 2010. Prentice Hall
Website: W b it http://en.wikipedia.org/wiki/Flynn%27s_taxonomy http://www cs toronto edu/~demke/469F 06/lectures shtml http://www.cs.toronto.edu/ demke/469F.06/lectures.shtml http://www.cs.vu.nl/~ast/books/book_software.html