summaryrefslogtreecommitdiffstats
path: root/docs/04-implementation
diff options
context:
space:
mode:
Diffstat (limited to 'docs/04-implementation')
-rw-r--r--docs/04-implementation/01-known-knowns-and-unknowns.md12
1 files changed, 12 insertions, 0 deletions
diff --git a/docs/04-implementation/01-known-knowns-and-unknowns.md b/docs/04-implementation/01-known-knowns-and-unknowns.md
index 0c8e50f..084afc8 100644
--- a/docs/04-implementation/01-known-knowns-and-unknowns.md
+++ b/docs/04-implementation/01-known-knowns-and-unknowns.md
@@ -67,6 +67,18 @@ listed as an unknown-unknown has a *method* by which we will discover it.
* The client's page-table contract for server-owned ranges is explicit
(`COPY_SERVER_RESERVED_PDES`) — and its leaf levels are *empty*, i.e. ours to
populate.
+* **End-to-end CUDA works in emulation mode.** A stock CUDA program in the
+ guest (device properties, `cudaMalloc`, a GPU-authored string kernel, two
+ 4 MB host-to-device copies, a 1 M-element `vectorAdd`, and the
+ device-to-host copy-back) completes with `bad=0` against the host-computed
+ reference and the expected checksum. The host-side bridge executes the
+ client's kernels on the physical GPU, and the emulated CE path stages the
+ data in and out. Two correctness invariants are required and verified:
+ a decoded copy executes at most once per GPFIFO entry identity, and every
+ virtual operand is translated per 4 KB page (see
+ [`../03-architecture/06-host-module-and-hybrid-model.md`](../03-architecture/06-host-module-and-hybrid-model.md) §4.4).
+ The acceptance is deterministic across consecutive supervised cycles
+ (identical input/output hashes and checksum).
### 1.4 Operational