summaryrefslogtreecommitdiffstats
path: root/STATE-CURRENT.md
diff options
context:
space:
mode:
Diffstat (limited to 'STATE-CURRENT.md')
-rw-r--r--STATE-CURRENT.md20
1 files changed, 13 insertions, 7 deletions
diff --git a/STATE-CURRENT.md b/STATE-CURRENT.md
index 3aae1ef..ee6cb5a 100644
--- a/STATE-CURRENT.md
+++ b/STATE-CURRENT.md
@@ -30,7 +30,7 @@ meant to execute on the physical GPU.
| CUDA userspace: `cuInit`, `cuDeviceGetCount`, `cuDeviceGet` | ✅ |
| `cuCtxCreate` returns | ✅ (the whole smoke test now completes) |
| `cuMemAlloc` + `cuMemcpy` roundtrip (`ALL OK` in the smoke test) | ✅ payload roundtrip verified 64/64 in the guest |
-| Full `nvidia-smi` output / kernel launch | 🟡 the static runtime now initializes (`rc=0`) and queues a kernel launch; execution awaits the backend |
+| Full `nvidia-smi` output / kernel launch | 🟡 the static runtime now initializes end-to-end with **real releases** (`cudaGetDeviceCount`/`cudaSetDevice`/3×`cudaMalloc`/2×`cudaMemcpyHtoD`/`kernel launch`/`cudaGetLastError` all `rc=0`) and queues a kernel launch; execution awaits the backend |
| CUDA kernel execution (`vectorAdd`) | ❌ not started (forwarding layer absent) |
| Graphics (3D), video | ❌ |
| Faults, multi-version, Windows, migration, multi-tenancy, performance | ❌ |
@@ -78,12 +78,18 @@ chain succeeds.
clock-domain probe inside libcuda (two device attributes) whose three
legacy clock controls were answered with zeros; they are now populated
with exactly the fields the helper checks.
-- **Caveat**: the rc=0 init chain above was obtained in fast-release mode;
- under real releases the runtime-init path still needs the pin/translation
- work (the smoke-test baseline is already correct under real releases).
-- Active work: (1) real-release delivery for the runtime init (pin/translation
- work); (2) decode the queued compute-channel pushes into real submissions on
- the physical GPU (the execution backend); then the synchronize/DtoH verify.
+- **Real-release mode now reaches the same rc=0 chain**: the earlier
+ per-push 8 s stall was two pump bookkeeping bugs (release detection keyed on
+ an unchanged semaphore VA; rewind replays re-entering the CE grace path) -
+ both fixed, and the runtime init completes in ~1 min with real releases.
+ The content rescue also learned the real method encoding (NON_INC/IMMD/
+ ONE_INC/END_PB headers).
+- Active work: (1) rerun the driver-API smoke test (cdt2) on the current
+ module to confirm no regression, and confirm the two known gaps (GMMU walks
+ for runtime VAs, staging-VA resolution) are non-blocking; (2) the execution
+ backend: decode the queued compute-channel pushes into real submissions on
+ the physical GPU; then the synchronize/DtoH verify. The host is headless,
+ so a controlled device-ownership bring-up is feasible.
Work resumed with no-watcher, real-release runtime cycles: a new commit
delivers the UVM tracking releases without host-side pins, and one
real-release, no-watcher run has reached `cudaGetDeviceCount` success; the