Network rendering in AE with CC
1. I have 2 offline render nodes which I use for distributed rendering for 3D with vray - can I make use of these to help render out AE comps as image sequences.
Currently my laptop and iMac workstations are licensed for CC so would I need to buy a seperate licence for the render nodes?
2. General question about rendering in AE - is it a single or multithreaded application? The render nodes are 16 core each (32 threads) can I make use of the full power of these machines?
3. Assuming network rendering is possible - where are completed files saved? Locally on each render node or sent back to main workstation?
Below is my standard explanation of Ae's "watch folder" network render. Since you're already familiar with render control from a 3D application, you might consider using your current render farm management system to control aerender, instead of relying on Ae's very naive built-in network render system.
With respect to your specific question about multi-threading, Ae is multithreaded, but this applies more to some effects than others. The current releases render only a single frame at a time; in Ae CC 2014 and previous, Ae could render multiple frames at the same time by launching multiple instances of the renderer in the background. This works reasonably well on big multi-core machines with LOTS of RAM.
Let me know if you have any questions after reading below:
Let me first outline how network rendering works with After Effects, and then I will list a couple of bullet point notes from my experiences with network rendering. Much of this information is found in the documentation [link], but some of is not. All of it was learned the hard way.
How After Effects Network Rendering Works
You use Collect Files to get your project, its render queue, and all required footage together into a single folder. You configure the render nodes to watch that folder; once Collect Files is complete, it creates a render control file. On the render nodes, you select the folder to watch. When the render control file appears in it, the render nodes begin work according to the options it specifies. All watch folder network renders are done as image sequences, with each instance of AE on each render node working on one frame at a time.
There is no active communication among the render nodes, and the machine hosting the watch folder does not actively control them. Control is completely passive -- each machine looks at the shared storage to see if "Frame 0000" has been rendered yet. The first one to see that there is no image for "Frame 0000" will create that first file in the image sequence to claim responsibility for the frame, then begin rendering it. Finally, when the frame is complete, it overwrites the placeholder "Frame 0000" file.
As other render nodes join the party, they will see that "Frame 0000" already exists, so they will skip it and look for "Frame 0001." If "Frame 0001" already exists, they'll continue sequentially until they find the first frame that doesn't exist, create a file for it to claim responsibility for it, and begin rendering.
All the render nodes are also accessing footage from the shared storage, so that storage system is seeing many constant small reads and writes.
As you can imagine, this places some serious strain on the network and disk subsystem on the server.
Notes on After Effects Network Rendering
Designer & Mad Scientist at Keen Live [link]
Motion Graphics, Widescreen Events, Presentation Design, and Consulting
@keenlive [twitter] | RenderBreak [blog] | Profile [LinkedIn]