burn-dispatch 0.22.0

Backend dispatch for the Burn framework
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "burn-dispatch"
version = "0.22.0"
authors = [
    "laggui <lagrange.guillaume.1@gmail.com>",
    "nathanielsimard <nathaniel.simard.42@gmail.com>",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Backend dispatch for the Burn framework"
documentation = "https://docs.rs/burn-dispatch"
readme = "README.md"
keywords = [
    "deep-learning",
    "machine-learning",
    "data",
]
categories = ["science"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/tracel-ai/burn/tree/main/crates/burn-dispatch"

[package.metadata.docs.rs]
features = ["doc"]
rustdoc-args = [
    "--cfg",
    "docsrs",
]

[features]
accelerate = ["burn-ndarray?/blas-accelerate"]
apple-amx = ["burn-flex?/apple-amx"]
autodiff = ["burn-autodiff"]
autotune = ["burn-cubecl?/autotune"]
autotune-checks = ["burn-cubecl?/autotune-checks"]
blas-netlib = ["burn-ndarray?/blas-netlib"]
capture = ["burn-capture"]
cpu = [
    "cubecl",
    "burn-cubecl/cpu",
]
cubecl = [
    "dep:burn-cubecl",
    "burn-backend/cubecl",
]
cuda = [
    "cubecl",
    "burn-cubecl/cuda",
]
default = [
    "std",
    "burn-autodiff?/default",
    "burn-cubecl?/default",
    "burn-flex?/default",
    "burn-ndarray?/default",
    "burn-tch?/default",
]
doc = [
    "default",
    "flex",
]
flex = ["dep:burn-flex"]
fusion = [
    "burn-cubecl?/fusion",
    "burn-remote?/fusion",
]
metal = [
    "wgpu",
    "burn-cubecl/metal",
]
ndarray = ["burn-ndarray"]
openblas = ["burn-ndarray?/blas-openblas"]
openblas-system = ["burn-ndarray?/blas-openblas-system"]
rayon = [
    "burn-flex?/rayon",
    "burn-ndarray?/multi-threads",
]
remote = [
    "std",
    "burn-remote",
    "burn-remote/iroh",
]
remote-server = [
    "remote",
    "burn-remote/server",
]
remote-websocket = [
    "remote",
    "burn-remote/websocket",
]
rocm = [
    "cubecl",
    "burn-cubecl/hip",
]
simd = [
    "burn-flex?/simd",
    "burn-ndarray?/simd",
]
std = [
    "burn-backend/std",
    "burn-autodiff?/std",
    "burn-cubecl?/std",
    "burn-flex?/std",
    "burn-ndarray?/std",
    "burn-tch?/std",
]
tch = ["burn-tch"]
template = ["burn-cubecl?/template"]
tracing = [
    "burn-autodiff?/tracing",
    "burn-cubecl?/tracing",
    "burn-flex?/tracing",
    "burn-ndarray?/tracing",
    "burn-tch?/tracing",
]
vulkan = [
    "wgpu",
    "burn-cubecl/vulkan",
]
webgpu = [
    "wgpu",
    "burn-cubecl/webgpu",
]
wgpu = [
    "cubecl",
    "burn-cubecl/wgpu",
]
x86-v4 = ["burn-flex?/x86-v4"]

[lib]
name = "burn_dispatch"
path = "src/lib.rs"

[dependencies.burn-autodiff]
version = "0.22.0"
optional = true
default-features = false

[dependencies.burn-backend]
version = "0.22.0"
default-features = false

[dependencies.burn-backend-extension]
version = "0.22.0"
default-features = false

[dependencies.burn-capture]
version = "0.22.0"
optional = true
default-features = false

[dependencies.burn-cubecl]
version = "0.22.0"
optional = true
default-features = false

[dependencies.burn-flex]
version = "0.22.0"
optional = true
default-features = false

[dependencies.burn-ndarray]
version = "0.22.0"
optional = true
default-features = false

[dependencies.burn-remote]
version = "0.22.0"
features = ["client"]
optional = true
default-features = false

[dependencies.burn-tch]
version = "0.22.0"
optional = true
default-features = false

[dependencies.paste]
version = "1"

[target.'cfg(not(target_has_atomic = "ptr"))'.dependencies.burn-flex]
version = "0.22.0"
features = ["critical-section"]
optional = true
default-features = false

[target.'cfg(not(target_has_atomic = "ptr"))'.dependencies.portable-atomic]
version = "1.15.0"
features = ["critical-section"]

[lints.clippy]
redundant_field_names = "allow"

[lints.rustdoc]
broken_intra_doc_links = "deny"
invalid_html_tags = "deny"