Live data from Hacker News

Pixar's Render Farm

twitter.com

151–160 of 323 posts

Re: Pixar's Render Farm

#151

Earlier quoted context omitted.

That seems extremely unlikely. The Renderman software they use has no issues rendering at 4k.

The 4k streaming copy of the film has stairsteps though. Like it's been upsampled. I'm sure their software can render at 4k but they choose not to for whatever reason.

are you sure that's not just an artifact of it being streamed?

Re: Pixar's Render Farm

#152
post #54

Can anyone comment on why Pixar uses standard CPU for processing instead of custom hardware or GPU? I'm wondering why they haven't invested in FPGA or completely custom silicon that speeds up common operations by an order of magnitude. Is each show that different that no common operations are targets for hardware optimization?

Because the expense is not really worth it - even GPU rendering (while around 3/4 x faster than CPU rendering) is memory constrained compared to CPU rendering, and as soon as you try and go out-of-core on the GPU, you're back at CPU speeds, so there's usually no point doing GPU rendering for entire scenes (which can take > 48 GB of RAM for all geometry, accel structures, textures, etc) given the often large memory re…

because GPUs in datacenters are expensive.

Not only that, they are massive, kickout a whole bunch of heat in new and interesting ways. worse still they depreciate like a mofo.

the tip top renderbox of today is next years comp box. a two generation old GPU is a pointless toaster.

Re: Pixar's Render Farm

#153
post #3

My understanding (I am not an authority) is that for a long time, it has taken Pixar roughly an equal amount of time to render one frame of film. Something on the order of 24 hours. I don’t know what the real units are though (core-hours? machine-hours? simple wall clock?) I am not surprised that they “make the film fit the box”, because managing compute expenditures is such a big deal! (Edit: When I say "simple wall…

Wait, what? 24 hours per frame?! At the standard 24fps it takes you 24 days per film second which works out to 473 years for the average 2 hour long film which can't be right.

yup, you've also got to remember that a final frame will have been rendered many times.

Each and every asset, animation, lighting, texturing sim and final comp will go through a number of revisions before being accepted.

So in all actuality that final frame could have been rendered 20+ times.

VFX farms are huge, In 2014 I worked on one that was 36K cpus and about 15pb of storage. Its probably now in the 200k cpu mark.

Re: Pixar's Render Farm

#154

I'm surprised they hit only 80-90% CPU utilization. Sure, I don't know their bottlenecks, but I understood this to be way more parallelizable than that. I ray trace quake demos for fun at a much much lower scale[0], and have professionally organized much bigger installs (I feel confident in saying even though I don't know Pixar's exact scale). But I don't know state of the art rendering. I'm sure Pixar knows their wo…

maxing a CPU is easy, keeping it fed with data, and being able to save that data out is hard.

Re: Pixar's Render Farm

#155

From what I understand they still seem to render at 1080p and then upsample to 4k. Judging by Soul.

it's almost certainly rendered in cinema 4k (4,096 x 2,160 pixels), if not more. moreover it'll be in a 16/32bit log colourspace as well

Re: Pixar's Render Farm

#156

Is there similar scheduler to K8S ?

https://rmanwiki.pixar.com/display/TRA/Tractor+2

much more simple, scales way higher, has much better documentation.

However its not designed to do the same thing.

tractor is about cramming as much stuff onto a machine as possible as fast as possible. It also is designed to handle processes that fail.

it doesn't force you to use stupid network patterns, and has very rich dependency management. But its not decentralised. However its pretty stable.

Re: Pixar's Render Farm

#157
post #141
post #125

Earlier quoted context omitted.

I write a production renderer for a living :) So I'm well aware of the trade offs. As I mentioned, for lookdev and small scenes, GPUs do make sense currently (if you're willing the pay the penalty of getting code to work on both CPU and GPU, and GPU dev is not exactly trivial in terms of debugging / building compared to CPU dev). But until GPUs exist with > 64 GB RAM, for rendering large scale scenes, it's just not w…

I used to write a production renderer for a living, now I work with a lot of people who write production renderers for both CPU and GPU. I’m not sure what line you’re drawing exactly ... if you mean that it will take 3 or 4 years before the industry will be able to stop using CPUs for production rendering, then I totally agree with you. If you mean that it will take 3 or 4 years before industry can use GPUs for any p…

The line I'm drawing is high-end VFX / CG is still IMO years away from using GPUs for final frame (with loads of AOVs and Deep output) rendering.

Are GPUs starting to be used at earlier points in the pipeline? Yes, absolutely, but they always were to a degree in previs and modelling (via rasterisation). They are gradually becoming more useable at more steps in pipelines, but they're not there yet for high-end studios.

In some cases, if a studio's happy using an off-the-shelf renderer with the stock shaders (so no custom shaders at all - at least until OSL is doing batching and GPU stuff, or until MDL actually supports production renderer stuff) studios can use GPUs further down the pipeline, and currently that's smaller scale stuff from what I gather talking to friends who are using Arnold GPU. Certainly the hero-level stuff at Weta / ILM / Framestore isn't being done with with GPUs, as they require custom shaders, and they aren't going to be happy with just using the stock shaders (which are much better than stock shaders from 6/7 years ago, but still far from bleeding edge in terms of BSDFs and patterns).

Even from what I hear at Pixar with their lookdev Flow renderer things aren't completely rosy on the GPU front, although it is at least getting some use, and the expectation is XPU will take over there, but I don't think it's quite ready yet.

Until a studio feels GPU rendering can be used for a significant amount of the renders (that they do, for smaller studios, the fidelity will be less, so the threshold will be lower for them), I think it's going to be a chicken-and-egg problem of not wanting to invest in GPUs on the farms (or even local workstations).

Re: Pixar's Render Farm

#158

I'm surprised they hit only 80-90% CPU utilization. Sure, I don't know their bottlenecks, but I understood this to be way more parallelizable than that. I ray trace quake demos for fun at a much much lower scale[0], and have professionally organized much bigger installs (I feel confident in saying even though I don't know Pixar's exact scale). But I don't know state of the art rendering. I'm sure Pixar knows their wo…

maxing a CPU is easy, keeping it fed with data, and being able to save that data out is hard.

Yes, but the work units (frames) are large enough that I'm still surprised.

Maybe they're not as parallelizable as I'd expect. E.g. if there's serial work to be done by reusing scene layout algorithms between frames.

Re: Pixar's Render Farm

#159
post #36

I'm surprised they hit only 80-90% CPU utilization. Sure, I don't know their bottlenecks, but I understood this to be way more parallelizable than that. I ray trace quake demos for fun at a much much lower scale[0], and have professionally organized much bigger installs (I feel confident in saying even though I don't know Pixar's exact scale). But I don't know state of the art rendering. I'm sure Pixar knows their wo…

I suspect they mean core count utilization, not per core utilization. Ie there's some headroom left for rush jobs and a safety net, because full occupancy isn't great either.

Must be RAM then, because CPU is easy to prioritize.

Re: Pixar's Render Farm

#160

I'm surprised they hit only 80-90% CPU utilization. Sure, I don't know their bottlenecks, but I understood this to be way more parallelizable than that. I ray trace quake demos for fun at a much much lower scale[0], and have professionally organized much bigger installs (I feel confident in saying even though I don't know Pixar's exact scale). But I don't know state of the art rendering. I'm sure Pixar knows their wo…

My guess would be that the core-redistribution described in the OP only really works for cores on the same machine. If there's a spare core being used by none of the processes on that machine, a process on another machine might have trouble utilizing it because memory isn't shared. The cost of loading (and maybe also pre-processing) all of the required assets may outweigh the brief window of compute availability you'…

Yeah. With my pov-ray workload the least efficient part is povray loading the complex scene. And that's not multithreaded. The solution that works for me is that I can just start ncore frames concurrently, or just two, but stagger them a bit (thus there's always one frame doing parallelizable work and can use all cores, even if the other is not).

But at that point it may get into RAM constraint, or some as yet unmentioned inter-frame dependency/caching.

Post reply on HN