multiprosesor & multikomputer

13
Parallel Prosesing Multiprosesor dan Multikomputer

Upload: reza-mardiyeni

Post on 26-Jun-2015

588 views

Category:

Engineering


9 download

TRANSCRIPT

Page 1: multiprosesor & multikomputer

Parallel ProsesingMultiprosesor dan Multikomputer

Page 2: multiprosesor & multikomputer

Parallel Computer Memory ArchitecturesShare memoriKarakteristik Umum:

     * Shared memory komputer paralel sangat bervariasi, tetapi umumnya memiliki kesamaan kemampuan untuk semua prosesor mengakses semua memori dengan menganggapsebagai ruang alamat global.

     * Beberapa prosesor dapat beroperasi secara independen namun memiliki sumber daya memori yang sama.

     * Perubahan dalam lokasi memori yang dilakukan oleh satu prosesor berdampak pada semua prosesor .

     * Memori bersama dapat dibagi menjadi dua kelas utama berdasarkan waktu akses memori: UMA dan NUMA.        

Page 3: multiprosesor & multikomputer

Uniform Memory Access (UMA): *Sering dianolgikan sebagai Symmetric Multiprocessor (SMP) mesin* Identik prosesor* Akses yang sama dan waktu akses ke memori * Kadang-kadang disebut CC-UMA - Cache koheren UMA. Cache koheren berarti jika update pada suatu prosesor maka semua proseosr akan mengerti. Koherensi cache dicapai pada tingkat hardware.

Page 4: multiprosesor & multikomputer

Non-Uniform Memory Access (NUMA):*Kebanyakan dibuat secara fisik dari m SMP * Satu SMP langsung dapat mengakses memori lain     * Tidak semua prosesor memiliki waktu akses yang sama      * Memori akses di link lebih lambat     * Jika koherensi cache dipertahankan, maka dapat disebut juga sebagai CC-NUMA - Cache Coherent NUMA

Page 5: multiprosesor & multikomputer

Keuntungan dan kekurangankeuntungan:     * Ruang alamat global memberikan perspektif untuk membuat pemrograman yang user-friendly untuk memori     * Dapat berbagi data antara task dengan baik,cepat dan seragam karena kedekatan memori untuk CPU

kekurangan:     * Kerugian primer adalah kurangnya skalabilitas antara memori dan CPU. Menambahkan CPU dapat meningkatkan lalu lintas pada jalur memori-CPU bersama, dan untuk sistem cache yang koheren, geometris meningkatkan lalu lintas terkait dengan cache / manajemen memori.     * Programmer bertanggung jawab untuk konstruksi sinkronisasi untuk memastikan "benar" akses memori global.     * Biaya: ia menjadi semakin sulit dan mahal untuk merancang dan memproduksi mesin memori bersama dengan jumlah yang semakin meningkat dari prosesor.

Page 6: multiprosesor & multikomputer

Distribusi memori

Prosesor memiliki memori lokal mereka sendiri. Memori alamat dalam satu prosesor tidak peta ke prosesor lain, sehingga tidak ada konsep ruang alamat global di semua prosesor.

Page 7: multiprosesor & multikomputer

:Distribusi memori Karena setiap prosesor memiliki memori lokal sendiri, beroperasi secara independen. Perubahan itu membuat ke memori lokal tidak memiliki efek pada memori prosesor lainnya. Oleh karena itu, konsep koherensi cache tidak berlaku.

     * Ketika prosesor membutuhkan akses ke data di prosesor yang lain, biasanya tugas programmer secara eksplisit menentukan bagaimana dan kapan data dikomunikasikan. Sinkronisasi antara tugas-tugas adalah juga tanggung jawab programmer.

     * Jaringan Komputer yang digunakan untuk transfer data sangat bervariasi, meskipun dapat dilihat yang sederhana seperti Ethernet.

Page 8: multiprosesor & multikomputer

:Distribusi memorikeuntungan:

     * Mudah dalam menambah dan mengurangi jumlah prosesor     * Setiap prosesor cepat dapat mengakses memori sendiri tanpa gangguan dan tanpa overhead yang terjadi dengan berusaha untuk mempertahankan koherensi cache.     * Efektivitas Biaya: dapat menggunakan komputer yang terdapat dalam pasaran dan jaringan.

kekurangan:

     * Programmer bertanggung jawab untuk banyak rincian yang terkait dengan komunikasi data antara prosesor.     * Ini mungkin sulit untuk memetakan struktur data yang ada, berdasarkan memori global, untuk organisasi memori.     * bersifat waktu akses (NUMA)

Page 9: multiprosesor & multikomputer

Hybrid Distributed-Shared MemoryKomputer terbesar dan tercepat di dunia saat ini mempekerjakan kedua arsitektur memori bersama dan didistribusikan.

Komponen memori bersama dapat cache koheren SMP mesin dan / atau unit pengolahan grafis (GPU).     * Komponen memori terdistribusi adalah jaringan dari beberapa SMP / GPU mesin, yang hanya tahu tentang memori mereka sendiri - bukan memori pada mesin lain. Oleh karena itu, jaringan komunikasi yang diperlukan untuk memindahkan data dari satu SMP / GPU yang lain.     * Kecenderungan saat ini tampaknya menunjukkan bahwa jenis arsitektur memori akan terus menang dan meningkat pada akhir komputasi yang tinggi di masa mendatang.     * Keuntungan dan Kerugian: apa pun yang umum untuk kedua arsitektur memori bersama dan didistribusikan.

Page 10: multiprosesor & multikomputer

Parallel Programming ModelsAda beberapa model dalam pemrograman didalam paralel:•Shared Memory (without threads) •Threads •Distributed Memory / Message Passing •Data Parallel •Hybrid •Single Program Multiple Data (SPMD) •Multiple Program Multiple Data (MPMD)

Model pemrograman diatas merupakan model dari arsitektur hardware dan memori.

Meskipun mungkin tidak tampak jelas, model ini TIDAK spesifik untuk jenis tertentu dari arsitektur mesin atau memori. Bahkan, salah satu model dapat (secara teoritis) akan dilaksanakan pada perangkat keras yang mendasari. Dua contoh diuraikan di bawah ini.

Page 11: multiprosesor & multikomputer

Parallel Programming Models  o SHARED memori pada mesin Sister: Kendall Square, Penelitian (KSR) pendekatan ALLCACHE.

             Memori mesin secara fisik didistribusikan di seluruh jaringan mesin, namun tampaknya pengguna sebagai memori bersama tunggal (ruang alamat global). Umum, pendekatan ini disebut sebagai "memori bersama virtual".       KSR1

Page 12: multiprosesor & multikomputer

Parallel Programming Models  o DISTRIBUSI memori pada mesin memori BERSAMA: Message Passing Interface (MPI) di Negara Asal SGI 2000.

             Asal SGI 2000 mempergunakan jenis CC-NUMA arsitektur memori bersama, di mana setiap tugas memiliki akses langsung ke ruang alamat global tersebar di semua mesin. Namun, kemampuan untuk mengirim dan menerima pesan menggunakan MPI, seperti yang biasa dilakukan melalui jaringan mesin memori terdistribusi, dilaksanakan dan umum digunakan.       Asal SGI 2000

    

Page 13: multiprosesor & multikomputer

Parallel Programming Models      * model mana yang digunakan? Ini sering merupakan kombinasi dari apa yang tersedia dan pilihan pribadi. Tidak ada "terbaik" model, meskipun tentu ada implementasi yang lebih baik dari beberapa model atas orang lain.

     * Bagian berikut menjelaskan masing-masing model yang disebutkan di atas, dan juga membahas beberapa implementasi aktual mereka.