GPUs are widely used in machine learning tasks including both training and inference, making them key components a performant machine learning ecosystem. Rust's GPU support, particularly around Geneneral-Purpose GPU (GPGPU) and compute shaders is incomplete, but a number of efforts including the WebGPU ecosystem, as well as CUDA and OpenCL are making progress.
GPU Computing
wgpu [ crate · repo · docs ]
Rusty WebGPU API wrapper
vulkano [ crate · repo · docs ]
Safe wrapper for the Vulkan graphics API
cudarc [ crate · repo · docs ]
Safe wrappers around CUDA apis
ocl [ crate · repo · docs ]
OpenCL bindings and interfaces for Rust.
blas [ crate · repo · docs ]
The package provides wrappers for BLAS (Fortran).
dfdx [ crate · repo · docs ]
Ergonomic auto differentiation in Rust, with pytorch like apis.
wonnx [ crate · repo · docs ]
Wonnx is an ONNX runtime based on wgpu aimed at being a universal GPU runtime, written in Rust.
cuda_std [ crate · repo · docs ]
Standard library for CUDA with rustc_codegen_nvvm
arrayfire [ crate · repo · docs ]
ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA, OpenCL and native CPU) make it platform independent and highly portable. A few lines of code in ArrayFire can replace dozens of lines of parallel computing code, saving you valuable time and lowering development costs. This crate provides Rust bindings for ArrayFire library.
cudnn [ crate · repo · docs ]
safe Rust wrapper for CUDA's cuDNN
rustacuda [ crate · repo · docs ]
CUDA Driver API Wrapper
rust-gpu [ crate · repo · docs ]
Making Rust a first-class language and ecosystem for GPU graphics & compute shaders
cumath [ crate · repo · docs ]
Cuda-based matrix/vector computations
collenchyma [ crate · repo · docs ]
high-performance computation on any hardware
em [ crate · repo · docs ]
A macro for executing a subset of Rust with OpenCL
coaster [ crate · repo · docs ]
high-performance computation on any hardware
parenchyma [ crate · repo · docs ]
A high-performance computing (HPC) framework
emu_core [ crate · repo · docs ]
A low-level modular, extensible GPGPU compute library with cross-platform support
cublas [ crate · repo · docs ]
safe Rust wrapper for CUDA's cuBLAS
Looking for something you didn't find? Try asking on Zulip chat.