API

Interface RenderTaskGpuTimings

Latest per-task GPU timing snapshot for an engine.

interface RenderTaskGpuTimings {
    droppedTaskCount: number;
    enabled: boolean;
    error?: string;
    frameIndex: number;
    status: RenderTaskGpuTimingStatus;
    supported: boolean;
    tasks: readonly RenderTaskGpuTiming[];
    totalDurationMs: number;
}
Index
droppedTaskCount: number

Number of tasks skipped in that frame because the profiler's query-set capacity was exceeded.

enabled: boolean

Whether task timing is currently enabled and recording future frames.

error?: string

Readback failure message when status === "error".

frameIndex: number

Monotonic profiler frame index for the snapshot. 0 means no measured frame has completed yet.

unsupported when the WebGPU device lacks timestamp-query; pending until the first readback lands.

supported: boolean

Whether this engine's device exposes WebGPU timestamp queries.

tasks: readonly RenderTaskGpuTiming[]

Measured tasks in frame execution order. Empty until status === "available". Tasks that issue no render or compute pass are omitted because standard WebGPU timestamps attach to passes.

totalDurationMs: number

Elapsed GPU time from the earliest measured task begin to the latest measured task end. Task intervals may overlap on the GPU, so summing tasks[].durationMs can overcount this total.