From 2f7635151e173e353d9105e4fef2aa343ea9a525 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Wed, 11 Nov 2026 10:50:17 -0500 Subject: wiki: 2026-11-11 status refresh - first non-black GPU frames + 45.4 s video; direct-GL GR ring resolves; CE-ring/window walls (STATE-CURRENT too) --- wiki/Execution-Frontier.md | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) (limited to 'wiki/Execution-Frontier.md') diff --git a/wiki/Execution-Frontier.md b/wiki/Execution-Frontier.md index 2dd70ae..fc076f1 100644 --- a/wiki/Execution-Frontier.md +++ b/wiki/Execution-Frontier.md @@ -14,7 +14,7 @@ > [`../docs/04-implementation/03-execution-frontier.md`](../docs/04-implementation/03-execution-frontier.md); > the docs tree wins on disagreement. -Status: 2026-11-09, tree `master @ df6e71bb`. +Status: 2026-11-11, tree `master @ 4acac093`. Tags: `[live]` observed; `[wip]` partial; `[wall]` current blocker; theories are labelled as such. @@ -101,15 +101,17 @@ nvidia-modeset/NvKms registers (`/dev/dri`), X settles, `glxinfo` reports OpenGL 4.6.0 with direct rendering, and the X DDX waits are fixed (class-aware display arm, `0x8000 -> 0` notification completion, decoded GL release applied); the direct GL client's GR and CE channels submit and retire, -and the X DDX kick channel is decoded. GZDoom reached `MAP01` once the DDX -push-buffer loop was unblocked, but on Mesa llvmpipe — not the emulated vGPU. -What is missing is **screen pixels through the NVIDIA path**: the 2D path is -green, the DDX 3D replay executes, and the first real GPU readback landed -(pbuffer `pixel=ff0000ff`), but the direct-GL client still emits only -setup/notify kicks (`ops_runs=0`) and a synchronous window draw wedges X. The -direct-GL draw capture and the window/screen present are the named walls. The -guest Vulkan pipeline's inline-to-memory upload arm is its gap. The full -picture lives on [`Graphics-Execution.md`](Graphics-Execution.md). +and the X DDX kick channel is decoded. The **first non-black GPU-rendered +output** landed: a pbuffer probe returns `pixel=ff0000ff`, the off-screen +path produced 500/500 animated 640x480 frames, and a 45.4 s video was +captured. The direct-GL **GR ring `0xbeef0100` now resolves** and its releases +advance; GZDoom reaches `V_Init: allocate screen` with its GL 4.6.0 context +whenever the shared nvClip `modeNum` is even. What is missing is **window/ +screen pixels through the NVIDIA path**: glxgears' window is black, the +direct-GL **CE ring `0xbeef0101` never resolves** (the guest wedges ~90 s +after `V_Init`), and X window creation wedges on some boots. The guest Vulkan +pipeline's inline-to-memory upload arm is its gap. The full picture lives on +[`Graphics-Execution.md`](Graphics-Execution.md). No breadth beyond these is claimed: Windows guests, migration and performance numbers remain planned. @@ -167,11 +169,13 @@ CUDA guests is in progress. **Issue D — the graphics pixel frontier.** The display/KMS stack and the GL client now run end to end (NvKms registers, X settles, GL 4.6, the DDX 3D -replay executes, and the first real GPU readback returns a red pbuffer -pixel); but the direct-GL client still emits only setup/notify kicks -(`ops_runs=0`), a window draw wedges X, and no non-black screen frame has -been produced. The direct-GL draw capture and the window/screen present are -the named blockers ([`Graphics-Execution.md`](Graphics-Execution.md)). +replay executes, the first non-black GPU-rendered frames and a 45.4 s video +are captured off-screen, and the direct-GL GR ring resolves with advancing +releases); but the direct-GL CE ring `0xbeef0101` does not resolve, a +window draw wedges X and glxgears' window is black, and no non-black window/ +screen frame has been produced. The CE ring, the window/screen present and X +stability are the named blockers +([`Graphics-Execution.md`](Graphics-Execution.md)). ## 6. Lines of investigation (live) @@ -185,9 +189,10 @@ the named blockers ([`Graphics-Execution.md`](Graphics-Execution.md)). 4. **Hold the acceptance battery** — vector-add, matrix-multiply and the transformer kernel; each entry is accepted only on its own verification output (`bad=0` + `STATUS OK`). -5. **The graphics pixel frontier** — materialise the driver's program - uploads and map the program VA so draws execute with real state; the lanes, - the walls and the milestone ladder are on +5. **The graphics pixel frontier** — resolve the direct-GL CE ring + `0xbeef0101`, make the window/screen present land, and stabilise X across + boots so the proven off-screen frames become window pixels; the lanes, the + walls and the milestone ladder are on [`Graphics-Execution.md`](Graphics-Execution.md). ## 7. Theories, resolved -- cgit v1.2.3