burn/burn-wgpu
David Chavez 71d3c1d142
chore(infra): Share some properties across workspace (#1039)
2023-12-12 09:39:07 -05:00
..
benches WGPU: Support elemwise operation fusion (#948) 2023-11-15 15:13:37 -05:00
src Feat/fusion/cache (#1020) 2023-12-01 12:05:11 -05:00
Cargo.toml chore(infra): Share some properties across workspace (#1039) 2023-12-12 09:39:07 -05:00
LICENSE-APACHE Feat/wgpu backend setup (#376) 2023-06-02 11:52:47 -04:00
LICENSE-MIT Feat/wgpu backend setup (#376) 2023-06-02 11:52:47 -04:00
README.md Chore/release (#1031) 2023-12-01 14:33:28 -05:00

README.md

Burn WGPU Backend

Burn WGPU backend

Current Crates.io Version license

This crate provides a WGPU backend for Burn using the wgpu.

The backend supports Vulkan, Metal, DirectX11/12, OpenGL, WebGPU.

Usage Example

#[cfg(feature = "wgpu")]
mod wgpu {
    use burn_autodiff::Autodiff;
    use burn_wgpu::{AutoGraphicsApi, Wgpu, WgpuDevice};
    use mnist::training;

    pub fn run() {
        let device = WgpuDevice::default();
        training::run::<Autodiff<Wgpu<AutoGraphicsApi, f32, i32>>>(device);
    }
}

Configuration

You can set BURN_WGPU_MAX_TASKS to a positive integer that determines how many computing tasks are submitted in batches to the graphics API.

Platform Support

Option CPU GPU Linux MacOS Windows Android iOS WASM
Metal No Yes No Yes No No Yes No
Vulkan Yes Yes Yes Yes Yes Yes Yes No
OpenGL No Yes Yes Yes Yes Yes Yes No
WebGpu No Yes No No No No No Yes
Dx11/Dx12 No Yes No No Yes No No No