Relative CPU availability / live probe

Is the host busy,
or was it our frame?

A fixed-work WebAssembly loop runs off the main thread. Its slowdown is compared with frame timing to make slow-frame attribution less speculative.

Current CPU pressure

Warming up

Preparing and calibrating the Wasm loop…

Probe duration

baseline —

Calibration jitter

collecting signal

Probe duty

effective rate — timer resolution —

Signal 01

CPU load / Wasm slowdown

1× is the calibrated baseline · higher means less CPU available to this page

slowdown baseline
Collecting samples
60 seconds agonow

Signal 02

Frame delays

Only slow frames · height is time over one refresh interval

detecting Hz
page / render CPU stale probe
No slow frames in the last 60 seconds
0 slow frames this session 0 with CPU pressure

Probe setup

Sampling controls

Longer work improves precision but consumes more CPU. Recalibration intentionally burns one core for about a second.

Validation lab

Try to fool the probe

Block only the main thread

Frames should stall. The worker probe should stay close to 1×.

Saturate logical CPUs

Busy workers compete with both rendering and the probe.

Attribution log

Recent slow frames

  1. No slow frames observed yet.

Remote channel test

Find the fastest reliable symbol rate

Each decision is the integrated excess area under this receiver’s Wasm-slowdown curve. Frame delays are neither collected during the search nor used in its result.

Disconnected
Advanced decision settings

Fastest reliable observation

Connect both browsers with the same pair code. The search pauses the graphs while measuring and restores them afterward. For a visual check, open Binary sender and send a pattern at a fixed rate.

BER is the fraction of known 0/1 states decoded incorrectly. Δarea is the difference between integrated load and idle Wasm slowdown; a value near zero means there was no usable carrier.

  1. No trials run yet.