pengembangan sistem komputer terdistribusi untuk aplikasi

advertisement
JTRISTE, Vol.1, No.1, Februari 2014, pp. 74~84
ISSN: 2355-3677
PENGEMBANGAN SISTEM KOMPUTER TERDISTRIBUSI
UNTUK APLIKASI RENDERING
Mohammad Fajar1, Zahir Zainuddin2, Zulfajri B. Hasanuddin3
Studi Teknik Informatika, STMIK KHARISMA Makassar
[email protected]
2, 3Jurusan Teknik Elektro, Fakultas Teknik, Universitas Hasanuddin
[email protected], [email protected]
1Program
Abstract
Dalam grafik komputer, proses rendering sebuah model (scene) menjadi gambar 3D yang
tampak realistis membutuhkan komputasi yang intensif dan waktu yang lama. Pengujian awal
menggunakan aplikasi berbasis pustaka XJRT dan aplikasi POV-Ray untuk merender sejumlah
model menjadi gambar pada sebuah komputer menunjukkan waktu render yang bervariasi dari
beberapa menit hingga jam. Olehnya itu diperlukan cara untuk mempercepat proses render,
sehingga waktu render untuk menghasilkan gambar akhir dapat dipercepat. Dalam tulisan ini,
kami mengembangkan sistem komputer paralel atau terdistribusi di jaringan komputer untuk
digunakan pada proses render grafik. Pada sistem yang dikembangkan, sebuah komputer
manajer memuat pekerjaan atau dokumen scene, membagi pekerjaan tersebut dan
mendistribusikannya ke beberapa komputer di jaringan. Komputer-komputer yang menerima
pekerjaan selanjutnya melakukan render, dan mengembalikan hasil rendernya ke komputer
manajer untuk digabung menjadi gambar akhir yang utuh. Pada sistem komputer terdistribusi
hasil rancangan total waktu proses render sebuah dokumen scene adalah waktu komputasi
ditambah waktu komunikasi ditambah waktu penggabungan semua hasil render komputer perender. Jika proses komputasi membutuhkan waktu yang lama, maka sistem terdistribusi hasil
rancangan akan bekerja lebih cepat diatas satu komputer pe-render. Hasil pengujian
memperlihatkan jika satu komputer pe-render membutuhkan waktu rendering 379.172 detik,
maka menggunakan sistem terdistribusi yang dikembangkan, mengalami penurunan waktu
render cukup signifikan, untuk dua komputer pe-render, proses render membutuhkan waktu
189.521 detik. Sehingga sistem ini sesuai untuk digunakan pada proses render yang
membutuhkan waktu proses yang cukup lama.
Keywords: komputer terdistribusi, sistem tersebar, rendering, rendering terdistribusi, komputasi
paralel, rendering paralel.
1. Pendahuluan
Hingga saat ini, komputasi secara paralel dan terdistribusi merupakan teknologi yang
menarik untuk dikaji dan menjadi salah satu pilihan untuk meningkatkan performansi proses
pengolahan data komputer. Hal ini disebabkan teknologi komputasi secara paralel dan
terdistribusi memberikan beberapa keuntungan yang tidak tersedia pada komputasi non-paralel
dan terpusat, seperti kekuatan komputasi, skalabilitas, realibilitas, dan ekonomis. Terlebih lagi
hal ini juga ditunjang dengan telah termanfaatkannya jaringan komputer secara luas di
masyarakat untuk berbagi pakai informasi menjadikan infrastruktur untuk mengembangkan
komputasi terdistribusi telah tersedia sehingga kita dapat lebih berkonsentrasi pada sistem
perangkat lunak terdistribusinya. Salah satu bidang yang membutuhkan kemampuan komputasi
yang intensif yaitu pengolahan grafik pada komputer, secara khusus rendering gambar.
Pembentukan sebuah gambar dari sebuah model (sering disebut dokumen scene) yang
mengandung model geometris, warna, dan efek bayang-bayang untuk memberikan tampilan
yang realistis yang sering disebut proses rendering merupakan satu contoh proses yang
memerlukan komputasi intensif dan sumber daya sistem komputer yang besar [4]. Rendering ini
Received May 9th, 2010; Revised August 3rd, 2010; Accepted August 16th, 2010
JTRISTE
ISSN: 2355-3677
 75
banyak digunakan di bidang arsitektur, video game, simulator, efek tertentu pada film dan TV,
serta perancangan visualisasi. Gambar 1 memperlihatkan sebuah model dan contoh hasil
rendernya yang terlihat realistis seperti hasil sebuah foto.
Gambar 1. Contoh hasil rendering
(Sumber citra : image created by Vivien May in Maya Rendering Tutorial)
Dalam pengolahan grafik komputer, rendering melibatkan proses komputasi terhadap
setiap pixel penyusun gambar, semakin besar kelompok pixel ini dan semakin kompleks objek
yang diolah atau semakin tinggi kualitas gambar yang ingin dihasilkan maka akan
membutuhkan komputasi yang intensif dan waktu yang lama. Di laboratorium STMIK
KHARISMA Makassar, penulis menggunakan perangkat lunak rendering untuk menghasilkan
berbagai gambar guna keperluan pengajaran seperti Pov-Ray dan aplikasi yang dikembangkan
sendiri menggunakan pustaka java XJRT. Dari studi awal yang dilakukan baik itu uji coba di
laboratorium maupun studi pustaka yang dilakukan untuk merender beberapa objek oleh
perangkat lunak perender yang digunakan, menunjukkan waktu render yang bervariasi. Untuk
dokumen scene yang berisi model sederhana membutuhkan waktu beberapa detik, tetapi untuk
model yang kompleks membutuhkan waktu beberapa menit hingga beberapa jam. Oleh sebab
itu dibutuhkan suatu teknik agar beban pada komputer yang menjalankan proses render dapat
diperkecil sehingga diharapkan waktu render dapat dipercepat. Berdasarkan hal tersebut dalam
tulisan ini peneliti mengkaji pengembangan sistem komputer terdistribusi untuk mempercepat
proses rendering. Pada komputer terdistribusi ini, pekerjaan komputer yang melakukan render
akan didistribusikan ke beberapa komputer lain dengan tujuan pemrosesan tidak terpusat
hanya pada satu komputer saja, sehingga diharapkan waktu komputasi bisa lebih dipercepat.
Selanjutnya tulisan ini disusun sebagai berikut: Bagian 2 menjelaskan konsep dasar
sistem terdistribusi, dan Bagian 3 menyajikan rancangan sistem rendering terdistribusi, Bagian
4 evaluasi rancangan, dan Bagian 5 simpulan dari pekerjaan ini.
2. Konsep Dasar Sistem Komputer Terdistribusi
Komputasi terdistribusi merupakan bagian dari komputasi secara paralel yaitu sebuah
metode pemrosesan pada komputer dengan menyimpan bagian-bagian program yang berbeda
berjalan secara simultan pada dua atau lebih komputer dan komputer-komputer tersebut
berkomunikasi satu dengan lainnya melalui jaringan untuk menyelesaikan suatu pekerjaan
tertentu. Motivasi utamanya yaitu berbagi pakai sumber daya [1]. Dalam tulisan ini, proses
komputasi yang besar dibagi menjadi beberapa bagian dan selanjutnya bagian-bagian ini
didistribusikan ke sejumlah komputer server atau worker di jaringan untuk diselesaikan. Hasil
pemrosesan pada worker dikembalikan ke terminal client.
Sistem paralel dan terdistribusi menawarkan beberapa keuntungan seperti ekonomis
dan reliabilitas [1] [3] [5] [6].
Title of manuscript is short and clear, implies research results (First Author)
76 
ISSN: 2355-3677
Dalam mengembangkan sistem terdistribusi, terdapat sejumlah arsitektur yang mungkin
untuk diterapkan sesuai dengan kebutuhan sistem. Model dasar arsitektur sistem terdistribusi
dapat dibagi menjadi empat yaitu [1]: Client-server, multi server service, proxy server dan chace
proses peer . Gambar 2. memperlihatkan ilustrasi model penyediaan layanan oleh banyak
server.
service
invocation
Client
Server
result
Server
Client
Key :
Server
Komputer
Proses
Gambar 2. Sebuah layanan yang disediakan oleh banyak server
Dari model arsitektur pada gambar 2. sebuah layanan disediakan oleh beberapa server,
client dapat meminta sejumlah server melakukan suatu pekerjaan. Dengan adanya beberapa
server yang bekerja untuk satu pekerjaan maka tingkat performansi, khususnya waktu eksekusi
operasi yang diminta client dapat sesegera mungkin diberikan kembali ke client. Istilah client
dan server dalam tulisan ini yaitu client adalah program yang meminta layanan server,
sedangkan server atau worker adalah program yang menyediakan layanan rendering.
Dalam tulisan [7] disebutkan beberapa masalah yang dapat membatasi kinerja program
paralel, yaitu: Memory contention, kode sekuensial yang berlebihan, waktu pembuatan proses,
delay komunikasi, delay sinkronisasi, dan ketidakseimbangan beban. Selain itu overhead
komunikasi dan overlap komputasi juga menjadi tantangan pada sistem terdistribusi [2]. Untuk
kebutuhan rendering secara paralel dan terdistribusi, beberapa studi telah coba dilakukan
diantaranya dalam tulisan [4, 5, 6, 7, 8]. Akan tetapi studi tersebut tidak secara detail
menguraikan arsitektur sistem yang dikembangkan, proses pembagian beban kerja dan
penyatuannya kembali. Selain itu juga beberapa studi yang disebutkan, terbatas hanya pada
menggunakan kerangka kerja sistem paralel yang telah tersedia, seperti Open Mosix dan MPI.
Sementara dalam tulisan ini kami mengembangkan arsitektur perangkat lunaknya sendiri,
dengan tujuan agar lebih leluasa dalam mengatur mekanisme komunikasi dan pembagian
beban sistem.
3. Sistem Komputer untuk Rendering Terdistribusi
Bagian ini menyajikan arsitektur rendering terdistribusi yang dikembangkan yang
meliputi arsitektur fisik sistem, arsitektur perangkat lunak, dan teknik pembagian beban.
A. Arsitektur Fisik Sistem
Sistem yang dikembangkan terdiri dari satu komputer client dan empat komputer server
yang dalam tulisan ini juga disebut render worker. Secara fisik sistem dibangun menggunakan
JTRISTE Vol. 1, No. 1, 2014
JTRISTE
 77
ISSN: 2355-3677
topologi jaringan star, setiap komputer dihubungkan menggunakan kabel UTP dan perangkat
switch dengan kecepatan 100Mbps. Gambar 3 memperlihatkan arsitektur fisik sistem komputer
terdistribusi yang dikembangkan. Spesifikasi perangkat keras dan perangkat lunak yang
digunakan untuk program client dan program server sama yaitu:
- Processor Intel Celeron 2.6 GHz,
- Ram 256 MB
- VGA On Board 256 MB Share memory
- Network via kabel UTP
- Network Interface Card (LAN Card) 100Mbps
- Switch 100Mbps
- Sistem Operasi Windows XP
- Java Runtime Environment (JRE 6.0)
Render-1
Render-2
Client
Render-3
Render-4
Gambar 3. Arsitektur fisik sistem rendering terdistribusi
B. Arsitektur Sistem Perangkat Lunak
Arsitektur sistem perangkat lunak yang dikembangkan terdiri dari modul perangkat
lunak client dan modul perangkat lunak server yang disebut render worker. Perangkat lunak
client terdiri dari sejumlah sub bagian dan rutin-rutin seperti sub sistem antarmuka user
berbasis grafis (GUI) bagian ini merupakan penghubung sistem dengan user, bagian pemuatan
input berupa scene, bagian untuk membagi pekerjaan baik secara otomatis maupun manual,
bagian serialisasi untuk menyiapkan pengiriman objek, setelah itu bagian pengirim akan
mengirim pesan (objek) ke sisi worker. Pesan yang dikirim berisi informasi scene, nilai awal
render dan nilai akhir render hasil pembagian pekerjaan. Pesan dikirim melalui socket melewati
jaringan hingga diterima oleh worker. Disisi worker pesan diterima oleh bagian penerima,
selanjutnya dideserialisasi yaitu menyusun pesan kembali sebagaimana pesan aslinya, yang
terdiri dari field scene, nilai awal dan akhir render. Informasi-informasi ini selanjutnya di berikan
ke rutin perender untuk pembentukan gambar. Hasil render oleh rutin perender akan disimpan
ke file dengan format gambar pix. Setelah rutin perender selesai membentuk image dari scene,
selanjutnya file gambar hasil render dibaca dan diserialisasi untuk disiapkan dikirim kembali ke
client, oleh bagian pengirim di sisi worker pesan di kirim melalui socket melewati jaringan dan
diterima oleh bagian penerima di sisi client. Pesan yang diterima akan disusun kembali sebagai
bentuk aslinya ketika dikirim oleh worker yaitu informasi gambar, nilai awal dan akhir pekerjaan
worker tersebut. Untuk informasi gambar akan disimpan ke file dengan format gambar pix
dengan nama file diambil dari identitas (ID) worker yang membuatnya, sebagai contoh
Title of manuscript is short and clear, implies research results (First Author)
78 
ISSN: 2355-3677
RenderWorker-1.pix, berati file gambar ini dirender oleh worker pertama. Oleh bagian
penggabung di sisi client akan memeriksa apakah semua worker telah mengirim hasil
rendernya, jika semua hasil render telah didapatkan, maka bagian ini akan menggabung semua
file gambar dan menampilkannya ke monitor.
1. Disisi client, pertama kali kita melakukan pemuatan file yang berisi informasi scene
tersebut, proses pemuatan akan membaca setiap karakter dari file dan menyimpannya
ke variabel array scenedata, ukuran array akan disesuaikan dengan banyak data pada
file.
2. Langkah selanjutnya yaitu membagi jumlah pixel untuk dua worker, jika menggunakan
proses pembagian otomatis maka, masing-masing worker akan mendapat pekerjaan
berikut: Untuk worker pertama offset awal=-160, dan offset akhir=0, dan untuk worker
kedua offset awal=1, dan offset akhir=160. sehingga struktur data Pesan kedua
jalinan(thread) yang menangani kedua worker dapat digambarkan sebagai berikut :
Struktur Pesan thread untuk worker-1
-160
0
Data scene
Gambar 4. Isi Pesan jalinan pertama
Struktur Pesan thread untuk worker-2
1
160
Data scene
Gambar 5. Isi Pesan jalinan kedua
Untuk field Data scene kedua thread berisi informasi yang sama.
3. Selanjutnya ketika proses pengiriman Pesan melalui socket dilakukan, objek Pesan
akan dikirim ke sisi worker sebagai satu objek yang berisi tiga field.
4. Disisi worker-1
dan worker-2 akan menerima Pesan tersebut dan melakukan
deserialisasi dengan menyusun kembali Pesan yang diterima ke sebuah objek bertipe
Pesan yang berisi tiga field. Yaitu field offset awal, offset akhir dan data scene. Untuk
worker-1 akan menginisialisasi variabel offset awal dengan isi field offset awal pada
Pesan yang diterima, variabel offset akhir dengan isi field offset akhir pada Pesan yang
diterima dan variabel Data scene berisi data scene pada pesan. Demikian pula pada
worker-2, sehingga kedua worker akan memiliki Struktur Pesan masing-masing sebagai
berikut :
Struktur Pesan worker-1
-160
0
Data scene
Gambar 6. Isi Pesan pada worker-1
Struktur Pesan worker-2
1
160
Data scene
Gambar 7. Isi Pesan pada worker-2
JTRISTE Vol. 1, No. 1, 2014
JTRISTE
ISSN: 2355-3677
 79
5. Selanjutnya pekerjaan merender segera dimulai, worker-1 menginisialisasi lebar dan
tinggi image yang akan dibentuk yaitu : 320x240 yang dibaca dari Data scene, dan
menginisialisasi variabel startX= -160 dan endX=0. variabel startX berfungsi sebagai
variabel pencatat posisi awal koordinat x sedangkan variabel endX berfungsi sebagai
variabel pencatat posisi akhir koordinat x. Begitu pula untuk worker-2 akan melakukan
hal yang sama akan tetapi dengan variabel startX=1 dan endX=160. Setelah itu
dimasing-masing worker fungsi melakukan render dipanggil dengan menyertakan
parameter format gambar yang dibentuk (pada contoh yaitu RGB) dan variabel yang
berisi referensi ke file hasil yang menyimpan hasil render. Adapun langkah-langkah
render di setiap worker secara umum dapat dijabarkan pada algoritma berikut.
[1] Buka file
[2] Baca semua objek geometri pada scene dan parameternya.
[3] Baca objek kamera dan sumber cahaya
[4] Untuk setiap pixel:
Bentuk sinar dari kamera melewati setiap pixel
[5] Untuk setiap objek pada scene:
Jika objek tidak berpotongan oleh sinar, bentuk sinar ke sumber cahaya,
jika sinar tidak tertutup maka pixel ditandai warna background, sebaliknya
jika sinar tertutup maka pixel ditandai warna bayangan.
Jika objek berpotongan oleh sinar dan objek tertutup, simpan titik potong
dan Identitas objek, pasang model pencahayaan untuk menutup titik
potong, plot pixel di dalam warna yang dihasilkan.
[6] Tulis setiap pixel ke file
[7] Tutup file.
6. Setelah proses pembentukan gambar selesai, maka worker-1 telah membuat gambar
berikut :
Gambar 8. Hasil render worker-1
Title of manuscript is short and clear, implies research results (First Author)
80 
ISSN: 2355-3677
Sedangkan worker-2 telah membuat gambar berikut :
Gambar 9. Hasil render worker-2
7. Selanjutnya masing-masing worker melakukan pemuatan data file hasil render kembali
ke struktur Pesan di field Data scene yang telah menjadi data gambar hasil render. Dan
melakukan pengiriman kembali ke client. Sehingga pekerjaan worker telah selesai dan
kembali menunggu apakah terdapat permintaan render yang baru.
8. Disisi client, jalinan-1(thread-1) akan menerima data Pesan yang telah berisi hasil
render dari worker-1, sedangkan jalinan-2 (thread-2) akan menerima data Pesan hasil
render worker-2 kedua thread selanjutnya melakukan deserialisasi yaitu menyusun
kembali ke struktur Pesan disisi client, untuk hasil render worker-1 diteruskan ke rutin
perekaman file yang akan menyimpannya dengan nama file RenderWorker-1.pix
sedangkan untuk hasil render worker-2 disimpan dengan nama file RenderWorker2.pix.
9. Langkah terakhir yaitu proses penggabungan yang dilakukan oleh thread penggabung,
yang telah dieksekusi dan menunggu ketika pengiriman dilakukan (pada langkah-3).
Proses penggabungan dilakukan di memori utama sehingga bekerja lebih cepat. Hasil
penggabungan ditampilkan ke layar monitor sebagai hasil render dua worker. Berikut
hasil penggabungannya.
Gambar 10. Hasil render setelah penggabungan
JTRISTE Vol. 1, No. 1, 2014
JTRISTE
 81
ISSN: 2355-3677
C. Waktu rendering terdistribusi
Waktu yang digunakan untuk menjalankan program secara terdistribusi adalah waktu
komputasi dan waktu komunikasi ditambah waktu startup [2]. Sehingga dalam tulisan ini total
waktu yang diperlukan yaitu T=Tkomputasi+Tkomunikasi. Waktu komputasi adalah waktu yang
dibutuhkan oleh worker dari mulai melakukan render scene sampai proses render selesai,
sedangkan waktu komunikasi adalah waktu pengiriman dan penerimaan pesan. Setiap thread
untuk setiap worker akan memiliki waktunya masing-masing. Karena waktu startup semua
thread sama maka dari satu kali pemrosesan render, peneliti hanya memperhitungkan worker
yang paling akhir (paling lama) mengembalikan hasil render ditambah waktu penggabungan
untuk kebutuhan penyajian hasil akhir ke layar.
D. Teknik Pembagian Scene
Dalam tulisan ini teknik pembagian scene yang digunakan yaitu pendekatan Demand
Driven, pendekatan ini membagi gambar yang dibutuhkan kedalam beberapa bagian kecil yang
disebut region dan menjalankan setiap region tersebut sebagai pekerjaan yang terpisah pada
prosesor-prosesor yang berbeda, teknik ini sering juga disebut sebagai pengurutan diakhir (sort
last) [9]. Prosesor akan mendapatkan keseluruhan scene tetapi hanya akan merender bagian
tertentu saja (bagian yang diminta oleh client). Keuntungan dari teknik ini yaitu implementasi
render engine secara menyeluruh dan independen sampai proses penggabungannya serta
dukungan skalabilitas. Dalam penelitian ini gambar akan dibagi secara vertikal, setiap potongan
akan dibuat oleh masing-masing worker, berikut ilustrasi model pembagian gambar yang
diterapkan untuk ukuran gambar yang dihasilkan 1000x1000 pixel dengan jumlah worker=4.
Region2
Region3
Region
1
Mesin
1
0,..
Region
4
Mesin
2
249,250,..
Mesin
3
Mesin
4
459,500,… 749,750,…
1000
Gambar 11. Teknik Pembagian Scene
Dari gambar ditunjukkan untuk region1 dari koordinat 0 sampai 249 akan dikerjakan oleh Mesin
atau komputer 1, sedangkan untuk region2 dari koordinat 250 sampai 459 dikerjakan oleh
Mesin-2. Begitu seterusnya hingga semua komputer yang akan membantu proses komputasi
render telah memiliki beban pekerjaannya masing-masing.
Untuk kebutuhan penggabungan image akhir dilakukan dengan menyisipkan image secara
berurutan, dari potongan (region) pertama ke buffer atau memory image source, hingga region
terakhir. Setiap worker yang telah mengembalikan hasil pekerjaannya, akan dimasukkan ke
buffer dan disusun menjadi sebuah gambar utuh sesuai yang diinginkan. Sinkronisasi pada
proses ini diperlukan, karena proses penggabungan gambar tidak dapat dilakukan apabila
gambar yang dibuat oleh setiap worker belum lengkap. Teknik sinkronisasi yang diterapkan
Title of manuscript is short and clear, implies research results (First Author)
82 
ISSN: 2355-3677
yaitu cara poling dengan memeriksa berulang-ulang suatu keadaan sampai benar. Keadaan
yang diperiksa yaitu apakah semua hasil render worker telah diterima. Jika semua hasil render
telah diterima maka proses penggabungan segera dimulai.
4. Evaluasi Sistem
Pengukuran waktu proses dilakukan untuk menguji sistem terdistribusi yang
dikembangkan dengan mendistribusikan dokumen scene berukuran 700x700 dari client ke
empat komputer yang melakukan proses render (mesin pe-render) menggunakan sepesifikasi
perangkat keras dan perangkat lunak yang telah disajikan pada arstitektur fisik sistem dan
arsitektur perangkat lunak. Beban disebar dengan membagi keseluruhan jumlah pixel dari
gambar yang akan dibuat secara seimbang ke setiap pe-render. Dari data hasil pengujian
rendering terdistribusi yang dikembangkan dapat digambarkan efek perubahan waktu proses
render akibat penambahan jumlah komputer pe-render. Untuk proses rendering yang tidak
menggunakan sistem terdistribusi, atau hanya menggunakan satu komputer untuk melakukan
render dokumen scene, waktu yang dibutuhkan yaitu 379.172 detik, sedangkan jika
menggunakan sistem terdistribusi yang kami kembangkan, mengalami penurunan waktu proses
yang cukup signifikan, untuk dua komputer pe-render, proses render hanya membutuhkan
waktu 189.521 detik, sementara untuk tiga komputer pe-render membutuhkan waktu 178.329
detik. Untuk empat komputer pe-render, waktu rendering berkurang menjadi 162.125 detik.
Gambar 12 memperlihatkan trend performansi rendering terdistribusi hasil pengujian yang
dikembangkan dalam tulisan ini.
Waktu
Kompu
tasi
(Detik)
(Komputer pe-render)
Gambar 12. Evaluasi performansi rendering terdistribusi
Dari gambar 12 diperlihatkan jika proses rendering membutuhkan waktu yang lama,
maka sistem terdistribusi hasil rancangan akan bekerja lebih cepat dengan jumlah komputer perender diatas satu komputer. Pada uji coba terhadap sebuah scene dengan dua pe-render
sistem yang dikembangkan telah memperlihatkan penurunan waktu proses render yaitu hanya
membutuhkan waktu proses ½ dari waktu proses jika dikerjakan oleh satu komputer pe-render.
Sehingga sistem yang dikembangkan ini sesuai untuk digunakan pada proses render yang
membutuhkan waktu proses yang lama.
JTRISTE Vol. 1, No. 1, 2014
JTRISTE
 83
ISSN: 2355-3677
5. Simpulan
Dari hasil pengembangan dan pengujian yang dilakukan dapat ditarik simpulan sebagai
berikut :
Sistem komputer terdistribusi hasil pengembangan terdiri dari manajer dan komputer
pe-render. Manajer dapat memuat beban kerja atau dokumen scene, membagi dan mengirim
beban kerja ke setiap komputer pe-render yang terdaftar dan menampilkan masing-masing
hasil render serta hasil penggabungannya. Sedangkan komputer pe-render dapat menerima
beban atau tugas yang diberikan komputer manajer, melakukan render sesuai permintaan dan
mengirim hasil render kembali ke manajer.
Pada sistem komputer terdistribusi hasil rancangan total waktu proses render sebuah
dokumen scene adalah waktu komputasi ditambah waktu komunikasi ditambah waktu
penggabungan semua hasil komputer pe-render. Jika proses komputasi membutuhkan waktu
yang lama, maka sistem terdistribusi hasil rancangan akan bekerja lebih cepat dengan jumlah
komputer pe-render lebih dari satu komputer. Dari hasil pengujian memperlihatkan jika satu
komputer pe-render membutuhkan waktu rendering 379.172 detik, sedangkan jika
menggunakan sistem terdistribusi yang dikembangkan, mengalami penurunan waktu proses
cukup signifikan, untuk dua komputer pe-render, proses rendering hanya membutuhkan waktu
189.521 detik. Sehingga sistem ini sesuai untuk digunakan pada proses render yang
membutuhkan waktu proses yang cukup lama.
Daftar Pustaka
[1] Coulouris, G., Dollimore, J., Kindberg. Distributed Systems Concepts and Design, Addison
Wesley. 2001.
[2] Eicken,T.V., Culler, D,E., Goldstein., Scauser,K.E. Active Messages: A Mechanism for
Integrated Communications and Computation. Proceedings of the 19th International
Symposium on Computer Architecture. ACM Press. Gold Coast.Australia. 1992.
[3] Foster, I., Kesselman, C., Tuecke, S.: The Anatomy of the Grid: Enabling Scalable Virtual
Organizations. International Journal of Supercomputing Applications 15, 3(2002).
[4] C. Gonzalez-Morcillo, G. Weiss, D. Vallejo, L. Jimenez and J.A. Fdez-Sorribes. 3D
distributed rendering and optimization using free software. Proceedings of the International
Conference on Free/Libre/Open Source Systems (FLOSS). 2007; , pp. 52–66.
[5] Humphreys, G.,Eldridge, M., Buck, I., Stoll, G., Everett, M. and Hanrahan. P. WireGL: A
scalable graphics system for clusters. Proceedings of SIGGRAPH 2001. 2001; pages 129–
140.
[6] Kuoppa, R. R., Cruz, C. A., Mould, D.: Distributed 3D Rendering System in a Multi-Agent
Platform. Proceedings of the Fourth Mexican International Conference on Computer
Science, 8, 2003.
[7] Laksono, A.D., Mutiara, A.B., Heruseto, B. Analisis Perbandingan Antara Cluster Open
Mosix Dengan MPI Terhadap Aplikasi Rendering Pov-Ray.Proceedings Komputer dan
Sistem Intelejen. 2004.
[8] Rajagopalan, R., Goswami, D., Mudur, S. P.: Functionality Distribution for Parallel
Rendering. Proceedings of the 19th IEEE International Parallel and Distributed Processing
Symposium (IPDPS’05), 18–28, April 2005.
[9] Reinhard, E,et all. Rendering Large Scenes
[email protected], [email protected]
Using
Parallel
Ray
Tracing.1998
Title of manuscript is short and clear, implies research results (First Author)
Download