40.000 processorer sørgede for digitale effekter i 'Avatar'

Effekterne i årets mest avancerede film - Avatar - har krævet enorme mængder computerkraft at fremstille. Et datacenter med 104 terabyte RAM, 3 petabyte storage og 40.000 processorkerner skulle der til.

Årets jule-sci-fi-blockbuster Avatar har sat nye standarder for computergrafik i film. Og for at nå så langt, måtte effektfirmaet Weta Digital i New Zealand bygge et massivt datacenter op, beretter it-mediet Information Management, der har besøgt firmaet i Wellington.

34 racks fyldt med over 4.000 bladeservere med hver ti processorkerner udgør hjernen i det 900 kvadratmeter store datacenter, og 104 terabyte RAM hjælper med behandlingen af de enorme mængder data.

Kontakten til de tre petabyte storage - altså tre millioner gigabyte - måtte ikke være en flaskehals, så udstyret blev placeret helt tæt op ad hinanden. Forbindelsen blev sikret med adskillige 10 gigabit fiberkabler i parallel.

Den slags computerkraft skulle man tro ville koste en formue i køling, men faktisk er det ikke noget stort problem, fortæller Weta Digitals chef for datacentret, Paul Gunn. Alting vandkøles, fordi udstyret står så tæt, og der er masser af koldt vand udenfor, som kan hentes ind til køling. Kun nogle få måneder om året er det nødvendigt at have et regulært kølesystem tændt, og alt i alt bruger datacentret 40 procent mindre strøm, end hvad der er normalt.

Hvert billede i filmen Avatar krævede flere timers beregning i det potente datacenter, og med 24 billeder i sekundet og 166 minutters film i alt, var det en større opgave, selv med så mange hestekræfter under hjelmen. Det var selvfølgeligt også sjældent, at første forsøg med effekterne fungerede optimalt, så typisk blev hver scene lavet om mange gange.

Det svarede i alt til, at der blev sendt otte gigabyte data til behandling hvert eneste sekund i flere måneder.

Den endelige film er mere overkommelig, datamæssigt. Hvert billede fylder 12 megabyte, og der var i alt omkring 240.000 billeder i den banebrydende film.

Ifølge Computersweden svarer datakraften hos Weta Digital i øvrigt til en placering i top 200 på listen over verdens supercomputere.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (16)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Flemming Frandsen

Det er sjovt at tænke på at da Titanic kom ud i 1997 var der i hver eneste artikel om filmen en lille blurp om at vandet havde taget en masse computer kraft og at man havde brugt Linux software til formålet.

Nu om stunder er det en selvfølge at der der er brugt masser af computere og Linux til at lave film med, så de tekniske detaljer kan kun findes i nørdpressen:)

  • 0
  • 0
Nick Frederiksen

@Flemming Frandsen

Ved ikke helt hvor du har dine oplysninger fra, men i dag bruger man ikke kun linux til at lave film.

ILM (Industrial Light and Magic) bruger Windows på workstations og kører renderingen på en unix baseret maskine.

Der er endda andre, der bruger MacOS til hele processen. Der er altså ikke tale om at alle virksomheder bruger linux. Virksomhederne bruger det, der passer bedst til den opgave de skal løse.

  • 0
  • 0
Jacob Christian Munch-Andersen

Hvor mange 2CVer har de så brugt til at transportere udstyr mellem locations?

Jeg må sige at jeg virkelig er negativt imponeret over ressourcespildet. Ikke blot bruger de monster meget regnekraft for at skabe detaljer på skærmen som ingen alligevel lægger mærke til, de har også den frækhed at spilde deres millioner på traditionelle processorer i stedet for til opgaven indrettede grafikchips.

  • 0
  • 0
Søren Jacobsen

Ja, der er jo næsten ikke andet end lokationoptagelser i den film! Og hvor er det ærgerligt at de ikke lige spurgte dig om hvad de skulle vælge af udstyr, nu hvor de tydeligvis ikke selv har styr på det - hvis nu bare filmindustrien skulle tjene penge og derfor havde en interesse i at sikre en sammenhæng mellem ressourceforbrug og forventet tilbagebetaling, men nej, de er og bliver håbløse romantikere der gør det for kærligheden til filmen...

(Opsummering: Filmen er næsten udelukkende blevet til gennem motion capture og andet fjol i en computer, grafikchips er håbløse til alt andet end højt specialicerede spil, som skærer ethvert tænkeligt hjørne. De kan ikke bruges til "realistisk" grafik.)

  • 0
  • 0
Jacob Christian Munch-Andersen

Hvis jeg kender Hollywood ret har de nok fundet på en undskyldning for at fragte lidt af hvert frem og tilbage.

Anyway, hvis man giver et grafikkort lidt mere end de normerede 20 ms til at lave et billede så kan man få ganske meget bedre resultater, og er man ikke tilfreds med udvalget af muligheder vha. OGL og DirectX kan man jo bare programmere det selv ved hjælp af de dertil indrettede parallelprogrammeringsværktøjer. De moderne grafikprocessorer kan netop ikke kun bruges til spil, men også til alt muligt andet, inklusiv avancerede lys og skygge beregninger.

Selvfølgelig er der sammenhæng mellem ressourceforbrug og forventet tilbagebetaling, når de forventer at tjene så og så mange penge bliver de også nødt til at bruge nogle af dem. De konkurrerer jo ligefrem om at have lavet den dyreste film.

  • 0
  • 0
Jesper Poulsen

"grafikchips er håbløse til alt andet end højt specialicerede spil, som skærer ethvert tænkeligt hjørne."

Du mangler vist noget viden om brug af GPU'er til beregninger.

DirectX er en quick-and-dirty løsning, men CUDA og STREAM anvender ikke dette crappy API fra Microsoft.

  • 0
  • 0
Mikkel Jans

Highend Render-programmer har aldrig haft tradition for at benytte GPU'en i noget vidt omfang. Så vidt jeg ved, er det fordi den er alt for specialiseret.
GPU'er er god til at rendere hurtigt, og da også nogle render systemer baseret på GPUen, men de bliver brugt til at få et hurtigt billede af rendering, ikke et endeligt billede.
Ved final renderinger (specialt i film som avatar), betyder det ikke så meget at vente et par timer mere per frame, hvis det så også øger kvaliteten bare en anelse.

Det ville ikke være smart at spilde de millioner af timers person-arbejde der har været forud for renderingen, fordi man ikke vil have sine computerer til arbejde så meget. Computer-kraft er billigt, så der er ingen grund til at gå på kompromi.

GPU kunne måske blive fremtiden i high-end renderinger, men jeg tror der er langt endnu.. Tror heller ikke James Cameron gider vente endnu 12 år på det.

  • 0
  • 0
Mikkel Jans

Jeg tror ikke nogen sigter efter at lave den dyreste film. Måske vil nogen vil udnytte prisen som et dårligt salgs argument, men aldrig som mål. Film er dyre nok i forvejen, ingen ønsker at spilde resourcer (selvom det nok sker alligevel :)).
Alle de detaljer som ingen lægger mærke til (bevidst) er nødvendige for at en film som avatar kan fungere. Uden dem risikere de at havne nede i "the uncanny valley":
http://en.wikipedia.org/wiki/Uncanny_valley
De Avatars er alt for menneskelige, til at alt andet end det bedste man kan frembringe med teknologien i dag, ville ødelægge hele filmen, fordi ingen vil kunne leve sig ind i karakterne.

  • 0
  • 0
Jens Henrik Sandell

De herrer...
Check lige grundlæggende teori om computergrafik. Her følger et kort summary og links til videre læsning.

  1. PC grafikkort har 2 mangler:

    • de arbejder med rasterisering, som ikke gengiver fysiske fænomener korrekt. Der er lavet tiltag for at skabe fysik i spil, men det er en (grov) tilnærmelse.
    • stort set alle GPU'er arbejder med single-precision floatingpoint matematik. Det kan ses på billedet.
  2. Raytracing baserer sig på grundlæggende fysik og modellerer lysbrydning, reflektion, skygger osv. ud fra særdeles beregningstunge formler. Raytracing arbejder altid med doubleprecision og giver derfor et bedre (korrekt) resultat.

Der findes enkelte hardwareimplementeringer, hvor de beregningstunge dele lægges ud i en FPGA chip. Men det er et lille nichemarkede.


Links:
http://en.wikipedia.org/wiki/Ray_tracing_(graphics)
http://www.povray.org/
http://www.irtc.org/
http://en.wikipedia.org/wiki/Ray_tracing_hardware

Litteratur
James D. Foley, et al. "Computer Graphics principles and practice".
http://en.wikipedia.org/wiki/James_D._Foley

  • 0
  • 0
Jacob Christian Munch-Andersen
  1. PC grafikkort har 2 mangler:

- de arbejder med rasterisering, som ikke gengiver fysiske fænomener korrekt. Der er lavet tiltag for at skabe fysik i spil, men det er en (grov) tilnærmelse.
- stort set alle GPU'er arbejder med single-precision floatingpoint matematik. Det kan ses på billedet.

Svaret på begge dele er, programmer kortet selv, som det allerede er nævnt behøver du ikke at bekymre dig om hvordan kortet arbejder når det tegner spil grafik, du kan bruge præcis den metode som du selv ønsker. Hvis præcisionen ikke er god nok kan du kombinere flere beregninger til at få større præcision, det koster selvfølgelig ydelse, men du kan stadigvæk få langt flere 64 bit operationer ud af et grafikkort end en af de Xeon processorer som de har brugt.

  • 0
  • 0
Henrik Mikael Kristensen

GPU kunne måske blive fremtiden i high-end renderinger, men jeg tror der er langt endnu.. Tror heller ikke James Cameron gider vente endnu 12 år på det.

Så længe behøver man ikke at vente. NVidia's CUDA benyttes allerede til eksperimentielle GPU varianter af V-Ray (som ligger i den professionelle ende) til 3D Studio MAX:

http://www.youtube.com/watch?v=DJLCpS107jg

Om et års tid vil konceptet være på plads i de fleste professionelle renderingsystemer, men her vil det nok være at foretrække at anvende OpenCL for at passe til flere grafikkort over flere platforme.

Man får det samme numeriske resultat som ved almindelig CPU rendering. Der er ingen forskel ud over den svimlende meget højere hastighed på GPU'en.

  • 0
  • 0
Jesper Poulsen

"Man får det samme numeriske resultat som ved almindelig CPU rendering. Der er ingen forskel ud over den svimlende meget højere hastighed på GPU'en."

Før jul hyggede jeg mig lidt med RC5-72 på mit GTX275. Det rykker ret godt. Der skal mindst 2-3 i7'ere til at slå det.
Min egen Phenom II X2 BE kan crunch'e 25Mkeys/s (den er overclocked med 16%). GTX'eren snupper 285Mkeys/s. Min Phenom II har et TDP på 95W. En i7 har et TDP på 125W. GTX275 har et TDP på 219W. Effektiviteten er markant højere på GTX275.

  • 0
  • 0
Anders Johansen

Hvert billede i filmen Avatar krævede flere timers beregning i det potente datacenter, og med 24 billeder i sekundet og 166 minutters film i alt, var det en større opgave, selv med så mange hestekræfter under hjelmen

Hvis der er 166 minutters film med 1440 billeder i minuttet (24 billeder i sekundet x 60 sekunder pr. minut) giver det 239040 billeder i hele filmen... Med et par timer per billede skulle det have taget 478080 timer at rendere filmen - eller 55 år... Der er vidst en smule overdrivelse i den udtalelse :)

  • 0
  • 0
Log ind eller Opret konto for at kommentere