HomeComputer ScienceRender Pipeline Backpressure: Frame-Budget Queue Simulator

Render Pipeline Backpressure: Frame-Budget Queue Simulator

Interactive 2D queueing-theory simulator: frame requests arrive at a target refresh rate and queue for a single render server whose service time depends on the active enhancement tier, driving the same EMA-smoothed hysteresis ladder as the 3D version, verified live against Little's Law.

Computer Science2DModerate60 FPS📱 Mobile-adapted⇄ 3D version
2d-mobile-progressive-enhancement ↗ Open standalone

A real renderer doesn't just guess how expensive a frame will be — it measures how long the last one actually took to reach the screen. This 2D simulator models that honestly as a single-server queue: frame requests arrive at a fixed vsync cadence (the target frame budget) and queue up for one render server whose service time is set by the currently active enhancement tier and a device-stress multiplier. Watch frames stack up as colored dots waiting in line, slide through the server while being serviced, and exit — or, if the server can't keep up, get dropped outright once the queue overflows, exactly like real jank. Every measured completion time feeds the same EMA-smoothed, asymmetric-hysteresis tier controller as the 3D version, and the live Little's Law readout (L̄ = λ·W̄) lets you check the simulated queue's own statistics against queueing theory in real time.

⚙ Under the hood

A single-server queueing simulation: frame requests arrive at a fixed vsync cadence and wait for one render server whose service time depends on the active enhancement tier, driving the same EMA-smoothed hysteresis ladder as the 3D version, with a live Little's Law (L̄ = λ·W̄) check against the measured queue statistics.

queueing theorylittle's lawhysteresisframe budgetmobile performancebackpressure

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)