fishbowl
loading…
each column is one frame, newest on the right.
frame time, 0–50ms. the faint line is one screen refresh (…).
a dropped frame: longer than 1.5× a refresh. this is what lag looks like.
sim time: fish movement and the cursor flee logic. it's the same work under every renderer. log scale, 0.01–10ms, so tiny costs still show.
moving the cursor raises the aqua line a little. red only shows up when the whole frame runs late: add fish or switch to two.
benchmark
same seeded fish, same frames, six renderers. run 10s = 2s warmup + 10s measured. ramp = ×1.25 fish every 2s until p95 frame time > 18ms. cpu = update + render on the main thread (gpu work is not included). heap is chromium only.