WELCOME TO MY BLOG, PLEASE COMMENT AND ENJOY

Parallel Computation


Salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak ataupun untuk kalkulasi numerik dalam menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia (kimia komputasi) dll.

Pada dasarnya komputasi paralel digunakan untuk menyelesaikan suatu permasalahan besar, dengan memecah-mecah permasalahan tersebut menjadi bagian- bagian dari permasalahan yang lebih kecil (sub-masalah). Kemudian sub-masalah tersebut di selesaikan oleh kumpulan-kumpulan dari prosesor (multi-processors) yang nantinya terlibat dalam pengeksekusian masalah tersebut. Dimana setiap bagian dari sub-masalah di selesaikan oleh satu prosesor (single-processor). Sehingga kita dapat mengambil kesimpulan jika sebuah masalah yang diselesaikan oleh satu prosesor membutuhkan berapa banyak sub-masalah dan berapa lama waktu yang dibutuhkan oleh prosesor tersebut. Kemudian dilakukan perbandingan dengan masalah yang sama, jika masalah tersebut diselesaikan oleh banyak prosesor.

Komputasi parallel berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Pada system komputasi parallel terdiri dari beberapa unit prosesor dan beberapa unit memori. Ada dua teknik yang berbeda untuk mengakses data di unit memori, yaitu shared memory address dan message passing. Berdasarkan cara mengorganisasikan memori ini computer parallel dibedakan menjadi shared memory parallel machine dan distributed memory parallel machine.

Tujuan


Tujuan utama komputasi paralel adalah untuk mempersingkat waktu eksekusi program yang menggunakan komputasi serial. Beberapa alasan lain yang menjadikan suatu program menggunakan komputasi paralel antara lain:
  1. Untuk komputasi yang sangat kompleks, terkadang sumber daya (resource) yang ada sekarang belum cukup mampu untuk mendukung penyelesaian terhadap permasalahan secara cepat.
  2. Adanya keterbatasan memori pada mesin untuk komputasi serial.
  3. Adanya sumber daya non-lokal yang dapat digunakan melalui jaringan lokal atau internet.
  4. Penghematan biaya pengadaan perangkat keras, dengan menggunakan beberapa mesin yang murah sebagai alternatif penggunaan satu mesin yang bagus tapi mahal, walaupun menggunakan P-Processor (Multicore).

Hambatan


#1. Hukum Amdahl, yaitu percepatan waktu eksekusi program dengan menggunakan komputasi paralel tidak akan pernah mencapai kesempurnaan karena selalu ada bagian program yang harus dieksekusi secara serial.

#2. Hambatan yang diakibatkan karena beban jaringan, dalam eksekusi program secara paralel, prosesor yang berada di mesin yang berbeda memerlukan pertukaran data melalui jaringan. Untuk program yang dibagi menjadi task-task membutuhkan sinkronisasi, network latency (keterlambatan jaringan) menjadi masalah utama. Permasalahan ini muncul karena ketika suatu task membutuhkan data dari task yang lain, bagian ini dikirimkan melalui jaringan dimana kecepatan transfer data kurang dari kecepatan prosesor yang mengeksekusi instruksi task tersebut. Hal ini menyebabkan task tersebut harus menunggu sampai data tiba terlebih dahulu, sebelum mengeksekusi instruksi selanjutnya.

#3. Hambatan yang terkait dengan beban waktu untuk inisialisasi task, terminasi task, dan sinkronisasi.

Arsitektur Komputer Paralel


Dalam sebuah artikel yang direferensikan oleh Flynn, Dalam mendesain sebuah komputer di karakteristikkan oleh perjalanan (alur) dari instruksi-instruksi yang akan diselesaikan oleh suatu arsitektur komputer. Taksonomi ini diklasifikasikan yang disesuaikan melalui perjalanan dari gabungan instruksi dan data. Taksonomi ini menghasilkan empat kemungkinan kombinasi dari pengoperasian instruksi yaitu :

#1. SISD (Single Instruction – Single Data)

Komputer ini memiliki hanya satu prosesor dan satu instruksi yang dieksekusi secara serial. Komputer ini adalah tipe komputer konvensional. Menurut mereka tipe komputer ini tidak ada dalam praktik komputer paralel karena bahkan mainframe pun tidak lagi menggunakan satu prosesor. Klasifikasi ini sekedar untuk melengkapi definisi komputer paralel. Skema SISD ditunjukkan pada gambar berikut ini.




#2. SIMD (Single Instruction – Multiple Data) 

Komputer ini memiliki lebih dari satu prosesor, tetapi hanya mengeksekusi satu instruksi secara paralel pada data yang berbeda pada level lock-step. Komputer vektor adalah salah satu komputer paralel yang menggunakan arsitektur ini. Skema SIMD ditunjukkan pada gambar berikut ini.




#3. MISD (Multiple Instructions – Single Data) 

Teorinya komputer ini memiliki satu prosesor dan mengeksekusi beberapa instruksi secara paralel tetapi praktiknya tidak ada komputer yang dibangun dengan arsitektur ini karena sistemnya tidak mudah dipahami. Skema MISD ditunjukkan pada gambar berikut ini.




#4. MIMD (Multiple Instructions – Multiple Data) 

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. Skema MIMD ditunjukkan pada gambar berikut ini.




Bahasa Pemrograman yang digunakan pada Komputasi Paralel


Message Passing Interface (MPI)

Message Passing Interface (MPI) adalah sebuah standard pemrograman yang memungkinkan pemrogram untuk membuat sebuah aplikasi yang dapat dijalankan secara paralel. Proses yang dijalankan oleh sebuah aplikasi dapat dibagi untuk dikirimkan ke masing – masing compute node yang kemudian masing – masing compute node tersebut mengolah dan mengembalikan hasilnya ke komputer head node.

Kegunaan :
  • Menulis kode paralel secara portable.
  • Mendapatkan performa yang tinggi dalam pemrograman paralel.
  • Menghadapi permasalahan yang melibatkan hubungan data irregular atau dinamis yang tidak begitu cocok dengan model data paralel.

Parallel Virtual Machine (PVM)

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

Komponen :
  • PVM daemon merupakan semacam program yang berjalan di “belakang” dan biasanya menangani program dari para klien. Komponen ini berada pada setiap komputer yang terhubung dalam virtual machine (mesin virtual). PVM Berguna untuk membentuk konfigurasi host dalam PVM dan mengkoordinir komunikasi antar host.

  • PVM libraries merupakan komponen antarmuka pemakai PVM untuk melakukan pengiriman pesan, pembuatan proses, koordinasi proses dan modifikasi virtual machine.

Komputasi Tunggal dan Komputasi Paralel


Perbedaan antara komputasi tunggal dengan komputasi paralel, bisa digambarkan pada gambar di bawah ini :

Komputasi Tunggal



Komputasi Paralel


Dari perbedaan kedua gambar di atas, kita dapat menyimpulkan bahwa kinerja komputasi parallel lebih efektif dan dapat menghemat waktu untuk pemrosesan data yang banyak daripadakomputasi tunggal.Dari penjelasan-penjelasan di atas, kita bisa mendapatkan jawaban mengapa dan kapan kita perlumenggunakan komputasi paralel. Jawabannya adalah karena komputasi paralel jauh lebih menghemat waktu dan sangat efektif ketika kita harus mengolah data dalam jumlah yang besar. 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.

Hubungan antara Komputasi Modern dengan Paralel Processing


Hubungan antara komputasi modern dan parallel processing sangat berkaitan, karena penggunaan komputer saat ini atau komputasi dianggap lebih cepat dibandingkan dengan penyelesaian masalah secara manual. Dengan begitu peningkatan kinerja atau proses komputasi semakin diterapkan, dan salah satu caranya adalah dengan meningkatkan kecepatan perangkat keras. Dimana komponen utama dalam perangkat keras komputer adalah processor. Sedangkan parallel processing adalah penggunaan beberapa processor (multiprocessor atau arsitektur komputer dengan banyak processor) agar kinerja computer semakin cepat.Kinerja komputasi dengan menggunakan paralel processing itu menggunakan dan memanfaatkan beberapa komputer atau CPU untuk menemukan suatu pemecahan masalah dari masalah yangada. Sehingga dapat diselesaikan dengan cepat daripada menggunakan satu komputer saja. Komputasi dengan paralel processing akan menggabungkan beberapa CPU, dan membagi-bagitugas untuk masing-masing CPU tersebut. Jadi, satu masalah terbagi-bagi penyelesaiannya.Tetapi ini untuk masalah yang besar saja, komputasi yang masalah kecil, lebih murahmenggunakan satu CPU saja.

Graphics Processing Unit (GPU)


Graphics Processing Unit (GPU) adalah sebuah device yang secara khusus ditugaskan hanya untuk mengolah tampilan graphics. Pada graphics card add-on, yang dimaksud frngan GPU adalah chip graphics yang biasanya dikenal dengan nama GeForce, Radeon, dan lainnya. Sedangkan pada solusi integrated graphics, GPU biasanya tidak berupa chip mandiri karena sudah diintegrasikan kedalam chipset motherboard. Istilah GPU sendiri dipopulerkan oleh chip graphics buatan NVIDIA, yaitu GeForce 256.

Kelebihan



#1. Menghemat waktu dan biaya

Penggunaan lebih banyak resource untuk satu task akan mempercepat waktu pengerjaan, dengan potensi penghematan biaya. Cluster dapat dibangun dengan komponen komoditas dan murah

#2. Mengerjakan problem yang lebih besar

Banyak problem tidak bisa dipecahkan dengan komputer tunggal, memori terbatas: Grand Challenge, web search engine yang memproses jutaan transaksi perdetik

#3. Menyediakan concurrency

Sumber daya pararel dapat melakukan banyak hal secara simultan. Contoh: access grid yang menyediakan jaringan kolaborasi global

Kelemahan

  1. Terdapat beberapa hambatan seperti yang telah dijelaskan diatas
  2. Tidak efektif dalam mengolah data dalam jumlah yang kecil
  3. Tidak baik untuk daya rendah dan perangkat mobile
  4. Kebutuhan daya yang lebih

SUMBER :

0 komentar :

Posting Komentar

Diberdayakan oleh Blogger.

Daftar Blog Saya



GUNADARMA UNIVERSITY















About Me

Popular Posts