[package]
name = "hpt"
version = "0.0.21"
edition = "2021"
license = "MIT OR Apache-2.0"
authors = ["JianJian Li <ljj1849532909@gmail.com>"]
description = "High Performance Tensor (HPT) - A fast, efficient, and user-friendly tensor computation library for Rust"
repository = "https://github.com/Jianqoq/Hpt"
[dependencies]
hpt-types = { path = "../hpt-types", version = "0.0.21" }
hpt-common = { path = "../hpt-common", version = "0.0.21" }
hpt-iterator = { path = "../hpt-iterator", version = "0.0.21" }
hpt-traits = { path = "../hpt-traits", version = "0.0.21" }
hpt-allocator = { path = "../hpt-allocator", version = "0.0.21" }
hpt-macros = { path = "../hpt-macros", version = "0.0.21" }
hpt-display = { path = "../hpt-display", version = "0.0.21" }
hpt-cudakernels = { path = "../hpt-cudakernels", version = "0.0.19", optional = true }
hpt-dataloader = { path = "../hpt-dataloader", version = "0.0.21" }
flate2 = "1.0.28"
rand_distr = "0.4.3"
rand = "0.8.5"
threadpool = "1.8.1"
paste = "1.0.15"
rayon = "1.10.0"
num = "0.4.3"
duplicate = "2.0.0"
ctor = "0.3.1"
cpuid = "0.1.1"
cache-size = "0.7.0"
half = { version = "2.3.1", features = ["num-traits", "rand_distr"] }
gemm = { version = "0.18.0", features = ["rayon"] }
num_cpus = "1.16.0"
once_cell = "1.20.3"
cudarc = { version = "0.13.4", optional = true, features = [
"std",
"cublas",
"cublaslt",
"curand",
"driver",
"nvrtc",
"f16",
"cuda-version-from-build-system",
"dynamic-linking",
], default-features = false }
regex = { version = "1.11.1", optional = true }
phf = { version = "0.11.3", optional = true }
serde = {version = "1.0.217", features = ["derive"]}
safetensors = "0.5.2"
bytemuck = "1.22.0"
[target.'cfg(target_arch = "x86_64")'.dependencies]
raw-cpuid = { version = "11.3.0", default-features = false }
[features]
default = ["track_caller", "normal_promote"]
track_caller = [
"hpt-traits/track_caller",
"hpt-common/track_caller",
"hpt-iterator/track_caller",
]
bound_check = ["hpt-common/bound_check", "hpt-iterator/bound_check"]
cuda = [
"cudarc",
"hpt-allocator/cuda",
"regex",
"hpt-cudakernels/cuda",
"hpt-common/cuda",
"phf",
"hpt-types/cuda",
"hpt-macros/cuda",
]
normal_promote = ["hpt-types/normal_promote"]
[package.metadata.rust-analyzer]
rustc_private = true
proc_macro_srv = true