JETri, Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
ANALISIS UNJUK KERJA KOMPUTASI DISTRIBUTED SHARED MEMORY PADA SISTEM CLUSTER KOMPUTER PERSONAL Ferrianto Gozali & Dimas Lagusto* Dosen Jurusan Teknik Elektro-FTI, Universitas Trisakti Abstract Parallel processing systems that support the shared memory abstraction are becoming widely accepted in many areas of computing. The shared memory or single system image of address space abstraction provides several advantages over the message passing abstraction. Distributed shared memory or DSM is a memory configuration system that can be used to provide a coherent shared address space for a workstation clusters or loosely coupled systems which have no support for shared memory in hardware.The purpose of this paper is to describe issues related to the implementation of DSM in Personal Computer Cluster system. The system is developed under Linux operating system and cluster middleware Parallel Virtual Machine [PVM]. In this research, an object-based Distributed Shared Memory (DSM) system called Adsmith is used on the top of PVM. An application program for A Traveling Salesman Problem (TSP) is tested using different scenarios to get average execution time and speedup of the computation. Each scenario represents a different number of node cluster involved for computation. The results show that programs developed with Adsmith can achieve better performance comparable to that developed with PVM in high computation environment. Keywords: Distributed Shared Memory, komputer cluster, Parallel Virtual Machine, Adsmith.
1. Pendahuluan Kebutuhan sistem komputer dengan kemampuan komputasi tinggi semakin meningkat sejalan dengan peningkatan penggunaan aplikasi komputer untuk memecahkan berbagai masalah dalam kehidupan manusia secara tepat dan cepat. Aplikasi grafis dan multimedia yang banyak digunakan dalam pembuatan film animasi harus mampu mengolah ribuan gambar dengan cepat, dan aplikasi basis data membutuhkan komputasi tinggi agar dapat berjalan secara real time, untuk melayani tuntutan bisnis global saat ini, merupakan contoh kebutuhan tersebut. Penggunaan komputer berskala besar atau mainframe menuntut biaya investasi dan pemeliharaan yang tinggi sementara kemampuan komputer personal atau PC serta teknologi jaringan komputer berkembang
* Alumni Jurusan Teknik Elektro-FTI, Universitas Trisakti
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
dengan pesat. Kondisi ini mendorong perkembangan teknik pemrosesan terdistribusi atau distributed processing dengan menggunakan komputer cluster. Komputer cluster merupakan suatu sistem komputer yang memanfaatkan banyak komputer, dalam hal ini PC, yang terhubung dalam suatu jaringan komputer dan bekerja bersama secara paralel untuk menyelesaikan proses komputasi yang diberikan. Pemrosesan paralel merupakan suatu konsep untuk mempercepat proses eksekusi program dengan cara membagi program tersebut menjadi beberapa bagian sehingga tiap bagian dapat dieksekusi secara bersamaan pada banyak prosesor atau banyak sistem komputer yang berbeda namun terhubung sebagai suatu sistem (Anand, 20-12-2001: 12.01 WIB). Sistem cluster ini kemudian berkembang dengan cepat dan banyak dipakai oleh berbagai kalangan, hal ini disebabkan oleh beberapa keunggulan yang dimiliki oleh cluster antara lain adalah biaya yang lebih rendah namun dengan kemampuan komputasi yang tidak kalah dengan komputer mainframe (Changhun, 2002: 151-742). Dalam perkembangannya, untuk komputasi paralel pada komputer cluster ini muncul berbagai alternatif dan permasalahan dalam komunikasi antar proses, pemrograman paralel, dan juga masalah manajemen memori. Permasalahan pada manajemen memori muncul karena pada komputer cluster masing-masing PC memiliki memori tersendiri yang dalam manajemennya membutuhkan teknik manajemen yang berbeda. Salah satu teknik manajemen memori pada komputer cluster adalah adalah Distributed Shared Memory atau disingkat DSM. Teknik ini memungkinkan proses yang berada pada mesin yang berbeda di komputer cluster untuk saling berbagi penggunaan memori walaupun secara fisik mesin-mesin anggota cluster ini tidak memiliki memori bersama. DSM menyediakan pandangan abstrak tentang memori bersama pada sebuah sistem memori terdistribusi, atau dapat juga dikatakan DSM akan menyediakan sebuah memori maya yang global atau global virtual memory. Dalam penelitian ini, unjuk kerja DSM pada sistem komputer cluster diamati dengan memanfaatkan jaringan komputer lokal berbasiskan sistem operasi Linux Red Hat 7.3 dengan menggunakan Parallel Virtual Machine atau PVM 3.4.3 sebagai cluster midleware dan Adsmith 1.8.0 sebagai perangkat lunak DSM. Untuk mengukur waktu komputasi
26
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
dikembangkan aplikasi Traveling Salesman Problem atau TSP dengan menggunakan bahasa pemrograman C++, yang dijalankan dengan menggunakan beberapa skenario. Waktu komputasi rata-rata serta speedup yang diperoleh digunakan untuk menganalisis unjuk kerja komputasi DSM pada sistem komputer cluster tersebut.
2. Sistem Komputer Cluster Banyaknya sistem komputer yang dijumpai hingga saat ini seringkali membingungkan. Michael J. Flynn [1972] mengklasifikasikannya berdasarkan jumlah instruksi dan data yang secara simultan diproses oleh prosesor. Flynn Taxonomy seperti pada gambar 1 merupakan klasifikasi yang paling banyak digunakan khususnya dalam mengelompokkan arsitektur komputasi paralel (Stalings, 2003: 645-647). ORGANISASI PROSESOR
Single Instruction Single Data Stream (SISD)
UniProcessor System
Single Instruction Multiple Data Stream (SIMD)
Vector Processor
Multiple Instruction Single Data Stream (MISD)
Array Processor
Shared Memory (Tighfly Coupled)
Symetric Multi Processor (SMP)
Multiple Instruction Multiple Data Stream (SISD)
Distributed Memory (Loosely Coupled)
NonUniform Memory Access (NUMA)
Gambar.1. Taxonomi dari Flynn
27
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Sistem pemrosesan paralel yang menjadi dasar dari suatu sistem komputer cluster menurut taxonomi Flinn termasuk dalam kelompok Multiple Instruction Multiple Data atau MIMD. MIMD dapat dibedakan berdasarkan pada konfigurasi memori yang dimilikinya yaitu sistem dengan shared memory atau distributed memory. Sistem dengan shared memory akan memiliki sebuah memori fisik yang dalam penggunaannya akan saling berbagi dengan elemen proses lain pada komputer tersebut. Sistem ini akan melakukan komunikasi antar proses pada memori utama melalui metode pemrograman shared variable. Contoh dari sistem ini adalah symmetric multi processor. Sedangkan sistem dengan distributed memory akan memiliki memori yang secara fisik terdistribusi dan terpisah, serta melakukan komunikasi antar proses melalui sebuah jaringan interkoneksi dengan menggunakan metoda pemrograman message passing. Komputer cluster merupakan contoh dari sistem ini. Komputer cluster merupakan suatu sistem pemrosesan paralel atau pemrosesan terdistribusi yang terdiri dari sekumpulan stand-alone computer yang bekerja bersama-sama seperti layaknya suatu single integrated computing resource. Setiap node pada komputer cluster dapat berupa sistem komputer single processor atau suatu multiprocessor [PC, workstation atau SMP] yang memiliki sistem memori, fasilitas input/output, dan bekerja dengan sistem operasi yang dimilikinya. Cluster secara umum dapat diartikan sebagai dua atau lebih komputer atau node yang dihubungkan menjadi suatu sistem terintegrasi. Komputer node dapat diletakkan didalam suatu kabinet tertentu atau terpisah secara fisik dan dihubungkan dengan suatu jaringan komputer lokal atau LAN. Suatu LAN-based komputer cluster akan dipandang sebagai suatu sistem tunggal baik oleh pemakai maupun oleh applikasi komputer. Arsitektur komputer cluster secara umum dapat dilihat pada gambar 2. pada halaman berikut.
28
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Suatu komputer cluster memiliki berbagai komponen pendukung (Changhun, 2002: 151-742) yaitu: a. Dua atau lebih High Performance Computers seperti PC, Workstation, atau SMP. b. Sistem Operasi komputer (Layered atau Micro-kernel based) c. High Performance Networks/Switches (Misalnya Ethernet) d. Network Interface Cards (NICs) e. Fast Communication Protocols and Services f. Cluster Middleware (Single System Image atau SSI dan System Availability Infrastructure) g. Parallel Programming Environments and Tools (seperti compilers, PVM (Parallel Virtual Machine), and MPI (Message Passing Interface)) h. Program aplikasi.
Gambar 2. Arsitektur Komputer Cluster .
29
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Network interface hardware berperan sebagai communication processor dan bertanggung jawab untuk mengirimkan dan menerima paket data antara node cluster melalui network/switch. Node pada komputer cluster dapat bekerja secara kolektif sebagai suatu sistem komputer yang terintegrasi atau bekerja sebagai suatu komputer individual. Cluster middleware bertanggung jawab untuk menyediakan suatu single system image yang dapat dimanfaatkan oleh seluruh node komputer cluster secara bersama. Sedangkan programming environments tools menyediakan kebutuhan dan memberikan kemudahan pada user dalam mengembangkan program aplikasi sekuensial atau paralel yang dibutuhkannya seperti message passing libraries, debuggers (Changhun, 2002: 151-742).
3. Distributed Shared Memory Pada Sistem Komputer Cluster Kedua sistem MIMD seperti disebutkan diatas, memiliki kelebihannya masing-masing dimana sistem shared memory memiliki kelebihan pada komunikasi antar proses dengan menggunakan shared variable yang relatif lebih mudah dibandingkan dengan message passing yang digunakan pada sistem distributed memory. Sedangkan sistem distributed memory memiliki keunggulan dari sisi skalabilitas dan keandalan sistem. Usaha untuk menggabungkan keunggulan dari kedua sistem ini memunculkan teknologi distributed shared memory pada sistem komputer cluster. Sebuah sistem distributed shared memory akan memberikan pandangan logika shared memory pada sistem komputer dengan distributed memory seperti gambar 3. pada halaman berikut ini. Pada sistem cluster, hal ini memungkinkan proses pada node yang berbeda untuk membagi penggunaan memori, walaupun secara fisik tidak memiliki shared memory. Distributed Shared Memory dirancang untuk memberikan fasilitas shared memory pada sistem komputer dengan memori yang secara fisik
30
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
terdistribusi. Hal ini memberikan sistem dengan memori yang terdistribusi kemampuan pemrograman dengan shared memory pada sistem distributed memory.
Prosesor 1
Prosesor 2
Prosesor 3
Prosesor n
Memori 1
Memori 2
Memori 3
Memori n
Jaringan Interkoneksi SHARED MEMORY
Gambar 3. Pandangan logika shared memory pada sistem dengan distributed memory Seperti telah diketahui pemrograman pada sistem distributed memory menggunakan metoda message passing untuk komunikasi antar proses. Metoda ini pada umumnya lebih rumit dibandingkan dengan metode shared memory, karena message passing mengharuskan pengembang aplikasi untuk mengatur aliran data antar proses secara eksplisit. Komunikasi dan sinkronisasi antar proses dilakukan dengan pengiriman dan penerimaan pesan secara jelas dan teratur. Pada sistem shared memory komunikasi antar proses dilakukan pada shared memory melalui shared variable yang dapat diakses oleh semua proses yang ada, pemrograman yang dilakukan relatif tidak jauh berbeda dengan pemrograman seperti pada uniprosesor. Pada dasarnya konfigurasi sistem distributed shared memory adalah penggunaan bagian dari memori lokal dari node penyusun cluster untuk dijadikan shared memory yang dalam penggunaanya dapat berbagi dan dapat diakses oleh proses dari node yang lain.
31
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Bagian memori lokal yang tidak digunakan sebagai shared memory akan menjadi memori lokal bagi tiap node yang digunakan untuk operasi lokal node itu sendiri. Gambaran lebih jelas dapat dilihat dari gambar 4 berikut ini.
Prosesor 1
Prosesor 2
Prosesor 3
Prosesor n
M 1 Lokal
M 2 Lokal
M 3 Lokal
M n Lokal
M 1 Shared
M 2 Shared
M 3 Shared
M n Shared
Jaringan Interkoneksi Gambar 4. Konfigurasi Pembagian Memori lokal pada sistem distributed shared memory Prinsip kerja sistem distributed shared memory sendiri adalah dengan melakukan migrasi dan replikasi data antar bagian shared memory dari tiap node. Pada gambar 5. terlihat, apabila suatu proses pada prosesor 1 membutuhkan data yang ternyata tidak berada pada memori lokalnya maka terjadilah kesalahan baca. Sistem distributed shared memory kemudian akan mencari letak dari data yang dibutuhkan oleh proses pada prosesor 1 tersebut. Apabila data yang dicari telah ditemukan – dalam gambar pada memori 2 – maka sistem distributed shared memory akan mereplikasi data tersebut dan memigrasikannya ke memori lokal prosesor 1.
32
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Gambar 5. Prinsip Kerja Sistem distributed shared memory
4. Adsmith Sebagai Implementasi Sistem DSM Adsmith merupakan implementasi distributed shared memory berupa library pemrograman pada bahasa C++ (Changhun, 2002: 151-742). Adsmith diimplementasikan untuk berjalan diatas sistem parallel virtual machine seperti terlihat pada gambar 6. seperti pada halaman berikut ini. PROGRAM APLIKASI PARALEL ADSMITH PVM SISTEM OPERASI Gambar 6. Pandangan pengguna terhadap sistem Adsmith
33
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Adsmith akan menyediakan suatu platform pemrosesan paralel dengan implementasi DSM berdasarkan objek dengan cara menyediakan fungsi-fungsi pemrograman shared memory bagi aplikasi paralel yang berjalan pada sistem komputer cluster yang menggunakan PVM sebagai middleware. Adsmith akan memanfaatkan PVM sebagai subsistem komunikasi, hal ini dilakukan karena sistem PVM banyak digunakan sebagai lapisan middleware dari sistem komputer cluster yang bersifat heterogen. Hal inilah yang memberikan kemampuan Adsmith untuk berjalan pada konfigurasi perangkat keras dan sistem operasi yang heterogen pada sistem komputer cluster (Liang, 20-12-2005: 12.11 WIB). Kedua library dari adsmith dan PVM dapat diakses pada saat yang bersamaan oleh program aplikasi, hal ini membuat sistem komputer cluster yang menerapkan DSM dengan Adsmith mampu mendukung program aplikasi paralel yang menggunakan fungsi pemrograman message passing dan shared memory. Akibatnya bagi program aplikasi yang dalam pengaksesan data sudah diketahui pola passing datanya dapat menggunakan message passing dari PVM, sedangkan untuk data yang pola passing datanya kurang jelas dapat digunakan fungsi-fungsi shared memory dari DSM. Secara umum, arsitektur adsmith dapat digambarkan seperti pada gambar 7 pada halaman berikut ini (Liang, 20-12-2005: 12.11 WIB), (Liang, 1997: 16-32). Adsmith membagi memori lokal dari masing-masing node cluster menjadi dua tingkatan yaitu: 1. Lapisan Logical Shared Memory Pada lapisan inilah terletak bagian dari memori lokal yang menjadi shared memory dimana penggunaannya dapat dilakukan secara bersamasama dengan proses lain yang terletak pada prosesor lain. Pada lapisan ini terletak daemon dari Adsmith yang berfungsi untuk mengatur shared object yang terletak pada lapisan ini. Setiap daemon akan berkomunikasi dengan daemon yang lain menggunakan PVM, untuk menyediakan layanan shared memory bagi program aplikasi. Setiap daemon lokal juga akan memiliki direktori pemetaan data yang akan berisi informasi mengenai status dari shared object pada lapisan Logical Shared Memory ini.
34
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
P1
Pn
P1
P2
Pn
P1
Pn
C1
Cn
C1
C2
C3
C1
Cn
DSM Daemon
DSM Daemon
DSM Daemon
Local Memory
Local Memory
Local Memory
PVM
HOST
PVM
HOST
Process Cache
PVM
HOST
LOGICAL SHARED MEMORY
NETWORK Gambar 7. Arsitektur Adsmith (Liang, 20-12-2005: 12.11 WIB), (Liang, 1997: 16-32). 2. Lapisan Process Cache Lapisan ini akan berisi data yang akan diproses oleh program aplikasi. Lapisan ini memiliki kemiripan dengan cache memory pada hirarki memori komputer. Data yang dibutuhkan sebuah proses akan dituliskan pada lapisan ini sebelum proses dilakukan, dan setelah proses data selesai maka data akan tetap disimpan pada lapisan ini untuk mengurangi waktu latensi seandainya data ini diperlukan kembali oleh proses. Data tersebut juga dapat dituliskan ke lapisan Logical Shared Memory bila diperlukan. Dengan mengatur sistem memori seperti tersebut diatas maka Adsmith mampu menerapkan sistem DSM diatas platform PVM pada suatu cluster komputer personal (Liang, 1997: 16-32).
35
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
5. Implementasi Dan Pengukuran Kinerja Dsm Adsmith digunakan untuk mengetahui kinerja sistem DSM pada komputer cluster. Pengujian akan dilakukan pada dua sistem yaitu sistem Adsmith dan sistem PVM. Pengujian sistem PVM dilakukan untuk mengetahui kinerja cluster yang tidak mengimplementasikan Adsmith. Program aplikasi paralel berupa program untuk memecahkan masalah Traveling Salesman Problem dikembangkan pada kedua platform diatas (Liang, 20-12-2005: 12.11 WIB), (Liang, 1997: 16-32). Pengujian dilakukan pada cluster yang terdiri dari 1, 2, 3 dan 4 node yang memiliki spesifikasi sebagai berikut. Tabel.1. Spesifikasi node cluster Jumlah Node 4 Buah
1 Buah
Spesifikasi Tiap Node o o o o o
Pentium 3- 866 Mhz 256 MB SDRAM 20 GB Hard Disk Drive 3-com 100 Mbps NIC Ethernet Card Nexus 8 port 100Mbps switch
Untuk meningkatkan beban kerja dari cluster parameter input program aplikasi akan ditingkatkan berdasarkan skenario pengujian dengan mengubah parameter input berupa jumlah kota pada program TSP serta jumlah proses slave pada cluster seperti pada table 2 dibawah. Tabel 2. Skenario Pengujian Skenario Pengujian
Parameter Input Jumlah Kota
Parameter input proses slave
Skenario 1
16
4
Skenario 2
16
8
Skenario 3
24
4
Skenario 4
24
8
Untuk masing-masing scenario pengujian, diukur waktu eksekusi yang dibutuhkan. Waktu rata-rata yang diperoleh untuk masing-masing scenario dibandingkan dengan waktu rata-rata eksekusi dengan menggunakan satu buah node untuk mendapatkan besarnya speedup. Hasil pengujian baik untuk PVM dan Adsmith terlihat pada tabel 3 dan 4 berikut.
36
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Tabel 3. Hasil pengujian sistem PVM Skenario Pengujian Cluster
Waktu Eksekusi(msec)
Ratarata
Speedup
1
1
23
24
24
23.67
1.00
2
1,2
15
18
16
16.33
1.45
3
1,2,3
14
12
12
12.67
1.87
4
1,2,3,4
9
10
10
9.67
2.45
1
1
44
43
43
43.33
1.00
2
1,2
26
26
28
26.67
1.63
3
1,2,3
20
22
21
21.00
2.06
4
1,2,3,4
16
16
16
16.00
2.71
1
1
31
30
30
30.33
1.00
2
1,2
26
24
24
24.67
1.23
3
1,2,3
21
22
21
21.33
1.42
4
1,2,3,4
15
15
15
15.00
2.02
1
1
254
254
255
254.33
1.00
2
1,2
216
211
207
211.33
1.20
3
1,2,3
202
202
202
202.00
1.26
4
1,2,3,4
197
196
196
196.33
1.30
1
2
3
4
37
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Tabel 4. Hasil pengujian sistem Adsmith Skenario Pengujian Cluster
Waktu Eksekusi(msec)
Ratarata
Speedup
1
1
50.6
50.3
50.2
50.37
1.00
2
1,2
46.7
47.4
46.6
46.90
1.07
3
1,2,3
44
44.8
45.8
44.87
1.12
4
1,2,3,4
39.5
40.1
41
40.20
1.25
1
1
97
97
96.5
96.83
1.00
2
1,2
88
87
88.3
87.77
1.10
3
1,2,3
75.7
73
76
74.90
1.29
4
1,2,3,4
69
70
70
69.67
1.39
1
1
74
73
74
73.67
1.00
2
1,2
69
69
70
69.33
1.06
3
1,2,3
66
65
65
65.33
1.13
4
1,2,3,4
53
55
55
54.33
1.36
1
1
141
139
144
141.33
1.00
2
1,2
119
118
122
119.67
1.18
3
1,2,3
91
92
91
91.33
1.55
4
1,2,3,4
87
87
87
87.00
1.62
1
2
3
4
38
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Dari hasil pengukuran dan perhitungan untuk berbagai skenario baik untuk Adsmith maupun untuk PVM seperti terlihat pada tabel 3 dan tabel 4 diatas, dapat kita gambarkan grafik perbandingan antara kedua sistem tersebut diatas seperti dijumpai pada gambar 8, 9, 10 dan 11 berikut.
Komparasi Waktu Eksekusi adsmith dengan PVM Waktu Eksekusi (ms)
60.00 50.37
50.00
46.90
44.87
40.20
40.00 30.00
23.67
20.00
16.33
12.67
9.67
10.00 0.00 1
2
3
4
PVM
Nomor Pengujian
Adsmith
Komparasi speedup adsmith dengan PVM 3.00 2.45
2.50 1.87
speedup
2.00 1.45 1.50
1.25 1.00 1.00
1.00
1.12
1.07
0.50 0.00 1
2
3
4 PVM
Nomor Pengujian
adsmith
Gambar.8. Grafik komparasi waktu eksekusi dan speedup untuk skenario 1
39
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Komparasi Waktu Eksekusi adsmith dengan PVM Waktu Eksekusi (ms)
120.00 96.83
100.00
87.77 80.00
74.90 69.67
60.00 43.33
40.00
26.67
21.00
20.00
16.00
0.00 1
2
3
4 PVM
Nomor Pengujian
adsmith
Komparasi speedup adsmith dengan PVM 3.00 2.71
speedup
2.50
2.06
2.00
1.63 1.29
1.50 1.00 1.00
1.39
1.10
1.00
0.50 0.00 1
2
3 Nomor pengujian
4 PVM adsmith
Gambar.9. Grafik komparasi waktu eksekusi dan speedup untuk skenario 2
40
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Komparasi Waktu Eksekusi adsmith dengan PVM 80.00
73.67
69.33
Waktu Eksekusi (ms)
70.00
65.33
60.00 54.33
50.00 40.00 30.33
30.00
24.67
21.33
20.00
15.00
10.00 0.00 1
2
3
4 PVM
Nomor Pengujian
Adsmith
Komparasi speedup adsmith dengan PVM 2.50 2.02
speedup
2.00 1.50
1.42
1.23 1.00
1.00
1.13
1.06
1.00
1.36
0.50 0.00 1
2
3
4 PVM
Nomor Pengujian
adsmith
Gambar.10. Grafik komparasi waktu eksekusi dan speedup untuk skenario 3
41
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Komparasi Waktu Eksekusi adsmith dengan PVM
Waktu eksekusi (ms)
300.00 254.33
250.00
211.33
200.00 150.00
202.00
196.33
141.33 119.67
100.00
87.00
91.33 50.00 0.00 1
2
3
4 PVM
Nomor pengujian
adsmith
Komparasi speedup PVM dengan adsmith 1.80
speedup
1.60 1.40 1.20
1.20 1.00
1.00
1.55
1.62
1.26
1.30
1.18
1.00
0.80 0.60 0.40 0.20 0.00 1
2
3
Nomor Pengujian
4
PVM adsmith
Gambar.11. Grafik komparasi waktu eksekusi dan speedup untuk skenario 4
42
Ferrianto Gozali & Dimas Lagusto, Analisis Unjuk Kerja Komputasi Distributed Shared Memory
Berdasarkan hasil tabel 3 dan 4 serta gambar grafik komparasi waktu ekseskusi dan speedup diatas dapat disimpulan sebagai berikut. 1. Kinerja komputer cluster yang menggunakan sistem PVM cenderung lebih baik dibandingkan dengan sistem Adsmith pada beban kerja yang relatif lebih rendah. Hal ini dilihat pada gambar 8, 9 dan 10 diatas dimana waktu eksekusi yang lebih rendah dan tingkat speedup yang lebih tinggi pada sistem PVM. Pada skenario pertama, kedua dan ketiga tersebut tercatat waktu eksekusi sistem PVM lebih cepat rata-rata 30 milli detik, 55.54 milli detik, 42,8 milli detik daripada sistem adsmith, dengan tingkat speedup maksimum – dengan 4 node – sistem PVM rata-rata 2,4 kali dibandingkan dengan sistem adsmith yang rata-rata hanya 1.33 kali ( lebih tinggi rata-rata 44.6% ). 2. Kinerja komputer cluster yang menggunakan sistem Adsmith cenderung lebih baik dibandingkan dengan sistem PVM pada beban kerja yang relatif lebih tinggi. Hal ini dapat dilihat pada gambar 11 dimana parameter input yang diberikan kepada program lebih besar dari skenario yang lain - yang menunjukkan waktu eksekusi yang lebih rendah dan tingkat speedup yang lebih tinggi pada sistem Adsmith. Pada skenario 4 ini sistem Adsmith tercatat rata-rata lebih cepat 106,2 millidetik dibandingkan sistem PVM. Speedup sistem Adsmith terlihat cenderung lebih tinggi pada pengujian ketiga dan keempat skenario keempat dengan perbedaan speedup mencapai 18.7 % untuk pengujian ketiga dan 19.7 % untuk pengujian keempat masing-masing untuk keunggulan sistem Adsmith.
5. KESIMPULAN Berdasarkan hasil pengujian yang dilakukan dapat ditarik kesimpulan bahwa komputer cluster yang menggunakan sistem PVM memiliki keunggulan pada beban kerja yang cenderung lebih ringan. Hal ini dapat kita lihat dari hasil pengujian pada skenario pertama, kedua dan ketiga, yang menunjukkan waktu eksekusi dan speedup sistem PVM cenderung lebih baik dibandingkan sistem adsmith. Dari waktu eksekusi yang tercatat, terlihat sistem PVM lebih cepat 30 milli detik, 55.54 milli detik, 42,8 milli detik daripada sistem adsmith pada skenario pertama, kedua dan ketiga. Tingkat speedup maksimum – dengan 4 node – yang dihasilkan sistem PVM mencapai tingkat rata-rata 2,4 kali dibandingkan dengan sistem adsmith yang hanya mencapai rata-rata 1.33 kali ( lebih tinggi rata-rata 44.6 %).
43
JETri, Tahun Volume 4, Nomor 2, Februari 2005, Halaman 25-44, ISSN 1412-0372
Secara umum, dapat kita simpulkan hal-hal sebagai berikut: 1. Komputer cluster yang menggunakan sistem adsmith memiliki keunggulan pada beban kerja yang cenderung lebih lebih berat. Hal ini ditunjukkan pada hasil skenario keempat pengujian yang menunjukkan waktu eksekusi dan speedup yang cenderung lebih baik dibandingkan sistem PVM. Waktu eksekusi yang tercatat menunjukkan sistem adsmith lebih cepat rata-rata 106.2 milli detik dengan speedup maksimum lebih tinggi 19.7% daripada sistem PVM. 2. Keunggulan kinerja sistem adsmith sebagai implementasi distributed shared memory cenderung disebabkan oleh kinerja sistem PVM yang menurun akibat beban komunikasi internal pada sistem PVM itu sendiri. 3. Secara arsitektur sistem distributed shared memory akan memiliki keunggulan dalam hal pemrograman shared memory yang relatif lebih sederhana dibandingkan dengan metoda pemrograman dengan message passing yang digunakan oleh sistem PVM.
Daftar Pustaka 1. Anand, Sudeepth C., Design Issues in Distributed Shared Memory. (Online), (http://www.iit.edu/~anansud1, diakses 20 Desember 2005 pukul 12.01.WIB. 2. Lee, Changhun. 2002. Distributed Shared Memory. Disertasi. Seoul Korea: Control Information Systems Lab., School of Electrical Engr. and Computer Science, Seoul National University. 3. Liang, Wen-Yew. 1994. Adsmith: A Structure-based Heterogeneous Distributed Shared Memory on PVM. (Online), http://citeseer.ist.psu.edu/liang94adsmith.html, diakses 20 Desember 2005 pukul 12.11. WIB. 4. Liang Wen-Yew, King Chun-Ta dan Lai Feipei. 1997. Adsmith: An Object_Based Distributed Shared Memory System for Networks of Workstations. Taipei: Dept. of Computer Science and Information Engineering, National Taiwan University. 5. Stalings, W. 2003. Computer Organization & Architecture. Sixth edition, PHI New Jersey: Pearson Education, Inc.
44