Kamis, 21 Mei 2015

Pemrograman Paralel

Pemrograman paralel adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah / operasi secara bersamaan (komputasi paralel), baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Bila komputer yang digunakan secara bersamaan tersebut dilakukan oleh komputer terpisah yang terhubung dalam suatu jaringan komputer lebih sering istilah yang digunakan adalah sistem terdistribusi (distributed computing).

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. Analogi yang paling gampang adalah, bila anda dapat merebus air sambil memotong-motong bawang saat anda akan memasak, waktu yang anda butuhkan akan lebih sedikit dibandingkan bila anda mengerjakan hal tersebut secara berurutan (serial).

Performa dalam pemrograman paralel diukur dari berapa banyak peningkatan kecepatan (speed up) yang diperoleh dalam menggunakan tehnik paralel. Secara informal, bila anda memotong bawang sendirian membutuhkan waktu 1 jam dan dengan bantuan teman, berdua anda bisa melakukannya dalam 1/2 jam maka anda memperoleh peningkatan kecepatan sebanyak 2 kali.

Bahasa pemrograman yang digunakan pada pemrograman paralel ada 2, yaitu :
•    MPI (Message Passing Interface)
•    PVM (Parallel Virtual Machine)

MPI
Sebuah standard pemrograman yang memungkinkan pemrogram untuk membuat sebuah aplikasi yang dapat dijalankan secara paralel.

Kegunaan MPI :
1.    Menyediakan fungsi - fungsi untuk menukar pesan
2.    Menulis kode paralel secara portable
3.    Mendapatkan performa yang tinggi dalam pemrograman paralel
4.    Menghadapi permasalah yang melibatkan hubungan data irreguler atau dinamis
 
PVM
Perangkat lunak yang memungkinkan sekumpulan komputer yang heterogen terlihat seperti satu sistem komputer paralel dan dapat digunakan sebagai sebuah sumber daya komputasi yang koheren

Dibawah ini merupakan contoh Komputasi Paralel yang digunakan untuk Menjumlahkan 10 bilangan dengan menggunakan 5 buah Prosessor yang bekerja secara Paralel untuk mempercepat proses perhitungan bilangan:

Diketahui n = 10

 

PSEUDOCODE

Initial condition : List of n ³ 1 elements stored in
A[0 … (n - 1)]
Final condition : Sum of elements stored in A[0]
Global variables : n, A[0 … (n -1)], j
begin
         spawn (P0, P1, P2, … , Pë n/2 û - 1)
         for all Pi where 0 £ i £ ën/2û –1 do
                for j ¬ 0 to élog nù - 1 do
                   if i modulo 2j = 0 and 2i + 2j < n then
                        A[2i] ¬ A[2i] + A[2i + 2j]
                  endif
                endfor
        endfor

end

Dengan menggunakan konsep Komputasi Paralel Penjumlahan 10 bilangan akan dilalukan seperti dibawah ini:

 

Kelompok :
Dennis Shandy Sanger     -   51411850
Febrian Ruby Theo           -  52411777
Hendri Panjaitan                - 58411421
Hubertus Dewa Angga    -    53411405
Lajuardi Eka Putra              - 58411698
Reza Pahlevi                       - 56411055
Rio Olivia Sukiandi            - 56411250

Referensi :
http://cerita-punyaryan.blogspot.com/2012/01/contoh-pemrograman-paralel-dengan-4.html

Tidak ada komentar:

Posting Komentar