Skip to content

Add gated Windows SA3 CUDA foundation - #129

Closed
brxs wants to merge 11 commits into
codex/107-integrationfrom
codex/114-windows-sa3-cuda
Closed

Add gated Windows SA3 CUDA foundation#129
brxs wants to merge 11 commits into
codex/107-integrationfrom
codex/114-windows-sa3-cuda

Conversation

@brxs

@brxs brxs commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add a gated Windows PyTorch/CUDA candidate for Stable Audio 3 Small Music and SFX while keeping TFLite as the release-ready default and fallback
  • consume the pinned upstream magenta-community/magenta-realtime-2 runtime as a dependency; no fork or vendored runtime code
  • use one candidate Windows GPU environment for MRT2 and SA3, with a cross-process priority/VRAM broker so realtime MRT2 can preempt disposable background SA3 jobs
  • isolate SA3 generation in an authenticated one-shot worker with bounded requests, cancellation, crash/OOM containment, provenance checks, and canonical 44.1 kHz stereo PCM16 output
  • fail closed at install/runtime boundaries until the gated model inventory and physical Windows NVIDIA qualification are complete
  • serialize shared MRT2 worker model switches so the old CUDA generation is reaped before replacement allocation, avoiding transient minimum-VRAM OOMs

Stack note

This draft targets codex/107-integration. The base already contains #110, but not the portable SA3 TFLite work, so this diff intentionally includes #127 (#111) until integration absorbs it. The managed service-manifest launcher is landing separately; this branch's worker contract is ready for its sa3-pytorch-cuda service key but no production CUDA manifest is enabled yet.

Release gates still open

  • Unified runtime requalification: the resolvable shared lock uses PyTorch/torchaudio 2.7.1+cu126, Hugging Face Hub 1.7.1, Transformers 5.8.0, and NumPy 2.3.5. MRT2 must be requalified on this exact stack before it can replace the Add a production PyTorch MRT2 backend for Linux and Windows #110 baseline.
  • Gated artifact inventory: Stability AI Community/Gemma-gated access is required to record every Small config/nested asset hash. The pin deliberately says releaseReady: false and the installer rejects it. Add third-party model licensing, attribution, and download acknowledgement #108 owns the authenticated compliance/provenance workflow.
  • Physical hardware: the provisional CUDA 12.6 driver floor is Windows NVIDIA driver 560.76, but driver/runtime compatibility, measured VRAM reservations, parity, performance, cancellation, OOM recovery, process cleanup, and the 10-minute dual-deck zero-underrun run remain unqualified on real Windows hardware.
  • Medium model: Medium remains on TFLite because it needs FlashAttention 2 and there is no qualified official Windows wheel; unofficial wheels are not accepted.
  • Selection behavior: Auto remains on TFLite. Explicit GPU requests fail clearly while gated and never silently fall back. A developer-only opt-in exists solely for qualification.

Validation

  • focused CUDA policy, worker, broker, MRT2 integration, pin, and SA3 contract suite: 73 passed
  • Rust shared stop/reap-before-spawn and launch/model-load recovery regression: passed
  • existing nonshared per-deck launch-first restart regression: passed
  • Rust clippy for app library/tests with warnings denied: passed
  • Python Ruff lint and format checks: passed
  • pin audit with --allow-incomplete: passed, correctly reporting the candidate as release-blocked
  • broader branch validation: frontend 659 passed and production build passed; Rust workspace 277 passed, 2 ignored, with two sandbox-denied loopback/process tests passing when run with their required local permissions
  • Windows cross-check reaches native dependency compilation, then is blocked on this macOS host by the absent Windows SDK (assert.h), so native Windows CI/hardware remains required

Progresses #114.

@brxs

brxs commented Aug 10, 2026

Copy link
Copy Markdown
Collaborator Author

Superseded by and fully consolidated into #131. The combined branch includes this lane's substantive changes, subsequent integration fixes, and exact-head cross-platform validation. Please continue review in #131.

@brxs brxs closed this Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant