Keresés

Hirdetés

Új hozzászólás Aktív témák

  • #54625216

    törölt tag

    CG animációs cégnél dolgozom Bécsben, így első kézből tudok beszámolni arról, hogy miért is van létjogosultsága a sok magos workstation CPU-knak.

    Van egy kb. 100 gépes renderfarmunk, amit 4 éve építettek, 4GHz i7 7700K procikkal.

    A workflow-t kb. úgy kell elképzelni, hogy az emberek beadagolják a render feladatokat egy render managernek, az meg adott prioritások alapján kiosztja a munkát a farmnak. Mondjuk egy 160 kockás jelenetet szétszed 16 jobra, azokat kiosztja 16 gépnek, azaz egy gépre 10 kocka jut.

    Ennek a megoldásnak több baja is van:
    1. baromi sokat fogyaszt: 100 gép nem csak száz CPU, de ugyanannyi alaplap, táp, memória, hűtő, ssd, stb.
    2. nagyon nagy az IO igény: egyszerre 100 gép lóg a szerveren (+ humanok) és még ha nem is mozgatnak hatalmas adatmennyiséget, a metadat forgalom brutális terhelést ró a rendszerre, mert egy renderjob rengeteg apró log file-t és egyebeket generál
    3. a nagy fogyasztás nagy hőt is termel, ehhez külön kialakított helységek kellenek, amiben a klíma teljesítménye nagyobb, mint a renderre felhasznált energia. Értsd: ami KW energia bemegy, annak ki is kell jönnie, de mivel tökéletes hatásfokú klíma nincs, így 1KW hőre 1.5KW klíma teljesítménnyel kell számolni.
    4. nehezen skálázható: ha hirtelen megugrik a render igény, akkor nem lehet egyik napról a másikra még 100 gépet csatasorba állítani, mert ahhoz újabb klimatizált helység kell, elektromos és adathálózat bővítés, stb.

    Na most egy 32 fizikai magos workstation ugyebár 16db. 4 magos i7 munkáját tudja átvenni. Ez azt jelenti, hogy ha az emberünk a jelenetét a saját gépén a háttérben rendereli mondjuk 28 magon, még mindig marad egy "i7-nyi" erő a gépben, hogy a következő jeleneten dolgozzon. Így elméletileg ugyan veszít némi render kapacitást, de ez időben nem jelentkezik, mert nem kell várnia arra, hogy a renderjob-ja sorra kerüljön, illetve maga a render managelése is időt vesz igénybe.
    Ezen kívül ha felvesznek még 10 embert, akkor 10 új workstation-el ki lejet elégíteni a megnövekedett render igényt, nem kell +100 géppel növelni a farmot.
    Sőt, egyes munkákat akár outsource-olni is lehet, mert az emberünk otthon is le tudja renderelni a jelenetet, nem kell hozzá komplett renderfarm struktúrát építenie.

    Persze ez még nem jelenti azt, hogy a renderfarmok innentől feleslegesek, sőt. A Blinn törvény alapján biztosra vehető, hogy a render igény az elérhető renderkapacitással együtt nő. Ha erősebb a gép, húzósabb feladatokat adnak neki.
    Csakhogy a renderfarm fejlesztések is sokkal egyszerűbbé válnak: az i7-eket le lehet cserélni TR4-ekre és máris 16szorosára növelik a renderfarm kapacitását, miközben a többi összetevő, mint fogyasztás, hálózati forgalom nem változik jelentősen.

    Miért nem GPU:

    A GPU render előtt hatalmas jövő áll, de még nem tartunk ott, hogy egy komoly projectet nagyobb áldozatok nélkül teljesen GPU alapokra lehessen helyezni. A legtöbb GPU renderelő tudása limitált, egyes fícsöröket nem támogatnak, sok esetben komplex shader és plugin környezet áll egy-egy project mögött, amit nem lehet egyik napról a másikra GPU-ra implementálni. (Illetve lehet, csak túl sokba kerülne.)
    Ráadásul ha bármilyen új render algoritmus, shader jelenik meg, azt elsőként CPU-n fogják kihozni.

    Ezen kívül egy 32 magos CPU-val szemben csak egy több GPU-s rendszer tud érdemben annyival többet nyújtani, hogy érdemes legyen bevállalni a vele járó limitációkat és extra költségeket.
    Márpedig egy 3-4 1080Ti-s rendszer kiépítése, hűtése és irodai környezetben való üzemeltetése nem egyszerű, költségben pedig jóval a CPU rendszerek fölött van. Egyelőre tehát jobban megéri sokmagos CPU-kat használni és ha az nem elég, akkor pár node-al kibővíteni a farmot, mint az egész céget átállítani GPU-ra.

    [ Szerkesztve ]

  • #54625216

    törölt tag

    válasz Dandris #32 üzenetére

    Az általad linkelt teszteken mind opengl teljesítményt mérnek. Azaz nem a CPU nettó számítási teljesítményét tesztelik, hanem hogy milyen hatékonysággal tudja kiszolgálni a GPU-t.
    A CPU render feladatoknál viszont az opengl teljesítmény lényegtelen, farm gépekben még vga sincs.
    Tehát nem szarják le az autocad-et és a solidworks-öt, csaképpen a vizualizációhoz nem opengl-t, hanem CPU renderelőket használnak.
    Ha pedig egyes feladatokhoz opengl kell, akkor nem ők a célcsoportja ennek a termék kategóriának, így a cpu teljesítményeket is hülyeség összehasonlítani.
    Linkelj be mondjuk egy V-ray, Arnold, Cycles, Renderman, Mentalray tesztet és lássuk azokban hogy teljesít a TR4 az i9-ekhez képest.

  • #54625216

    törölt tag

    válasz wsanyi #42 üzenetére

    Köszi a pontosítást, nagy hirtelenjében elírtam: i7 4790K van a farmban és a 32 mag valóban 8db. i7-nek felel meg.

  • #54625216

    törölt tag

    válasz wsanyi #59 üzenetére

    3D rendernél csak korlátozottan lehet bérelni a render szolgáltatásokat, mert az esetek többségében (70-80%) gyors preview-k kellenek, azaz a render adminisztrációja: feltölteni a jelenetet, kivárni a rendert, letölteni a végeredményt túl sokáig tart.
    A legnagyobb probléma, hogy nem csak a jelenetet kell feltölteni, hanem a teljes környezetet, azaz asset-eket, shader-eket, plugin-okat. Aztán minden rendernél szinkronizálni kell a változásokat, mert ha egy textúra változik, de az online farmon nem frissül, akkor kukázhatod az összes lerenderelt framet.

    A végső verziót max. beállításokkal persze már lehet bérelt farmokon is rendereltetni, de a legtöbbször nagyon limitált a bérrenderelés, mert ez meg az a plugin hiányzik, vagy nem azt a verziót használják. Vagy fizetheted magad a licensz díjat annyi gépre, amennyit használsz. Szóval macerás.

    Ezen kívül komolyabb projecteknél az ügyfél biztonsági előírásai nem teszik lehetővé, hogy bármilyen adat elhagyja a céget.
    Ha egy nagyobb kiadóval vagy filmgyártóval tárgyalsz, akkor rádküldenek egy auditort, aki pontozza az IT biztonságot és ha nem értél el megfelelő pontszámot, akkor nem írják alá a szerződést, hiába imád a rendező vagy haver a producer. Ezeknél a pontozásoknál pedig bármilyen függés online szolgáltatásoktól durva pontlevonásokkal jár, amit más befektetésekkel lehet ugyan pótolni (pl. fegyveres őrség a szerverszoba előtt +pont :Y ), de nem nagyon éri meg.
    Kis cégeknél, vagy állami támogatású művész projecteknél jöhet talán szóba az online rendereltetés, ezek általában használják is, de még ilyenkor is kell egy alap renderkapacitás helyben.

    Az erős, sok magos worstation egyébként az online renderelés koncepcióba is jól illeszkedik mondjuk párfős cégeknél: az irodában tartasz 2-3 gépet a gyors preview-khoz, magát a kész jelenetet pedig küldöd az online renderfarmra. Ilyenkor több mag = gyorsabb preview = több lehetőség a javításra = jobb minőség.

    [ Szerkesztve ]

  • #54625216

    törölt tag

    válasz atok666 #64 üzenetére

    Amikor a tulajok hajlandóak pénzt pumpálni a cégbe. :DDD
    Komolyra fordítva: egyelőre nem cserélik az i7-eket, de az elmúlt 1 évben már TR 1950x-ekkel bővítették a farmot, illetve az új workstation-ök is TR alapúak, amiket esténként befognak renderelni.
    Most a TR 2990wx talán már eléri azt a szintet, hogy a teljesítmény bővülés / energia felhasználás annyival jobb, hogy érdemes a már meglévő gépeket is cserélni, de még nincs róla döntés.

  • #54625216

    törölt tag

    válasz wsanyi #66 üzenetére

    Ez úgy működik, hogy bevállalnak még egy projectet, a világosítók meg vinnyognak, hogy kevés a render kapacitás, mire azt mondják, hogy ok most ennyi pénz van, amit inkább új gépekre költenek, mint a meglévők lecserélésére.
    Az i7-eket szvsz csak akkor cserélik, ha már nem fér el új gép és a légkondit is bővíteni kellene, mert akkor olcsóbb a régebbi gépeket cserélni, mint újabb helységet kialakítani. Persze most is megérné az energiafogyasztás miatt, de a beszerzéseknek van némi laggja, hogy nem akkor költenek pénzt, amikor megérné az infrastruktúrába fektetni, hanem amikor már végleg kifogytak az egyéb lehetőségekből.

    A GPU-ról már írtam fentebb, hogy komoly lehetőségek vannak benne, de egy teljes céget GPU renderre átállítani más műfaj. A teljes render pipeline-t át kell dolgozni, ami idő és pénz, ezen kívül egy csomó pénz van a cpu render licenszekben, azt sem dobják egyik napról a másikra, és az embereket is ki kell képezni. Ehhez jön hozzá, hogy bár rohamosan fejlődik a GPU render technológia, feature-k terén még rendesen le van maradva a CPU megoldásokhoz képest. Így összességében még nem éri meg kísérletezésen túl komoly pénzeket tolni a GPU renderbe.
    Más lenne a helyzet, ha nulláról lehetne indulni és a project design-t is a GPU renderlők képességeihez lehetne igazítani, mert akkor fel lehetne szerelni 3-4 GPU-s workstation-ökkel a világosítókat és nem is kellene renderfarm, mert GPU-n a ws simán lerenderelné a jelenetet percek alatt.
    Amúgy GPU-hoz meg felesleges a 2990wx, a legolcsóbb threadripper is elég lenne, mert a GPU rendernél nem a CPU magok száma a szűk keresztmetszet és a 2990wx nem kezel több pci lane-t mint a többi TR.

  • #54625216

    törölt tag

    válasz wsanyi #68 üzenetére

    Szoftver függő. A CPU mindenképpen dolgozik, mert a GPU-t ki kell szolgálnia, de általában amint a kép számításba is be kell vonni a CPU-t, onnantól drasztikusan megnő a renderidő.
    A tisztán GPU-ra épülő renderelők, mint az Octane nagyságrendeket rávernek gyorsaságban bármilyen CPU renderelőre, de ugye itt jön be a képbe, hogy milyen feature-ökre van szükség a projecthez.
    Ha egy szükséges dolgot az Octane nem tud, akkor lehet akármilyen gyors, nem lehet a projecthez használni.

    Vannak ugyanakkor hibrid megoldások, mint a Radeon Pro Render, illetve a Pixar is valami hasonlón dolgozik a Renderman-nal, hogy a renderelő használja a GPU-t ha van, de megy anélkül is, ezek viszont még vagy nincsenek a piacon, vagy nem túl elterjedtek és sosem lesznek egy ligában a tisztán GPU renderelőkkel. Inkább a zökkenőmentes technológiaváltásban lesz szerepük.

    Ezen kívül lassan de biztosan terjednek a game engine-k is, mint render megoldások. Már vannak tv sorozatok, amiket unreal-ben csináltak, ez új szintre emeli az egész GPU témát, mert gyakorlatilag megszűnik a renderidő. Egy game engine-el simán lehet akár 8K-s képeket is számoltatni a másodperc töredéke alatt, ráadásul az optimalizálással sem kell vergődni, mert senkit sem érdekel az fps, mivel nem kell realtime-nak lennie.
    A game engineknél viszont nehézkes az átjárás a 3D szoftverek és az engine között, ez jelenleg a szűk keresztmetszet. Egyelőre túl sok emberi munkát igényel és sokkal komolyabban a limitációk, mint akár a tisztán GPU renderelőknél.

    Az iparág vitathatalanul a GPU irányába halad, szvsz ez a két-három év lesz a sokmagos CPU-k aranykora, ezalatt a GPU renderelők és a game enginek feature-ben fel fognak zárkózni a CPU-khoz, hatákonyságban meg durván el fognak húzni.

  • #54625216

    törölt tag

    válasz #06658560 #70 üzenetére

    Ez jogos, de általában mindig van futó project. A munkafolyamatoknak átfedésben kell lenniük, különben amíg kifut az aktuális project, a munkatársak felének nem lenne mit csinálnia.
    Nagyobb hollywoodi produkciókba bedolgozó stúdiók megengedhetik maguknak, hogy két nagyobb munka között tartsanak pár hónap leállást, majd újraverbuválják a csapatot a következőhöz, mert a fizetések is olyanok, hogy az embereknek megéri projectről-projectre vándorolni kisebb-nagyobb kihagyásokkal.
    Alacsonyabb költségvetésű tv-s vagy online munkáknál viszont stabil gárda kell, akiket évekre le tudnak kötni, így a cégek kénytelenek több projectet párhuzamosan futtatni.

  • #54625216

    törölt tag

    válasz #06658560 #72 üzenetére

    Workstation-ökkel, szerverekkel ez így is megy, renderfarmmal valamivel egyszerűbb.
    Ott elég pár új node-ot beálltani tesztelésre és ha egy-két hónapig nem köpködi a hibaüzeneteket, akkor jó eséllyel cserélhetők a rendergépek akár project közben is.
    Ettől függetlenül rendergépet nem szoktak cserélni, inkább bővítik a farmot újabbakkal és ha már nagyon gyenge a régi gépek fogyasztás/renderteljesítmény mutatója, akkor kukázzák őket. (Ez az i7-ekkel még egy dararbig nem fog megtörténni.)
    Persze, ha valami nagyságrendileg komolyabb project miatt külön beruházás kell az más történet, mert akkor már az is számít, hogy a régi gépek mennyi helyet foglalnak. Ebben az esetben valóban kivárják, amíg kifut a régebbi project és csak utána barmolják szét a farmot, de ez elég ritka és drasztikus lépés egy cég életében, hogy a korábbiakhoz képest akkorát lépjenek előre volumenben.
    (Nálunk pont volt ilyen: 10 fős startupból váltottak 80-90 fős középvállalkozásra kb. fél év alatt, volt is szopás mindennel.)

Új hozzászólás Aktív témák