• Switch to Warm
  • Switch to Cool
  • Workspace
  • Projects
  • Notes
← Notes

VTK Frame Timing on Jetson — Read from vtkRenderWindow, Not the Pipeline

Quick note

Published May 12, 2026

When profiling render performance on Jetson, vtkRenderWindow::GetActualTimeStamp() gives wall-clock frame time more reliably than trying to instrument the pipeline with vtkPipelineMonitor or timing individual actors. The pipeline timer counts CPU-side work only — it misses the GPU sync stall that shows up as dropped frames on embedded hardware with shared CPU/GPU memory.

One catch: GetActualTimeStamp() returns microseconds since some platform- specific epoch, not a duration between frames. You need to snapshot it at the end of each render and diff manually. Pair it with vtkRenderWindow:: ReportRenderWindowStatistics() off in debug builds for per-pass breakdowns, but leave it off in production — the string formatting cost is non-trivial on low-power ARM.