summaryrefslogtreecommitdiffstats
path: root/wiki/System-Overview.md
diff options
context:
space:
mode:
Diffstat (limited to 'wiki/System-Overview.md')
-rw-r--r--wiki/System-Overview.md28
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