Lab / / observation
Two frames in three seconds, and a mechanism for the rest
The project states 2 frames drawn in a 3 s idle run and derives one frame per minute from it. The mechanism is committed; the number is not reproducible from the repo.
Rendering, Measurement methodology, Benchmarkingraspboard- Machine
- UNKNOWN — "the dev machine"
- Commit
- UNKNOWN
- Frames drawn in a 3 s idle run
- 2
- First frame after process start
- 187–450 ms
- Derived claim
- about one frame per minute
The project says this in two places. The ADR reads *"Measured: 2 frames drawn in a 3 s idle run"*. The README reads *"Event-driven rendering: a static dashboard draws about one frame per minute"*. Both say "measured on the dev machine". Neither names a machine, a date, or a script.
There is no benchmark script, no test, and no recorded result file anywhere in the repository. I cannot re-derive either figure from what is committed.
What is verifiable
The mechanism is committed, in `src/app/Application.cpp` lines 275–294. The loop timeout is the minimum of a 1000 ms config poll tick, the time to the next minute, a 33 ms budget for the crossfade, and a 50 ms budget for the Ken Burns effect, clamped between 5 and 1000 ms, with the loop parked in `SDL_WaitEventTimeout`.
int timeout = 1000; // config poll tick
timeout = std::min(timeout, <time to next minute>);
timeout = std::min(timeout, 33); // ~30fps crossfade
timeout = std::min(timeout, 50); // ~20fps Ken Burns
return std::clamp(timeout, 5, 1000);So the design is demonstrably event-driven, and "one frame per minute" is an extrapolation from a 3-second window rather than a reading. The extrapolation points the conservative way — it understates the work rather than overstating it — but it is still an extrapolation.