Layanan Renderfarm NumpangRender
12.04.11
Kategori: General
Sudah ada yang tahu layanan renderfarm berbasis Blender, namanya NumpangRender? Saya tengah mencobanya untuk proyek profesional pertama saya di bidang animasi, dan hasilnya cukup memuaskan. Tidak banyak yang dibutuhkan untuk memanfaatkan layanan ini, hanya beberapa komputer yang terhubung melalui jaringan, cara membagi file .blend ke masing-masing komputer "slave", dan cara komputer "master" mengendalikan dan memulai proses render pada setiap "slave".
GAMBAR: Contoh sesi render dengan 4 (empat) komputer "slave".
Distribusi File .blend
Mendengar kata "distribusi", yang terpikir pertama di benak Anda pasti "mengirim" file. Teknik itu pula yang pertama saya kira harus dilakukan saat mulai mempelajari sistem render terdistribusi. Ternyata tidak harus demikian, karena ada banyak teknologi yang dapat kita gunakan untuk membagi file melalui jaringan. Meski pernah mencoba berbagi file menggunakan sshfs dan nfs, tapi sejauh ini saya merasa implementasi file-sharing yang paling mudah digunakan adalah menggunakan smbfs dari paket Samba.
Dalam renderfarm konvensional, mungkin kedua cara yang saya coba sebelumnya itu lebih tepat untuk diterapkan. Saya memilih Samba terutama karena telah digunakan terlebih dahulu oleh rekan-rekan di studio, sehingga tidak perlu memperrumit infrastruktur produksi yang sudah ada. Pun pengoperasiannya tidak memerlukan keterampilan teknis khusus seperti solusi berbagi file lain.
Eksekusi Tugas Render
Untuk mengeksekusi tugas render, diperlukan cara untuk mengakses setiap komputer "slave". Cara yang saya gunakan adalah menggunakan secure shell. Jika komputer "slave" yang dituju sudah me-mount direktori file .blend, proses render dapat dilakukan dari "master" seakan-akan tengah memproses file lokal. Proses render harus dilakukan melalui baris perintah, karena koneksi SSH saja tidak dapat mengakses konteks grafis yang diperlukan untuk menciptakan antarmuka grafis Blender yang familiar. Berikut contoh sesi render dengan NumpangRender:
cleo@cleo05-desktop:~$ ssh renderer@192.168.1.104 renderer@192.168.1.104's password: Linux renderer-cleomotion 2.6.35-25-generic #44-Ubuntu SMP Fri Jan 21 17:40:48 UTC 2011 i686 GNU/Linux Ubuntu 10.10 Welcome to Ubuntu! * Documentation: https://help.ubuntu.com/ 134 packages can be updated. 65 updates are security updates. Last login: Sat Apr 9 10:11:32 2011 from cleo05-desktop.local renderer@renderer-cleomotion:~$ cd /home/renderer/.gvfs/cakruk\ on\ cleo05-desktop/set/ renderer@renderer-cleomotion:~/.gvfs/cakruk on cleo05-desktop/set$ \ > blender -t 1 -b 01.35.blend -S image -a > /dev/null Starting output to /tmp/01.350025_0121.mp4(ffmpeg)... Using type=2, codec=2, audio_codec=86016, video_bitrate=6000, audio_bitrate=128, gop_size=15, multiplex=0, autosplit=0 render width=720, render height=576 Using global header Writing frame 25, render width=720, render height=576 Video Frame PTS: 0
Toleran Pada Pengguna Komputer "Slave"
Perhatikan opsi -t pada contoh eksekusi Blender di atas, karena ini merupakan karakteristik unik renderfarm NumpangRender. Namanya saja menumpang render, tentu bukan kita pengguna utama setiap komputer "slave". Opsi -t saya pakai untuk membatasi jumlah thread (+/- ekivalen dengan jumlah core CPU) yang digunakan saat render. Saat komputer "slave" tengah digunakan kerja, biasanya saya hanya menggunakan 1 core untuk render (semua komputer produksi di sini adalah quad-core). Kalau sekadar digunakan baca Kaskus atau Facebook-an, saya pakai 2-3 core, dan begitu ditinggal pergi saya pakai seluruh beban prosesor.
Pemanfaatan komputer "slave" seperti ini membutuhkan komunikasi dan pemantauan manual, agar pemakai utama setiap komputer "slave" tidak merasa terganggu dengan kita yang sedang NumpangRender.
Demikian deskripsi singkat mengenai sistem renderfarm yang tengah saya gunakan, yang dengan kualitas hasil render yang ingin dicapai sekarang, adalah sistem yang cukup efektif memanfaatkan sumberdaya yang ada. Mungkin begitu dibutuhkan kualitas gambar yang jauh lebih tinggi kami mulai menggunakan sistem renderfarm terdedikasi (yang harus lebih terotomatisasi), namun saat ini NumpangRender sudah memadai.