diff options
Diffstat (limited to 'wiki/System-Overview.md')
| -rw-r--r-- | wiki/System-Overview.md | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/wiki/System-Overview.md b/wiki/System-Overview.md index 3f2d3e2..6ad4d3e 100644 --- a/wiki/System-Overview.md +++ b/wiki/System-Overview.md @@ -7,7 +7,7 @@ > and [`../docs/03-architecture/10-interaction-and-scheduling.md`](../docs/03-architecture/10-interaction-and-scheduling.md) > for the full picture); the docs tree wins on disagreement. -Status: 2026-10-12, tree `master @ 2f066727`. Tags: `[live]` proven with the +Status: 2026-11-11, tree `master @ 4acac093`. Tags: `[live]` proven with the stock guest driver; `[gated]` implemented default-off; `[wip]` partial; `[wall]` current blocker; `[target]` designed end state. @@ -32,8 +32,10 @@ EMULATE (software; the guest expects virtual hardware) PASS THROUGH (real hardware; correctness and performance) GPU memory: guest VRAM objects backed by real VRAM [target] page tables / GMMU state used by the GPU [wip] - channel execution: guest push buffers on real channels [gated/wall] - compute (CUDA) and, later, 3D/video work [wip/planned] + channel execution: guest push buffers on real channels [wip] + compute (CUDA) kernel launches on the real engine [live] + 3D graphics method streams on the real engine [wip] + rendered 3D pixels / video work [wall/planned] DMA, completion and fault interrupts relayed to the guest ``` @@ -130,9 +132,25 @@ RPC from the guest to "firmware": payload round-trips). 5. CE-class copies are forwarded to the physical copy engine (default off) with engine-authored semaphore releases and a fault relay. For GR - (graphics/compute), a forwarded guest launch reaches the front-end but the - engine has not executed it yet — the current frontier + (graphics/compute), forwarded guest CUDA launches execute on the engine + with engine-authored completions relayed to the guest; the direct GL + client's GR and CE channels submit and retire, and graphics method streams + execute in three shapes ([`Graphics-Execution.md`](Graphics-Execution.md)); + rendered 3D pixels are the graphics frontier ([`Execution-Frontier.md`](Execution-Frontier.md)). +6. On the graphics side, the emulated display engine serves the modeset push + buffers and the display notifier/completion (class-aware arm), so + nvidia-modeset/NvKms registers (`/dev/dri`), X settles and `glxinfo` + reports OpenGL 4.6.0 with direct rendering; the direct GL client's + channels submit, the X DDX waits are fixed, the DDX 3D replay executes, + the 2D path is green, the first non-black GPU-rendered frames and a + 45.4 s video are captured off-screen, the direct-GL GR ring resolves with + advancing releases, and the guest Vulkan pipeline runs end to end. The + direct-GL CE ring `0xbeef0101` still does not resolve, a window draw + wedges X (glxgears' window is black), and X window creation wedges on some + boots, so the remaining gate is the window/screen present before the + first non-black window frame ([`OpenGL.md`](OpenGL.md), + [`Vulkan.md`](Vulkan.md)). ## 6. Where the detail lives |
