[package]
edition = "2024"
rust-version = "1.85"
name = "ferrotorch-gpu"
version = "0.5.7"
authors = ["doll"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "CUDA GPU backend for ferrotorch"
homepage = "https://github.com/dollspace-gay/ferrotorch"
readme = "README.md"
keywords = [
"deep-learning",
"machine-learning",
"autograd",
"neural-network",
"tensor",
]
categories = [
"science",
"mathematics",
"algorithms",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/dollspace-gay/ferrotorch"
[package.metadata.docs.rs]
features = []
[features]
cuda = ["dep:cudarc"]
cusparselt = [
"cuda",
"dep:bindgen",
]
default = ["cuda"]
[lib]
name = "ferrotorch_gpu"
path = "src/lib.rs"
[[test]]
name = "_probe_b1_ptx_jit"
path = "tests/_probe_b1_ptx_jit.rs"
[[test]]
name = "_probe_backward_f64"
path = "tests/_probe_backward_f64.rs"
[[test]]
name = "_probe_broadcast"
path = "tests/_probe_broadcast.rs"
[[test]]
name = "_probe_cummax_cummin_f64"
path = "tests/_probe_cummax_cummin_f64.rs"
[[test]]
name = "_probe_logcumsumexp_f64"
path = "tests/_probe_logcumsumexp_f64.rs"
[[test]]
name = "_probe_pow_f64"
path = "tests/_probe_pow_f64.rs"
[[test]]
name = "_probe_prod_backward"
path = "tests/_probe_prod_backward.rs"
[[test]]
name = "conformance_gpu_backend"
path = "tests/conformance_gpu_backend.rs"
[[test]]
name = "conformance_gpu_blas_family"
path = "tests/conformance_gpu_blas_family.rs"
[[test]]
name = "conformance_gpu_kernels"
path = "tests/conformance_gpu_kernels.rs"
[[test]]
name = "conformance_gpu_lifecycle"
path = "tests/conformance_gpu_lifecycle.rs"
[[test]]
name = "conformance_surface_coverage"
path = "tests/conformance_surface_coverage.rs"
[[test]]
name = "test_gpu_autograd"
path = "tests/test_gpu_autograd.rs"
[[test]]
name = "test_gpu_channels_last"
path = "tests/test_gpu_channels_last.rs"
[[test]]
name = "test_gpu_clamp_backward"
path = "tests/test_gpu_clamp_backward.rs"
[[test]]
name = "test_gpu_eigh"
path = "tests/test_gpu_eigh.rs"
[[test]]
name = "test_gpu_fft"
path = "tests/test_gpu_fft.rs"
[[test]]
name = "test_gpu_fft2"
path = "tests/test_gpu_fft2.rs"
[[test]]
name = "test_gpu_fill_f64"
path = "tests/test_gpu_fill_f64.rs"
[[test]]
name = "test_gpu_graph_pool"
path = "tests/test_gpu_graph_pool.rs"
[[test]]
name = "test_gpu_lstsq"
path = "tests/test_gpu_lstsq.rs"
[[test]]
name = "test_gpu_lu_factor"
path = "tests/test_gpu_lu_factor.rs"
[[test]]
name = "test_gpu_masked"
path = "tests/test_gpu_masked.rs"
[[test]]
name = "test_gpu_matrix_norm"
path = "tests/test_gpu_matrix_norm.rs"
[[test]]
name = "test_gpu_prod"
path = "tests/test_gpu_prod.rs"
[[test]]
name = "test_gpu_solve_dev"
path = "tests/test_gpu_solve_dev.rs"
[[test]]
name = "test_gpu_stream_priority"
path = "tests/test_gpu_stream_priority.rs"
[[test]]
name = "test_gpu_strided_copy"
path = "tests/test_gpu_strided_copy.rs"
[[test]]
name = "test_gpu_strided_scatter"
path = "tests/test_gpu_strided_scatter.rs"
[[test]]
name = "test_gpu_sum_dim_backward"
path = "tests/test_gpu_sum_dim_backward.rs"
[dependencies.cudarc]
version = "0.19"
features = [
"cublas",
"cusolver",
"cufft",
"cusparse",
]
optional = true
[dependencies.ferrotorch-core]
version = "0.5.5"
[dependencies.half]
version = "2.4"
features = [
"num-traits",
"bytemuck",
]
[dependencies.num-traits]
version = "0.2"
[dependencies.thiserror]
version = "2.0"
[dependencies.tracing]
version = "0.1"
[dev-dependencies.serde]
version = "1"
features = ["derive"]
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.toml]
version = "0.8"
[build-dependencies.bindgen]
version = "0.69"
optional = true