Guides

Licensing a render farm

Offline activation at rack scale — seats on headless nodes without a browser in sight.

Render nodes are the worst-case licensing client: no browser, often no internet, imaged from a common template. This guide runs the offline activation flow at rack scale.

Do not bake an activated seat into a machine image. The license fingerprint covers GPU and motherboard — clones fail validation on first cook and show up in your dashboard as conflicting activations.

The flow

Generate requests on every node

Photon and Matter ship a headless license tool next to the DLL — scriptable over your farm's remote execution:

Per node, via your farm manager
& "C:\Program Files\Derivative\TouchDesigner\Plugins\PhotonRTXPT\nops-license.exe" `
  request --out \\filer\licenses\requests\$env:COMPUTERNAME.request

Bulk-upload in the dashboard

Dashboard → Seats → Offline activation accepts a zip of request files and returns a zip of seat.license files, one per node, named by machine.

Distribute the license files

Back out over the same channel
Copy-Item "\\filer\licenses\issued\$env:COMPUTERNAME.license" `
  -Destination "C:\Program Files\Derivative\TouchDesigner\Plugins\PhotonRTXPT\seat.license"

Nodes pick the file up on the next TouchDesigner launch — no reboot.

Verify from the farm manager

The tool exits nonzero on an unlicensed node, so your farm's health check can gate dispatch:

& "...\nops-license.exe" status --quiet   # 0 = licensed

Swapping hardware

GPU replacement invalidates that node's fingerprint. Deactivate the seat in the dashboard before the swap and reissue afterwards — takes two minutes and avoids the conflicting-activation flag.

Farm seats are ordinary seats — same price, same dashboard. If a node dies mid-season, dashboard-deactivate it and the seat is immediately free for the replacement.

On this page