SysPad › Examples › VFX render farm

VFX render farm

A submission API queues frame-render jobs onto AWS Batch, which schedules them across an EC2 fleet sharing FSx for Lustre scratch storage during the render.

Job-shaped (not request-shaped) throughput, and Lustre throughput scaling with provisioned capacity rather than a fixed MB/s.

Artists Users Submission API API Gateway Render Farm (Batch) Batch AT LIMIT Lustre Scratch FSx Rendered Output S3

How it works

Submission API
Job submissions, not page loads. A couple per second is a busy studio, and the throttle is there to stop one runaway script queueing a million frames.
Render Farm (Batch)
Schedules frames onto the fleet and scales it back to nothing between renders. The queue is the point: submissions arrive in bursts and each job runs for minutes, so no artist waits on a scheduler.
Lustre Scratch
Shared scratch space every render node reads and writes during a job. Lustre throughput scales with provisioned capacity, which is the whole reason to pay for it over EFS or plain S3 here.

Lessons for this architecture

Other reference architectures

Open this architecture in SysPad · All examples