Load Generator
Load Generator operator properties for Script Engine. Deliberately consumes CPU and/or GPU time so a project can be stress-tested. Useful for measuring how the system behaves under heavy load — checking real-time stability, reproducing intermittent issues that only show up when the machine is busy, and validating that headroom exists for the planned production. Configure how many threads, how much work per thread, and how often to fire — every frame or on a random schedule.
| Property | Type | Access | Description |
|---|---|---|---|
Frequency |
LoadFrequency |
get/set |
How often the load burst is applied. [default=EveryFrame]. EveryFrame keeps the system continuously loaded — best for steady-state stress testing. The random options (10%, 1%, 0.2%, 0.1%) trigger occasional bursts — useful for hunting down problems caused by transient spikes rather than sustained load. |
LastLoadTimeString |
string |
get |
Wall-clock time of the most recent load burst, formatted as HH.mm.ss.fff (read-only). Useful when running with a low frequency to confirm bursts are actually firing. |
ComputeTime |
int |
get/set |
Sleep duration applied to the render thread on each burst, in milliseconds. [min=0, max=100, default=0]. 0 means no sleep. Higher values stall the render thread, simulating a slow operator in the chain — good for confirming downstream behaviour when one operator goes slow. |
CpuThreads |
int |
get/set |
Number of background CPU worker threads to spin up on each burst. [min=0, max=100, default=1]. 0 disables CPU load. Each thread runs an arithmetic workload sized by CpuLoadPerThread. Raise both together to add real CPU pressure beyond the render thread. |
CpuLoadPerThread |
int |
get/set |
Amount of arithmetic work each CPU thread does. [min=0, max=100, default=0]. 0 makes CpuThreads effectively a no-op. Higher values run more iterations per thread, increasing CPU usage. Tune with CpuThreads to dial in a target CPU load level. |
GpuLoadPerThread |
int |
get/set |
Number of dummy GPU operations launched per CPU thread on each burst. [min=0, max=100, default=0]. 0 disables GPU load. Higher values keep the GPU busy with no-op work, useful for verifying GPU headroom and how the system behaves when the GPU is saturated. |
GpuUseTask |
bool |
get/set |
When true, GPU work is dispatched on background tasks instead of the render thread. [default=false]. Disabled means each burst runs synchronously on the render thread (and blocks it). Enable to push GPU work to the background — closer to how a real heavy operator would behave, and lets you stress the GPU without stalling the main pipeline. |
Inherits from: AbstractOperator, AbstractAudioMetering.
See also: Load Generator in Operators — user-facing introduction, screenshots, and section summaries.