Skip to content

WAVE

A universal GPU instruction set architecture.

WAVE gives GPU kernels a common instruction set and binary format. Its compiler accepts Python, Rust, C++, and TypeScript kernel source. Backends translate WAVE binaries to Metal, PTX, HIP, and SYCL for Apple, NVIDIA, AMD, and Intel GPUs.

Kernel source → WAVE compiler → .wbin → vendor backend → GPU
└→ emulator

The instruction set defines arithmetic, memory access, synchronization, control flow, and communication between lanes. Wave width and hardware resources remain explicit parameters. The emulator executes the same binaries for functional testing.

WAVE is licensed under Apache 2.0. The research paper describes the architectural analysis behind the ISA.