Multiple Instruction, Multiple Data(MIMD) || Fajar Saputra -21312063 ||

Nama : Fajar Saputra
NPM  : 21312063
Kelas  : IF 21 B
Dosen Pengampu : Ajeng Savitri S.Kom., M.Kom.
Mata Kuliah : Organisasi dan Arsitektur Komputer
Tugas : Multiple Processor Organization

Multiple Instruction, Multiple Data(MIMD)

Didalam Arsitektur komputer, ada dua teknik yang berbeda untuk mengakses data di unit memori, yaitu shared memory address dan message passing. Berdasarkan cara mengorganisasikan memori ini Komputer parallel dibedakan menjadi shared memory parallel machine dan distributed memory parallel machine. Untuk lebih memperjelas lebih dalam mengenai perbedaan komputasi tunggal (menggunakan 1 processor) dengan komputasi paralel (menggunakan beberapa processor), maka kita harus mengetahui terlebih dahulu Arsitektur Komputer Pararel dan pengertian mengenai model pemrosesan pararel.

Sebenarnya ada 4 model komputasi yang digunakan Taksonomi Flynn akan tetapi pada pembahasan kali ini saya akan membahas tentang Multiple Instruction, Multiple Data(MIMD).


MIMD ( Multiple Instruction, Multiple Data) Multiple Instructions.

Komputer ini memiliki lebih dari satu prosesor dan mengeksekusi lebih dari satu instruksi secara paralel. Tipe komputer ini yang paling banyak digunakan untuk membangun komputer paralel, bahkan banyak supercomputer yang menerapkan arsitektur ini. Beberapa komputer yang menggunakan model MIMD adalah IBM POWER5, HP/Compaq AlphaServer, Intel IA32, AMD Opteron, Cray XT3 dan IBM BG/L. Singkatnya untuk perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini:

Dari perbedaan kedua gambar di atas, kita dapat menyimpulkan bahwa kinerja komputasi paralel lebih efektif dan dapat menghemat waktu untuk pemrosesan data yang banyak dan besar daripada komputasi tunggal. Namun keefektifan akan hilang ketika kita hanya mengolah data dalam jumlah yang kecil, karena data dengan jumlah kecil atau sedikit lebih efektif jika kita menggunakan komputasi tunggal. 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.

Ada 2 teknik pemrograman pararel :

1. Message Passing Interface (MPI).
MPI adalah sebuah standard pemrograman yang memungkinkan pemrogram (programmer) untuk membuat sebuah aplikasi yang dapat dijalankan secara paralel. Proses yang dijalankan oleh sebuah aplikasi dapat dibagi untuk dikirimkan ke masing - masing computer node yang kemudian masing -masing compute node tersebut mengolah dan mengembalikan hasilnya ke komputer head node. Untuk merancang aplikasi paralel tentu membutuhkan banyak pertimbangan - pertimbangan diantaranya adalah latensi dari jaringan dan lama sebuah tugas dieksekusi oleh prosesor.

Kegunaan MPI yang lain adalah :
1. Menulis kode paralel secara portable,
2. Mendapatkan performa yang tinggi dalam pemrograman paralel,
3. Menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak  begitu cocok dengan model data paralel.

2. PVM (Parallel Virtual Machine)
Paket software yang mendukung pengiriman pesan untuk komputasi parallel antara komputer. PVM dapat berjalan diberbagai macam variasi UNIX atau pun windows dan telah portable untuk banyak arsitektur seperti PC, workstation, multiprocessor dan superkomputer.

0 Komentar