oxicuda-levelzero-0.1.1 has been yanked.
oxicuda-levelzero
Part of the OxiCUDA ecosystem — Pure Rust CUDA replacement for the COOLJAPAN ecosystem.
Overview
oxicuda-levelzero provides a LevelZeroBackend that implements the ComputeBackend trait from oxicuda-backend using Intel's oneAPI Level Zero API. It targets Intel Arc, Xe, and integrated GPUs on Linux and Windows by loading libze_loader.so / ze_loader.dll at runtime via libloading, with no C SDK dependency at compile time.
Features
LevelZeroBackendimplementing the fullComputeBackendtrait (GEMM, conv2D, attention, reduce, unary/binary ops, memory management)- Runtime driver loading via
libloading— zero link-time dependency on the Intel GPU driver - SPIR-V kernel support via the
spirvmodule for cross-vendor shader compilation - Device enumeration and selection via the
devicemodule - Memory management with unified shared memory (USM) via the
memorymodule - Compiles on all platforms; returns
UnsupportedPlatformon macOS so cross-platform workspaces are unaffected
Platform Support
| Platform | Status |
|---|---|
| Linux (Intel GPU) | Full support via libze_loader.so |
| Windows (Intel GPU) | Full support via ze_loader.dll |
| macOS | Compile-only; returns UnsupportedPlatform at runtime |
Usage
Add to your Cargo.toml:
[]
= "0.1.1"
use LevelZeroBackend;
use ComputeBackend;
let mut backend = new;
backend.init?;
let ptr = backend.alloc?;
// ... copy data, run kernels ...
backend.free?;
License
Apache-2.0 — © 2026 COOLJAPAN OU (Team KitaSan)