Frequently asked questions
What is gpuemu?
gpuemu is a GPU-less correctness oracle for deep-learning kernels. It validates CUDA/Triton kernels against a high-precision fp64 reference with op-schema-aware adversarial inputs, calibrated per-op tolerances, and static PTX/SASS lint — finding the silent numerical bugs that a single torch.allclose check misses.
How is gpuemu different from torch.allclose or torch.testing.assert_close?
The standard check runs one shape, one dtype, one seed. In a measured 26-op corpus that oracle accepted 9/9 LLM-style buggy kernels as correct. gpuemu replaces it with an operator-domain-aware regime that caught all 9 with zero false positives, and reports the exact seed, shape, and input snapshot for every failure.
Does gpuemu need a GPU to run?
No. The validation step runs without a GPU by comparing your kernel’s output against a CPU fp64 reference. You only need a GPU for the optional artifact (PTX/SASS) step. Failures reproduce byte-for-byte on a laptop because the RNG is bit-identical across Rust and Python.
What languages and frameworks does it support?
A Rust daemon and CLI (cargo install gpuemu) plus a Python client (pip install gpuemu) with adapters for PyTorch, JAX, and TensorFlow. Platforms: Linux (primary) and macOS (CPU validation).
Is gpuemu open source?
Yes. gpuemu is dual-licensed under MIT or Apache-2.0. An enterprise tier adds private rule packs, an on-prem daemon, and signed correctness reports.
What does “GPU-less” mean — can it really find GPU bugs without a GPU?
The correctness question is numerical: does the kernel compute the right values? gpuemu answers that by comparing your kernel’s output to a high-precision fp64 CPU reference across many op-schema-aware inputs. You run your kernel wherever it runs (GPU or not); gpuemu validates the result. Only the optional PTX/SASS lint step needs compiled GPU artifacts.
How does gpuemu fit into CI?
The CLI has a single `gpuemu ci` command that combines fuzzing, lint, and baseline-diff and emits JUnit, SARIF, Codecov, or PR-comment output — so it drops into GitHub Actions, GitLab CI, Codecov, and Sonar. Failures block the PR with a replay-seed link.
What is a signed Kernel Correctness Report?
An HTML report with a per-op × per-dtype × per-shape pass matrix, a run id, a SHA-256 of the result database, and an ed25519 signature. Anyone can verify it offline with one OpenSSL command — an SLA-grade evidence artefact for inference vendors. It is part of the enterprise tier.
What is gpuemu NOT?
It is not a cycle-accurate GPU emulator (it checks correctness, not timing), not a replacement for real hardware (final performance benchmarks still belong on the target GPU), and not a training framework (it is a kernel-level oracle, not a model-level one).
Stop shipping silently-wrong kernels
Open source, dual-licensed MIT / Apache-2.0. Validate your first kernel in five minutes — or talk to us about an enterprise pilot.