[package]
name = "dfdx"
version = "0.11.2"
edition = "2021"
license = "MIT OR Apache-2.0"
rust-version = "1.65"
description = "Ergonomic auto differentiation in Rust, with pytorch like apis."
homepage = "https://github.com/coreylowman/dfdx"
documentation = "https://docs.rs/dfdx"
repository = "https://github.com/coreylowman/dfdx"
readme = "README.md"
keywords = [
"deep-learning",
"neural-network",
"backprop",
"tensor",
"autodiff",
]
[package.metadata.docs.rs]
features = ["nightly", "numpy", "safetensors", "cuda", "ci-check"]
[dependencies]
no-std-compat = { version = "0.4.1", default-features = false, features = [ "alloc", "compat_hash" ], optional = true }
spin = { version = "0.9.8", default-features = false, features = ["spin_mutex", "rwlock", "portable_atomic"], optional = true }
rand = { version = "0.8.5", default-features = false, features = ["std_rng"] }
rand_distr = { version = "0.4.3", default-features = false }
matrixmultiply = { version = "0.3.2", default-features = false, optional = true }
zip = { version = "0.6.2", default-features = false, optional = true }
cblas-sys = { version = "0.1.4", default-features = false, optional = true }
libc = { version = "0.2", default-features = false, optional = true }
cudarc = { version = "0.9.7", default-features = false, optional = true, features = ["driver", "cublas", "nvrtc"] }
num-traits = { version = "0.2.15", default-features = false }
safetensors = { version = "0.3", default-features = false, optional = true }
memmap2 = { version = "0.5", default-features = false, optional = true }
[dev-dependencies]
tempfile = "3.3.0"
mnist = "0.5.0"
indicatif = "0.17.3"
[build-dependencies]
glob = { version = "0.3.1", optional = true }
[features]
default = ["std", "fast-alloc", "cpu-par-matmul"]
nightly = []
std = ["cudarc?/std", "matrixmultiply?/std", "rand_distr/std_math"]
fast-alloc = ["std"]
no-std = ["no-std-compat", "dep:spin", "cudarc?/no-std", "num-traits/libm"]
cpu-seq-matmul = ["dep:matrixmultiply"]
cpu-par-matmul = ["std", "dep:matrixmultiply", "matrixmultiply?/threading"]
cpu-mkl-matmul = ["dep:cblas-sys", "dep:libc"]
cuda = ["dep:cudarc", "dep:glob"]
cudnn = ["cuda", "cudarc?/cudnn"]
numpy = ["dep:zip", "std"]
safetensors = ["dep:safetensors", "std", "dep:memmap2"]
test-f64 = []
test-integrations = []
ci-check = ["cudarc?/ci-check"]
[[bench]]
name = "batchnorm2d"
harness = false
[[bench]]
name = "conv2d"
harness = false
[[bench]]
name = "sum"
harness = false
[[bench]]
name = "softmax"
harness = false