makalah arkom paralel processing

Download Makalah Arkom Paralel Processing

Post on 25-Jun-2015

3.357 views

Category:

Documents

77 download

Embed Size (px)

TRANSCRIPT

Parallel ProcessingMakalah

Disusun Sebagai Salah Satu Tugas Mata Kuliah Arsitektur dan Organisasi Komputer

Disusun oleh

M Rangga Permana Ajeng Aulia Lutfiyanti

108091000015 109091000107 108091000022

KELAS TI 5 B Peminatan Jaringan

PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 2010

Parallel Processing

1.

Pengertian Pemrosesan paralel (parallel processing) adalah penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan. Tetapi dalam praktek, seringkali sulit membagi program sehingga dapat dieksekusi oleh CPU yang berbea-beda tanpa berkaitan di antaranya.

Komputasi paralel adalah salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan. Biasanyadiperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karena tuntutan proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi paralel ini diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah. 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.

Pemrograman paralel adalah 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.

Komputasi paralel membutuhkan: algoritma bahasa pemrograman compiler

Sebagai besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih dari satu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu CPU dapat melakukan parallel processing dengan menghubungkannya dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software canggih yang disebut distributed processing software.

Parallel processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Parallel processing disebut juga parallel computing.

Contoh struktur pengiriman permintaan dan jawaban dari parallel processing

2.

Arsitektur Komputer Parallel a. Berdasarkan simetrinya, multiprocessing dapat dibagi ke dalam 1. 2. 3. Asymmetric Multiprocessing (ASMP) Symmetric Multiprocessing (SMP) Non-uniform memory access (NUMA) multiprocessing a) Pengertian

Non-Uniform Memory Access atau Non-Uniform Memory Arsitektur (NUMA) adalah memori komputer Rancangan yang digunakan dalam multiprocessors , dimana waktu akses memori tergantung pada lokasi memori relatif terhadap prosesor. Under NUMA, Dalam NUMA, prosesor dapat mengakses memori lokal sendiri lebih cepat dari memori non-lokal, yaitu, memori lokal ke prosesor atau memori bersama antara prosesor. NUMA architectures logically follow in scaling from symmetric multiprocessing (SMP) architectures. Arsitektur NUMA logis mengikuti skala dari symmetric multiprocessing (SMP) arsitektur. pembangunan komersial mereka datang bekerja dengan Burroughs (kemudian Unisys ), Convex Komputer (kemudian Hewlett-Packard ), Silicon Graphics , Sekuen Sistem Komputer , Data General dan Digital selama tahun 1990an. Teknik yang dikembangkan oleh perusahaan-perusahaan ini kemudian ditampilkan dalam berbagai Unix-seperti sistem operasi , dan agak dalam Windows NT . b) Konsep Dasar Modern CPU beroperasi jauh lebih cepat daripada memori utama yang mereka terpasang. In the early days of computing and data processing the CPU generally ran slower than its memory. Pada hari-hari awal komputasi dan pengolahan data CPU umumnya berlari lebih lambat dari memori. Garis kinerja menyeberang pada tahun 1960 dengan munculnya pertama superkomputer dan kecepatan komputasi tinggi. Sejak saat itu, CPU, semakin kelaparan untuk data, harus kios sementara mereka menunggu untuk mengakses memori untuk menyelesaikan. Banyak superkomputer desain 1980-an dan 90-an terfokus pada penyediaan akses kecepatan tinggi memori sebagai lawan dari prosesor

yang lebih cepat, yang memungkinkan mereka untuk bekerja pada set data besar pada kecepatan sistem lain tidak bisa pendekatan. Membatasi jumlah akses memori yang disediakan kunci untuk mengekstrak kinerja tinggi dari komputer modern. For commodity processors, this means installing an ever-increasing amount of highspeed cache memory and using increasingly sophisticated algorithms to avoid "cache misses". Untuk prosesor komoditas, ini berarti untuk memasang meningkat jumlah yang tinggi kecepatan memori cache dan menggunakan algoritma semakin canggih untuk menghindari "cache misses". Namun peningkatan dramatis dalam ukuran sistem operasi dan aplikasi yang dijalankan pada mereka telah umum kewalahan perbaikan ini cache-pengolahan. Multi-processor systems make the problem considerably worse. Sistem multi-prosesor membuat masalah jauh lebih buruk. Sekarang sistem bisa kelaparan beberapa prosesor pada saat yang sama, terutama karena hanya satu prosesor dapat mengakses memori pada suatu waktu. NUMA berupaya untuk mengatasi masalah ini dengan menyediakan memori terpisah untuk masing-masing prosesor, menghindari kinerja beberapa prosesor menyerang ketika mencoba untuk mengatasi memori yang sama. Untuk masalah yang melibatkan data menyebar (umum untuk server dan aplikasi serupa), NUMA dapat meningkatkan kinerja selama memori bersama tunggal dengan faktor kira-kira jumlah prosesor (atau bank memori yang terpisah). Tentu saja, tidak semua data akhirnya terbatas pada satu tugas, yang berarti bahwa lebih dari satu prosesor mungkin memerlukan data yang sama. Untuk menangani kasus ini, sistem NUMA termasuk tambahan perangkat keras atau perangkat lunak untuk memindahkan data antar bank. Operasi ini memiliki efek memperlambat prosesor yang melekat

pada bank-bank, sehingga meningkatkan kecepatan keseluruhan karena NUMA akan sangat bergantung pada sifat yang tepat dari tugas berjalan pada sistem pada suatu waktu tertentu. 4. Clustering a) Pengertian Cluster, dalam ilmu komputer dan jaringan komputer adalah sekumpulan komputer (umumnya server jaringan) independen yang beroperasi serta bekerja secara erat dan terlihat oleh klien jaringan seolah-olah komputer-komputer tersebut adalah satu buah unit komputer. Proses menghubungkan beberapa komputer agar dapat bekerja seperti itu dinamakan dengan Clustering. Komponen cluster biasanya saling terhubung dengan cepat melalui sebuah interkoneksi yang sangat cepat, atau bisa juga melalui jaringan lokal (LAN). Karena menggunakan lebih dari satu buah server, maka manajemen dan perawatan sebuah cluster jauh lebih rumit dibandingkan dengan manajemen server mainframe tunggal yang memiliki skalabilitas tinggi (semacam IBM AS/400), meski lebih murah.

b) Kategori kluster komputer Kluster komputer terbagi ke dalam beberapa kategori, sebagai berikut:y

Kluster untuk ketersediaan yang tinggi (High-availability clusters) High-availability cluster, yang juga sering disebut sebagai Failover Cluster pada umumnya diimplementasikan untuk tujuan

meningkatkan ketersediaan layanan yang disediakan oleh kluster tersebut. Elemen kluster akan bekerja dengan memiliki node-node redundan, yang kemudian digunakan untuk menyediakan layanan saat salah satu elemen kluster mengalami kegagalan. Ukuran yang paling umum dari kategori ini adalah dua node, yang merupakan syarat minimum untuk melakukan redundansi. Implementasi

kluster jenis ini akan mencoba untuk menggunakan redundansi komponen kluster untuk menghilangkan kegagalan di satu titik (Single Point of Failure).

Ada beberapa implementasi komersial dari sistem kluster kategori ini, dalam beberapa sistem operasi. Meski demikian, proyek LinuxHA adalah salah satu paket yang paling umum digunakan untuk sistem operasi GNU/Linux.

Dalam keluarga sistem operasi Microsoft Windows NT, sebuah layanan yang disebut dengan Microsoft Cluster Service (MSCS) dapat digunakan untuk menyediakan kluster kategori ini. MSCS ini diperbarui lagi dan telah diintegrasikan dalam Windows 2000 Advanced Server dan Windows 2000 Datacenter Server, dengan nama Microsoft Clustering Service. Dalam Windows Server 2003, Microsoft Clustering Service ini ditingkatkan lagi kinerjanya.

y

Kluster untuk pemerataan beban komputasi (Load-balancing clusters) Kluster kategori ini beroperasi dengan mendistribusikan beban pekerjaan secara merata melalui beberapa node yang bekerja di belakang (back-end node). Umumnya kluster ini akan

dikonfigurasikan sedmikian rupa dengan beberapa front-end loadbalancing redundan. Karena setiap elemen dalam sebuah kluster load-balancing menawarkan layanan penuh, maka dapat dikatakan bahwa komponen kluster tersebut merupakan sebuah kluster aktif/kluster HA aktif, yang bisa menerima semua permintaan yang diajukan oleh klien.

y

Kluster hanya untuk komputasi (Compute clusters)

Seringnya, penggunaan utama kluster komputer adalah untuk tujuan komputasi, ketimbang penanganan operasi yang berorientasi I/O seperti layanan Web atau basis data. Sebagai contoh, sebuah kluster mungkin mendukung simulasi komputasional untuk perubahan cuaca atau tabrakan kendaraan. Perbedaan utama untuk kategori ini dengan kategori lainnya adalah seberapa eratkah penggabungan antar node-nya. Sebagai contoh, sebuah tugas komputasi mungkin membut