Anda di halaman 1dari 23

Pokok Bahasan 1

Konsep Pemrosesan Paralel

Learning Outcomes
Pada akhir pertemuan ini diharapkan mahasiswa akan dapat: menyebutkan sebab pemrosesan paralel dilakukan menjelaskan istilah-istilah yang sering digunakan dalam pemrosesan paralel menjelaskan kompleksitas waktu, speed-up, cost, dan efisiensi pemrosesan paralel memperkirakan unjuk kerja (performance) dari sebuah pemrosesan paralel sederhana.

Mengapa menggunakan pemrosesan paralel?

Perkembangan Science dan Komputasi Numerik


Fenomena Alam

Observasi

Hypotesis

Percobaan untuk Pembuktian Percobaan fisik Teori


Komputasi numerik (simulasi)
3

Mengapa menggunakan pemrosesan paralel?

12 lapisan

Simulasi perambatan panas pada Belahan bumi Selatan

1024 daerah

4096 daerah

Total sel: 50 juta sel tiga dimensi. Untuk simulasi 10 menit memerlukan 30 milyar perhitungan. Padahal diperlukan simulasi perioda 1 tahun.

Mengapa menggunakan pemrosesan paralel?

Protein

Model interaksi protein dengan air: Simulasi 1 pico detik, dengan Cray X/MP memerlukan waktu 1jam.
Padahal diperlukan simulasi untuk 1 detik. Dengan computer dan algoritma yang sama diperlukan waktu 31 688 tahun untuk simulasi 1 detik.
5

Mengapa menggunakan pemrosesan paralel?

Application trends

Mengapa menggunakan pemrosesan paralel?

Kecepatan cahaya merupakan batas kecepatan gerak


C = 3 x 1010 cm/s
3 cm Input: Data input: N data 3 cm Input: Data input: Output: Data output:

Prosesor:
Kecepatan proses

10 data/s
Prosesor: Kecepatan proses

11

1011 data
Output: Data output:

harapan
dalam 1 detik

N data

1011 data/s

10

10

data

kenyataan

Terbatasnya kecepatan transmisi data akan membatasi jumlah data yang diproses meskipun telah diggunakan prosesor dengan kecepatan tinggi.
7

Mengapa menggunakan pemrosesan paralel?


Kecepatan proses tiap prosesor:

1011 data/s
data data data data data data data data data data
1 2 3 4

1010 data 1010 data 1010 data 1010 data 1010 data 1010 data 1010 data 1010 data 1010 data

total data dalam 1 detik: 1010 x 10 = 1011 data

Kita gunakan pemrosesan paralel. Lebih dari satu prosesor yang bekerja, sehingga batasan transmisi data tersebut bisa diatasi.
8

5
6 7 8 9 10

1010 data

Datanya banyak sekali, dan kita perlu kecepatan tinggi. Bagaimana ini?

Istilah
Parallel Processing (pemrosesan paralel): Pemrosesan informasi yang menitik beratkan pada manipulasi / pengolahan yang dilakukan pada waktu yang sama atas data dari sebuah proses atau lebih untuk menyelesaikan satu masalah. Parallel Computer: Multiple processor dalam sebuah computer yang mampu melaksanakan parallel processing. Super Computer: General purpose computer yang mampu menyelesaikan sebuah permasalahan dalam waktu yang sangat cepat dibanding dengan computer yang ada pada waktu tersebut.
9

Istilah
mulai komunikasi P1 P2 P3 P4 mulai

komputasi
komunikasi sinkronisasi komunikasi serial akhir

akhir
10

Istilah
Input: Masukan (data) yang akan diproses pada suatu sistem. Ouput: Produk yang dihasilkan oleh suatu sistem proses. Troughput: Produk yang dihasilkan persatuan waktu oleh suatu sistem proses. Scalable Parallel: Suatu sistem paralel prosesor dimana penambahan prosesor akan berakibat naiknya speedup sistem secara proporsional.
11

Big-Oh
Untuk persamaan

T( n) a k n k a k -1n k 1 . . . a 2 n 2 a 1n a 0
maka big-Oh dari T(n) adalah : O ( n k )
Dan untuk

T( n) 2 n
n

maka big-Oh dari T(n) adalah : O(2 n )

T(n) adalah fungsi yang diturunkan dari algoritma yang akan diukur Big-Oh nya, dan n adalah variabel dalam algoritma yang paling dominan dalam menentukan persamaan tersebut.
12

Kompleksitas waktu
Kompleksitas waktu:
Adalah Big-Ohdari persamaan dengan variabel yang dominan dalam algoritma, persamaan ini menyatakan jumlah langkah yang harus dilalui oleh algoritma tersebut pada kondisi terjelek.
begin for (i = 0 ; i < m ; i++) for(j = 0 ; j < n ; j++) { p[i, j] = q[i, j] + r[i, j]; } end
Variabel yang dominan: m dan n Kompleksitas waktu: O(mn)
13

n kali

m kali

Kompleksitas waktu
SUM (EREW PRAM) Initial condition: List of n >= 1 elements stored in A[0 . . . . . (n-1)] Final condition: Sum of elements stored in A[0] Gobal variables: n, A[0 . . . . . (n-1)], j begin log (n/2) spawn(P0, P1, P2, . . . P((n/2)-1) Konstan dan bukan loop 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 log (n) A[2i] A[2i] + A[2i + 2j] endif konstan endfor endfor end

T(n) = log(n/2) + konstan + konstan x log(n) Kompleksitas waktu = O(log n)


14

Kompleksitas waktu

Lower Bound: Adalah kompleksitas waktu tercepat secara teoritis yangbisa dicapai oleh suatu algoritma. Upper Bound: Adalah kompleksitas waktu tercepat yang dapat dicapai oleh pembuat algoritma.

15

Speed-up
8 prosesor sedang bekerja paralel, maka masing2 prosesor mempunyai kemungkinan: menjalani komputasi, komunikasi, dan nganggur (idle). Kecepatan penyelesaian

Jumlah pekerja

Secara intuisi, dapat dirasakan dalam sehari-hari bahwa jumlah pekerja (prosesor) makin banyak, tidak selalu menjamin bahwa waktu penyelesaian menjadi makin cepat. Cara pelaksanaan (algoritma) dan juga jenis pekerjaan sangat menentukan kondisi tersebut.
16

Speed-up

Speedup =

waktu penyelesaian skwensial waktu penyelesaian paralel

Speedup: Perbandingan antara waktu yang diperlukan oleh skwensial algoritma yang paling efisien dengan waktu untuk algoritma yang sama tapi dijalankan pada computer dengan pipeline atau dan data parallel 17

Speed-up

Speedup =

Kompleksitas waktu skwensial

Kompleksitas waktu paralel

Dengan dipahaminya konsep kompleksitas waktu, maka speedup dapat ditentukan juga dari perbandingan kompleksitas waktu algoritma terbaik untuk skwensial dengan kompleksitas waktu algoritma paralel untuk kasus yang sama.

18

Hukum Ahmdahl

Hukum Ahmdahl: 1 S 1-f f + p

S = speedup f = bagian proses yang harus dilakukan secara skwensial 0f1 p = jumlah prosesor 19

Hukum Ahmdahl

S
f +

1 1-f p

20

Cost
Yang dimaksud dengan cost disini adalah suatu nilai yang diperolehdari perkalian antara jumlah prosesor yang digunakan dengan kompleksitas waktu dari algoritma paralel yang dipakai.

Cost = jumlah prosesor x kompleksitas waktu paralel


Cost disebut optimal jika nilainya mempunyai order sama dengan lower bound kompleksitas waktu algoritma skwensialnya.

21

Efisiensi

Jika optimal cost sulit dicari karena lower bound kompleksitas waktu skwensial tidak diketahui, maka bisa digunakan nilai efisiensi untuk mengevaluasi cost.

Kompleksitas waktu skwensial yang diketahui


Efisiensi = cost

Jika efisiensi > 1, maka menggunakan single prosesor bisa lebih cepat (cost tidak optimal). Jika efisiensi = 1, cost masih diragukan. Cost optimal jika efisiensi <1.
22

RESUME
Telah dibahas:
Kompleksitas waktu, speed-up, cost, dan efisiensi dalam pemrosesan paralel. Kinerja (performance) sebuah pemrosesan paralel menggunakan hukum Ahmdahl dan pengertian cost. Mengapa harus menggunakan pemrosesan paralel Istilah-istilah yang sering digunakan pada pemrosesan paralel

23

Anda mungkin juga menyukai