- Rust 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| jobfiles | ||
| shaders | ||
| src | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| README.md | ||
| sequence.toml | ||
p6\n\nProbably Programmed Properly, Pending Physical Proof
A next-generation, cross-vendor, zero-dependency GPU hardware diagnostic suite built in safe Rust using explicit Vulkan APIs.
p6 is designed to be a modern replacement for aging CUDA-based tools like gpu-burn. By leveraging Vulkan, it supports Intel, AMD, and NVIDIA hardware completely natively without proprietary SDKs. It isolates and tortures physical GPU silicon blocks that standard Compute APIs cannot reach.
Features
-
Total Hardware Saturation:
- FP32 & FP64 Compute: Standard math loops designed to maximize streaming multiprocessor utilization and catch ALU bitflips.
- AI Tensor Cores (
--tensor): LeveragesVK_KHR_cooperative_matrixto target proprietary Matrix hardware (Intel XMX, Nvidia Tensor, AMD Matrix) for immense FP16 MMA stress. - Hardware Ray Tracing (
--rt): Manually builds Bounding Volume Hierarchies (BLAS/TLAS) and spams Ray Queries (VK_KHR_ray_query) to torture dedicated optical traversal silicon. - PCIe Interconnect & Resizable BAR (
--pcie): Saturates the Host <-> Device motherboard bus by streaming direct toCpuToGpumapped VRAM. Identifies faulty PCIe riser cables and degraded Gen4/5 lanes.
-
Advanced Chaos Vectors:
- Voltage Droop Transients (
--transient): Rapid pulse cycling of workloads to induce massivedi/dtpower draw spikes to crash unstable VRMs and capacitors. - Cache Thrashing (
--thrash): Forces chaotic memory bounds to defeat L1/L2 caches and overwhelm the Translation Lookaside Buffer (TLB).
- Voltage Droop Transients (
-
Enterprise / Server Farm Ready:
- Hardware Fault Detection: Defeats driver Dead Code Elimination (DCE) to natively catch ALU bitflips and memory corruption via atomic error buffers.
- Multi-GPU Parallelism (
--all-gpus): Asynchronously dispatches threads to stress every physical graphics device on the system simultaneously. - Sequential Jobfiles (
--jobfile sequence.toml): Supportsstress-ngstyle TOML execution sequences. The engine cleanly drops and recreates the Vulkan context between jobs to guarantee zero VRAM leaks across hours-long validation suites. - JSON Export (
--json out.json): Dumps structured telemetry (PetaFLOPs computed, TeraRays cast, Petabytes moved, Faults) directly to disk for automated server ingestion.
Installation
cargo build --release
./target/release/p6 --help
Usage Examples
Run a standard Compute Burn on GPU 0 for 60 seconds:
p6 --c -t 60
Stress the Ray Tracing Cores across all installed GPUs for 15 minutes:
p6 --rt --all-gpus -t 900
Diagnose an unstable PCIe Riser cable:
p6 --pcie -t 10
Export metrics to JSON for CI/CD:
p6 --tensor -t 30 --json telemetry.json
Sequential Jobfiles
Create a sequence.toml file to run multiple workloads back-to-back:
[[jobs]]
workload = "pcie"
duration_s = 60
[[jobs]]
workload = "rt"
duration_s = 60
[[jobs]]
workload = "compute"
duration_s = 60
Execute the sequence:
p6 --jobfile sequence.toml --json full_report.json