Makalah
Disusun oleh
KELAS TI 5 B
Peminatan Jaringan
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.
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.
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.
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:
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).
Grid computing
Grid pada umumnya adalah compute cluster, tapi difokuskan pada
throughput seperti utilitas perhitungan ketimbang menjalankan
pekerjaan-pekerjaan yang sangat erat yang biasanya dilakukan oleh
Supercomputer. Seringnya, grid memasukkan sekumpulan
komputer, yang bisa saja didistribusikan secara geografis, dan
kadang diurus oleh organisasi yang tidak saling berkaitan.
Grid computing dioptimalkan untuk beban pekerjaan yang
mencakup banyak pekerjaan independen atau paket-paket
pekerjaan, yang tidak harus berbagi data yang sama antar pekerjaan
selama proses komputasi dilakukan. Grid bertindak untuk
mengatur alokasi pekerjaan kepada komputer-komputer yang akan
melakukan tugas tersebut secara independen. Sumber daya, seperti
halnya media penyimpanan, mungkin bisa saja digunakan bersama-
sama dengan komputer lainnya, tapi hasil sementara dari sebuah
tugas tertentu tidak akan mempengaruhi pekerjaan lainnya yang
sedang berlangsung dalam komputer lainnya.
Sebagai contoh grid yang sangat luas digunakan adalah proyek
Folding@home, yang menganalisis data yang akan digunakan oleh
para peneliti untuk menemukan obat untuk beberapa penyakit
seperti Alzheimer dan juga kanker. Proyek lainnya, adalah
SETI@home, yang merupakan proyek grid terdistribusi yang paling
besar hingga saat ini. Proyek SETI@home ini menggunakan paling
tidak 3 juta komputer rumahan yang berada di dalam komputer
rumahan untuk menganalisis data dari teleskop radio
observatorium Arecibo (Arecibo Observatory radiotelescope), mencari
bukti-bukti keberadaan makhluk luar angkasa. Dalam dua kasus
tersebut, tidak ada komunikasi antar node atau media
penyimpanan yang digunakan bersama-sama.
c) Implementasi
Daftar semi-tahunan organisasi TOP500, yang mencantumkan 500
komputer tercepat di dunia umumnya mencakup banyak kluster.
TOP500 adalah sebuah kolaborasi antara Universitas Mannheim,
Universitas Tennessee, dan National Energy Research Scientific
Computing Center di Lawrence Berkeley National Laboratory. Hingga
18 Juni 2008, superkomputer tercepat yang tercatat di dalam TOP500
adalah sistem Roadrunner yang dimiliki oleh Department of Energy
Amerika Serikat, yang kinerjanya mencapai 1026 TeraFlops (Triliun
Floating Point Operation per Second) dalam benchmark High-
Performance LINPACK.
Meskipun hal ini secara umum telah membuktikan bahwa sulitnya mencari
aplikasi komersial yang dikhususkan untuk prosesor SIMD, ada beberapa
kesuksesan yang terjadi seperti halnya aplikasi GAPP yang dikembangkan
oleh Lockheed Martin. Versi yang lebih baru dari GAPP bahkan menjadi
aplikasi yang dapat memproses video secara waktu-nyata (real-time) seperti
halnya konversi antar bermacam-macam standar video yang (seperti
konversi NTSC ke PAL atau sebaliknya, NTSC ke HDTV atau sebaliknya
dan lain-lain), melakukan deinterlacing, pengurangan noise (noise reduction),
kompresi video, dan perbaikan citra gambar (image enhancement).