Tech techline.hu 2009. január. 28. 06:30

Legyen gyorsabb: hálózati renderelés Macintoshon

Lehet akármilyen gyors is egy gép, egy pár órás animáció...

Lehet akármilyen gyors is egy gép, egy pár órás animáció renderelése bizony több óráig, sőt, akár napokig is eltarthat. Ezért csak egy gépen renderelni nagyobb projekteknél nem mondható optimális megoldásnak.
A professzionális munkában több gépet kötnek össze, renderfarmokat hoznak létre, RAID tömböket használnak, ahol több gép  - és így több processzor - együttes erejével lényegesebben felgyorsul a renderelés ideje.

2300 év renderelés
Érdekességképpen említendő - hogy el tudjuk képzelni, milyen időigényes egy mozifilm renderelése -, hogy a Pixar a Cars egyes frame-jeit (azaz egy képkockát) 10 óra alatt renderelte le, míg például a Toy Story esetében a külsõ jeleneteknél, ahol sok falevelet, fűszálat, világítást, árnyékokat kellett renderelni, egy képkocka kiszámítása 24 (!) óráig tartott.
Természetesen a renderelési idő attól is függ, hogy mi van a képen, milyen részletes a grafika.  De visszatérve a Cars rajzfilmre: itt egy (!) képkocka renderelése átlagosan 17 órát vett igénybe, és ennél a filmnél jóval több volt a kapacitás, mint a Toy Storynál. Így ha egyetlen processzor renderelte volna a filmet, az 2300 évig tartott volna.

Konfigurálás - Qmaster
Ha kettő vagy több Macintosh számítógépünk van, akkor a legegyszerűbb módszer, ha hálózatban összekötjük a gépeket, és mindegyikre telepítjük a Qmastert, így minden gép erőforrását kihasználva, jelentősen lerövidíthetjük a renderelésre szánt időt.
Ahhoz, hogy a gépeket összekössük, először természetesen hálózatba kell kötni őket. Ez lehet közvetlen hálózat (UTP vagy firewire), illetve routeren keresztüli csatlakozás. Itt minimum 100 Base-T vagy az újabb és lényegesen gyorsabb 1000 Base-T router a legjobb.  A vezeték nélküli router nem ajánlott, hiszen a renderelésnél az egyik legfontosabb követelmény a gyors és megbízható kapcsolat. 
Minimális gépkövetelmény: G4, de inkább G5, és a 10.3.9 vagy afölötti verziószámú operációs rendszer kell hogy fusson rajtuk, azaz a Tiger vagy az újabb Leopard.

Miután a gépeink össze vannak kötve, telepítsük fel mindegyikre a Qmastert (ez a Final Cut Studio vagy a DVD Studio Pro szoftvercsomag része). Ezt általában nem installáljuk fel először, ezért lehet, hogy nem találjuk a gépünkön. Tegyük be újra a telepítőlemezt, és keressük meg a AppleQmasterNode.mpkg fájlt (ezt az Extras könyvtárban kell keresni a CD-n).

Miután minden gépre felinstalláltuk, konfiguráljuk be.  Menjünk az Apple menu/System Preferences opciójához,  ahol megtaláljuk a Qmaster beállitásait. Kattintsunk a Setupra, és ha masterként (kiszolgáló) futtatjuk a gépet, válasszuk a „Services and cluster controller” opciót. A többi számítógépen, amelyek csak rácsatlakoznak erre a gépre, válasszuk a „Services Only” opciót.
A Services ablakban jelöljük be a „Share” és a „Managed” négyzetet a Compressor mellett. Amenyiben Shake-et használunk, úgy az alatta levő négyzeteket is pipáljuk ki.

Ezután váltsunk át az Advanced ablakra. Itt beállithatjuk, hogy hova kerüljenek az ideiglenes fájlok, illetve hogy hány napig tárolódjanak azok a gépünkön. A „Set” gombbal változtathatjuk meg ezeknek az ideiglenes fájloknak a helyét. A Network résznél válasszuk ki, hogy melyik csatlakozást használja a Qmaster a renderelésre (ez általában a helyi hálózat lesz: „Built in Ethernet”).
A gépnek külön nevet is adhatunk, amit a Qmaster fog használni a klaszteren belüli azonosításhoz.

Amikor ezzel megvagyunk, és minden gépen beállítottuk a Qmastert (egy gép a kiszolgáló, a többi felhasználó), indítsuk el a Qadministratort, amit a Compressorból érhetünk el (jobb felső sarok, Batch Monitor ikon), vagy indíthatjuk a Spotlightból, ha beírjuk, hogy „Qadministrator".
Miután a program elindult, kattintsunk a + jelre, amivel létrehozunk egy új klasztert. Ennek új nevet is adhatunk. A Controller legördülő menüből válasszuk ki azt a számítógépet, amit előzőleg kiszolgálóként adtunk meg. Amikor ez megvan, az alsó Qmaster Service Browser ablakból húzzuk át a listában szereplő gépeket a fölötte lévő ablakba. Ezeket a gépeket használjuk  a renderelésnél egy klaszteren belül. Több klasztert is létrehozhatunk, azonban egy gép csak egy klaszterhez lehet hozzárendelve.

Renderelés több géppel a Compressor segítségével
Miután elvégeztük a fenti konfigurációt, és beállítottunk egy gépet kiszolgálóként és a többit felhasználónak, illetve létrehoztuk a klasztert a Qadministratorban, tulajdonképpen készen is állunk arra, hogy minden gépünket kihasználva, hálózatban rendereljünk.
Amikor elkészültünk egy animációval vagy filmmel, azt egyszerüen húzzuk rá a Compressor „Batch” ablakára.
Állítsuk be a felhasználandó tömörítési eljárást a Settingben, a „Cluster Storage”-et a Destinationben, végül pedig a Cluster legördülő menüben válasszuk az újonnan létrehozott klasztert.

Amikor ezután a Submit gomra kattintunk, megindul a renderelés, és a kiszolgáló gép a klaszteren keresztül minden gépre küld renderelni való fájlszegmenseket.
Próbáljuk ki, hogy ugyanazt a fájlt először csak egy gépen (a Compressorban állítsuk be: „This Computer”), majd utána a klaszter segítségével (a Compressorban válasszuk ki: „Cluster”) renderelünk le. Látni fogjuk, hogy nagymértékben lecsökkent a renderelési idő.

Hirdetés
Kult HVG 2024. november. 26. 20:00

"Amit mi csinálunk, az hosszútávfutás" – színfalak mögött az Ivan & The Parazollal

Néhány napon belül több helyen és több helyzetben is találkoztunk a jövőre hatodik nagylemezét megjelentető Ivan & The Parazollal, hogy megtudjuk, mitől különleges a zenekar új nagylemeze, hogyan áll most a 14 éves zenekar, mi történt velük az elmúlt években, és miért gondolják azt, hogy eljött az együttes aranykora. A HVG kisfilmje.