download

Matakuliah
Tahun
Versi
: H0352/Pemrosesan Paralel
: 2005
: versi/01
Pokok Bahasan 4
Topologi Paralel Prosesor
1
Learning Outcomes
Pada akhir pertemuan ini diharapkan mahasiswa
akan dapat:
• mengembangkan dasar-dasar dan definisi teori
graph
• menjelaskan macam-macam topologi jaringan
node paralel prosesor
• menerangkan langkah pemetaan data ke node
prosesor.
2
Definisi Graph
Sebuah graph adalah himpunan titik (vertex) diberi
simbol V dan himpunan garis (edge) diberi simbol
E yang menghubungkan semua atau sebagian dari
titik-titk dalam V tersebut. Untuk itu graph G ditulis
dengan G = (V, E).
Dalam teori graph koordinat titik dan ukuran garis
tidak penting, yang penting adalah keterkaitan
mereka.
3
Definisi Graph
9
7
3
6
12
5
7
Gaph berarah,
tak berbobot,
tersambung
4
Gaph tak berarah,
tak berbobot,
tersambung
Gaph tak berarah,
Berbobot, tersambung
Gaph berarah,
tak berbobot,
tak tersambung
4
Menyimpan Graph di Komputer
V4
e
1. Menggunakan matrix
V3
f
d
b
c
V1
V2
a
V1
V2
V3
V4
V1
0
1
1
1
1
V2
1
0
1
1
1
0
V3
1
1
0
1
1
1
V4
1
1
1
0
a
b
c
d
e
f
V1
1
0
1
1
0
0
V2
1
1
0
0
0
V3
0
1
1
0
V4
0
0
0
1
Matrix incidence
Matrix adjacency
5
Menyimpan Graph di Komputer
V4
2. Menggunakan link-list
e
V3
f
d
b
c
V1
V2
a
1
2
3
3
2
1
4
2
4
2
4
1
1
4
2
3
6
Properti Graph
Derajat suatu titik adalah jumlah garis
yang berhubungan dengan titik tersebut.
Titik A berderajat 4 dan B berderajat 2.
Q
P
A
B
Graph planar
Graph nonplanar
Root adalah titik yang dianggap awal sumber dari
graph berasal. Titik P dan Q adalah root.
7
Properti Graph
Diameter dari Graph
Adalah jarak terjauh dua
titik dalam graph.
Pada graph disebelah,
diameternya adalah 3,
yaitu jarak antara titik
A dan G (ada 3 penggal garis)
H
G
F
E
D
C
A
B
Jarak dua titik,
adalah jumlah edge terpendek yang menghubungkan
dua titik tersebut. Jarak titk A dan F adalah 2.
8
Properti Graph
Bisection width dari Graph
Adalah minimum jumlah garis yang harus di hapus
agar graph terbagi menjadi dua bagian yang seimbang.
H
G
F
E
D
C
A
B
Dalam contoh graph ini,
bisection width nya adalah 4, yaitu dengan menghapus penggal garis
A – D, B – C, F – G, E - H (ada 4 penggal garis).
9
Properti Graph
A
B
bukan tree
tree
Isomorfis
Tinggi sebuah tree adalah jarak terpanjang
dari graph menuju titik root nya. Tree diatas
mempunyai tinggi 4.
10
Properti Graph
Spanning tree
Garis yang menjadi bagian dalam
spanning tree disebut branch, dan
garis yang tidak menjadi bagiannya
disebut chord.
Sebuah grah G= (V, E)
n adalah jumlah titik
e adalah jumlah garis.
Spanning tree adalah tree
didalam graph yang mencakup
semua titik didalam graph tersebut.
Graph merah adalah contoh dua
alternatip spanning tree dari graph
warnahitam.
Berlaku persamaan:
Jumlah branch = n - 1
Jumlah chord = e – n + 1
11
Properti Graph
Binomial tree
Binomial tree dengan tinggi 0 bebentuk titik tunggal. Binomial tree
dengan tinggi h dibentuk dari penggabungan 2 binomial tree dengan
tinggi h-1 dengan menghubungkan root dari kedua tree teresbut dimana
salah satu root akan menjadi root dari binomial gabungan.
h=0
h=1
h=2
h=3
h=4
12
Searching dalam Graph
Depth First Search (DFS)
Breadth First Search (BFS)
1
3
1
4
2
7
2
4
6
5
6
13
Contoh Aplikasi Graph
Sebuah persawahan seperti pada graph berikut, dan sawah tersebut
tergenang banjir. Berapa batas sawah harus di jebol agar air menjadi
surut dalam persawahan tersebut.
Jawab:
Agar air dalam persawahan surut, maka graph
chord dari spanning tree sawah harus di jebol.
Jadi batas yang harus dijebol sebanyak chord.
Chord = e – n + 1
= 15 – 10 + 1
= 6
6 batas sawa yang perlu dijebol.
n = 10
e = 15
Merah: spanning tree
Hijau: batas yang harus
dijebol.
14
Contoh Aplikasi Graph
Seleksi permukaan
polyhedra
Contoh Aplikasi:
Menseleksi permukaan
suatu bangun polyhedra.
Ini adalah algoritma untuk menentukan
apakah sebuah siklus dalam sebuah graph mewakili
permukaan (face) dari bangun polyhedra.
Algoritma ini dilakukan dengan cara menghapus siklus tsb, dan mendeteksi
graph yang tersisa. Jika graph yang tersisa adalah graph tersambung,
maka siklus adalah permukaan polyhedra, jika tidak tersambung siklus
15
bukan permukaan polyhedra.
Topologi Jaringan Prosesor
Prosesor disusun menurut suatu aturan topologi
standard yaitu: mesh, binary tree, hypertree,
pyramid, butterfly, hypercube, shuffle-exchange, dll.
Empat batasan (kriteria) untuk menentukan baik buruknya
topologi yang dipakai dalam paralel prosesor:
•
•
•
•
Diameter. Makin kecil diameter makin baik.
Bisection width. Makin besar bisection width makin baik.
Derajat. Derajat yang tetap adalah terbaik.
Panjang maximum garis. Panjang garis tetap adalh terbaik.
16
Topologi Jaringan Prosesor
Mesh dua dimensi
a
b
c
Jumlah prosesor
Diameter
Bisection width
k2
2(k – 1)
k
Derajat
tetap
kecuali a
Panjang garis
tetap
17
Topologi Jaringan Prosesor
Binary tree
Jumlah prosesor
2k - 1
Diameter
2(k – 1)
Bisection width
Derajat
1
tetap
Panjang garis
tetap
18
Topologi Jaringan Prosesor
Hypertree 4-ary
tampak depan
tampak samping
Tampak seluruhnya
Jumlah prosesor
Diameter
2k (2k+1 – 1)
2k
Bisection width
2k+1
Derajat
tetap
Panjang garis
tidak tetap
19
Topologi Jaringan Prosesor
Pyramid
Jumlah prosesor
Diameter
Bisection width
Derajat
(4k2 – 1)/3
2 log k
2k
tetap
Panjang garis
tidak tetap
20
Topologi Jaringan Prosesor
Hypercube
4
12
0
8
5
13
1
9
6
14
2
10
7
15
3
11
Jumlah prosesor
Diameter
Bisection width
2k
k
2k - 1
Derajat
tetap
Panjang garis
tidak
tetap
21
Topologi Jaringan Prosesor
Butterfly
Jumlah prosesor
Diameter
(k + 1)2k
2k
Bisection width
2k
Derajat
tetap
Panjang garis
tidak
tetap
22
Topologi Jaringan Prosesor
Shuffle-exchange
1
0
2
3
4
5
7
6
Koneksi: i - 2 modulo (n – 1)
n = jumlah prosesor
i = nomor prosesor
Jumlah prosesor
2k
Diameter
2k - 1
Bisection width
≥ 2k - 1 / k
Derajat
tetap
Panjang garis
tidak
tetap
23
Dilation
Ini adalah pemetaan
dua graph.
Dilation dari pemetaan
perlu diketahui, untuk
menentukan seberapa
baik hasil pemetaan tsb.
Dilation-1 adalah hasil
pemetaan yang terbaik.
pemetaan
graph data / program
graph prosesor (topologi prosesor)
24
Dilation
Pada suatu pemetaan dari graph G ke G’ maka berlaku
sebagai berikut.
Dilation: Jarak garis (jumlah edge) pada
G  G’ graph G yang tidak terpetakan
pada G’ dan diukur oleh G.
Jika semua garis terpetakan
disebut dilation-1
G
G’
Dilation-1
25
Dilation
A
A
C
B
E
C
B
D
1
2
3
D
E
G
Dilation-3
G’
Dilation-1 artinya komunikasi dalam G
akan dilakukan sama jumlah jalurnya oleh G’.
Dilation tidak 1 artinya komunikasi dalam G
akan dilakukan oleh G’ melalui jalur lebih
banyak.
26
Dilation
Ring into 2-D Mesh
Jika jumlah baris dan kolom dari mesh genap atau salah satu genap,
maka pemetaannya mempunyai dilation-1.
Dilation-1
27
Dilation
2-D Mesh into 2-D Mesh
Selalu
menghasilkan
dilation-1
28
Dilation
Complete Binary Tree into 2-D Mesh
dilation-1
Complete Binary Tree dengan
tinggi lebih besar dari 4 tidak
bisa dipetakan pada 2-D Mesh
dengan dilation-1 (dilation nya
selalu lebih besar dari 1).
tinggi = 3
Complete Binary Tree dengan
tinggi n dimana n > 4 jika
dipetakan pada 2-D Mesh akan
Mempunyai dilation int(n/2).
29
Dilation
Binomial Tree into hypercube
Pemetaan Binomial Tree pada 2-D Mesh serupa dengan
pemetaan Complete Binary Tree pada 2D Mesh. Kedua
pernyatan untuk Binary Tree terdahulu juga berlaku untuk
Binomial tree.
Pemetaan Binomial Tree tinggi n dapat dipetakan pada
hypercube dimensi n sedemikian rupa hingga memiliki
dilation-1.
Dilation-1
Bnomial tree tinggi 4
Hypercube dimensi 4
30
RESUME
Telah dibahas:
 Dasar-dasar teori Graph: definisi, properti,
searching, dan contoh aplikasi teori graph dalam
kehidupan sehari-hari.
 Topologi jaringan prosesor
•
•
•
•
•
•
•
Mesh dua dimensi
Binary tree
Hyper tree 4-ary
Pyramid
Hypercube
Butterfly
Shuffle-exchange
 Dijelaskan pengertian pemetaan dua graph
dan dilation serta contoh contohnya.
31