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)