Skip to content

Graphics

All topics

Note Type Scope Confidence
Clipping WebKit’s compositing to the damaged rectangles is worth ~8% and 3 C on taimen, not a step change finding device:google-taimen proven
Epiphany on YouTube is a memory ceiling, and the GPU buffers are charged to its cgroup finding device:google-taimen proven
Epiphany’s frame on m.youtube.com is ~20 ms of TextureMapper CPU walking 315 layers plus a ~10 ms GPU/FrameDone tail, serialized – the kernel sees two submits per frame, so a5xx batch overhead is not the limit finding soc:msm8998 proven
Epiphany’s window updates at 12-30 fps on YouTube because WebKit’s compositor thread spends 35-50 ms per frame on a 237-layer page – not the video, not GTK, not the GPU clock, not damage tracking finding device:google-taimen proven
A GPU reset aborts phosh, not phoc – the session restarts and looks like a reboot finding device:google-taimen proven
The unpainted band during a fast fling is a 200 ms record() on the WebKit main thread, and no prepaint knob bridges it finding generic proven
Epiphany’s frame period is CPU paint PLUS the GPU tail, serialized – frameDone to next frame start is 0.1 ms finding device:google-taimen proven
Epiphany’s frame period is pinned at 2 refreshes because the CPU paint alone exceeds one – every sub-quantum optimisation measures as neutral finding device:google-taimen proven
The browser’s whole WebKit environment lived in ~/.config and a rootfs reflash deleted it, which reads as four separate new bugs finding generic proven
WebKitGTK’s frame loop allows one frame in flight, released from GTK’s snapshot(); on a5xx every render pass is a separate kernel submit – so the compositor’s cost is passes, not pixels finding soc:msm8998 proven
wlroots drops every client texture on a renderer swap and never re-imports one, so static layer-surfaces stay blank after a GPU reset finding generic proven
A browser launched from ssh, systemd-run –scope, or set-environment does not get environment.d – and on taimen that means Skia-GPU trap generic proven
An arm behind the phosh lockscreen measures a still page, and it looks exactly like the change under test breaking WebKit trap device:google-taimen proven
One browser arm cannot resolve anything under ~10% here: the same build gave 29% and 73% frames-over-budget trap device:google-taimen proven
The DPU vsync counter is phoc’s output rate, not the app’s – a browser scrolling at 30 fps and presenting video at 15 fps both read “60 fps, 0 jank trap generic proven
Writing msm’s reset debugfs faults the GPU but no client loses its context, so it cannot test GPU-reset recovery trap soc:msm8998 proven