burn/burn-wgpu
Nathaniel Simard c95b34c511
Book: backend extension + custom wgpu kernel (#728)
2023-08-31 09:55:43 -04:00
..
benches Perf/wgpu/autotune (#609) 2023-08-15 11:26:00 -04:00
src Book: backend extension + custom wgpu kernel (#728) 2023-08-31 09:55:43 -04:00
Cargo.toml Perf/wgpu/autotune (#609) 2023-08-15 11:26:00 -04: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 Can configure wgpu max tasks (#603) 2023-08-23 12:20:27 -04:00

README.md

Burn WGPU Backend

Burn WGPU backend

Current Crates.io Version license

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

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

Usage Example

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

    pub fn run() {
        let device = WgpuDevice::default();
        training::run::<ADBackendDecorator<WgpuBackend<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. The best value should be the smallest one that allows 100% GPU usage. A high value might increase GPU memory usage with no benefit.