dfdx 0.11.2

Ergonomic auto differentiation in Rust, with pytorch like apis.
Documentation
[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",

]



# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html



[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