Gen1 virtual compute gateway architecture

Overview#

Gen1 provides a preconfigured development environment that emulates a nine‑dimension DPU using the simplest viable abstraction: nine ephemeral files, each mounted as a high‑performance temporary filesystem and treated as a “virtual dimension.” A single Virtual Compute Gateway (VCG) coordinates resonant time, triadic scheduling, and messaging across these dimensions, while workloads run as chrooted processes pinned to CPU/NUMA domains. No containers, no microVMs, minimal layers.

Objectives#

  • Emulate nine dimensions: Represent D1–D9 as mounted filesystems, each hosting processes, queues, and logs for that dimension.
  • Centralized resonant time: One daemon publishes phase windows; all dimensions subscribe and gate work on tokens.
  • Harmonic triads: Encode triadic, harmonic, nested loops across dimensions with consistent cadence and QoS “amplitude.”
  • Hardware‑near performance: Direct access to CPU/GPU/IO with minimal abstraction; predictable jitter and low overhead.
  • Ephemeral by default: Fresh state on every boot; optional snapshot‑on‑failure for debugging.

Virtual DPU with nine files#

  • Dimension mounts:

    • Layout: /var/lib/vcg/d{1..9}.img → loop devices → mounted at /vcg/d{1..9}.
    • Defaults: ext4 without journal, tuned for writeback and low latency; tmpfs for ultra‑low‑jitter dimensions.
  • Isolation model:

    • Process scope: One or more processes per dimension in a chroot rooted at /vcg/dX.
    • Access control: Bind only required device nodes (e.g., GPU) per dimension; avoid leaking host FS.
  • State model:

    • Ephemeral: Recreated at boot. No snapshots, no backups, no persistence by default.
    • Debug override: Optional snapshot‑on‑failure captures the mounted image for post‑mortem.

Process model and orchestration#

  • Core services:

    • Resonant time daemon (RTD): Publishes window ticks and phase to a Unix socket and shared memory ring.
    • VCG orchestrator: Mints tokens per dimension per window, applies QoS amplitude, routes cross‑dimension work, and exports metrics.
    • Dimension workloads: Entry points per D1–D9 read tokens and execute tasks at window edges.
  • Scheduling mechanics:

    • Tokens: Time‑scoped execution credits issued at each window; enforce burst control and backpressure.
    • Harmonics: Dimensions assigned to f, 2f, 3f, etc., to avoid beat‑frequency contention.
    • **CPU/NUMA: Pin dimensions to cores and memory nodes to minimize cross‑socket jitter.
  • IPC:

    • Intra‑host: Unix domain sockets and shared memory for lowest overhead; optional lightweight broker (NATS) if routing/observability desired.
    • External: gRPC/HTTP for client integrations, routed through VCG, not directly cross‑dimension.

Dimension roles and cadence#

  • Suggested role mapping (modifiable):

    • D1–D3: Ingress, parsing, lightweight transforms (higher frequency, small window).
    • D4–D6: Retrieval/stateful processing/model serving (base frequency, medium window).
    • D7–D9: Aggregation, reconciliation, output/archival (lower frequency, larger window).
  • QoS as amplitude:

    • Budget weights: Per‑dimension weight tunes token budget per window.
    • Borrowing: Temporary amplitude increase for a bursting dimension with guardrails to prevent starvation.

Decisions and constraints#

  • Decisions:

    • Abstraction: Nine files as virtual dimensions; chrooted processes; no containers.
    • Filesystem: ext4 without journal by default; tmpfs selectively.
    • Time: Single RTD; no per‑dimension clocks.
    • IPC: Unix sockets/shared memory; optional NATS later.
    • Persistence: Ephemeral by default; snapshot‑on‑failure opt‑in.
  • Constraints:

    • Loopback overhead: Acceptable for most dimensions; use tmpfs where needed.
    • Priority inversion risk: Must enforce cgroups, CPU affinity, and token budgets.
    • Portability: Validate on at least one local VM, one cloud VM, and bare‑metal host.