gpuTimings property

  1. @override
Stream<GpuFrameTimings> get gpuTimings

Each frame's GPU timings, a frame or two after it was encoded — since 1.0.0-rc.2, when it replaced onGpuTimings(listener), whose one slot a second caller took from the renderer. A broadcast stream: the renderer, a profiler and a test each listen without taking the others' timings, and a backend measures only while something listens.

The engine does not listen on a device whose features lack DeviceFeature.gpuTimestamps; a backend without the feature may still answer a caller that listens, with what it can measure and its doc saying what that is (Impeller times each labelled pass from submission to completion, and puts it on the Dart timeline). Empty here, which reads as "nothing measured".

Implementation

@override
Stream<GpuFrameTimings> get gpuTimings => _timings.stream;