This is a high-precision diagnostic tool for identifying how different compositors manage frame scheduling and presentation under load. Built with Rust and WGPU, it uses a heavy raymarched shader to stress-test your display stack, exposing which environments maintain a smooth, responsive pipeline and which ones collapse into stutter and lag, even when the hardware is still fast enough to keep up.
- Pacing Detection: Captures micro-stutters invisible to raw FPS counters by measuring the precise gap between every hardware-level frame presentation.
- Compositor Benchmarking: Automatically identifies the "saturation threshold", the exact limit where the compositor fails to maintain perfect V-Blank alignment. The benchmark captures the moment a single hardware frame-slot is missed and report it.
- V-Sync Profiling: Catches "Back-Pressure", a glitch where missing one frame causes a pile-up that spikes input lag and makes the system feel sluggish.
For a detailed breakdown of the metrics and internal mechanics, see the Project Wiki:
To get accurate metrics, you must compile with the release profile to minimize CPU-side scheduling interference and driver overhead:
cargo build --release
target/release/frame-test --connector DP-1 --bench-secs 3 --mode fifo
This project is licensed under the GNU General Public License v3.0. See the LICENSE file for the full text.
