70 lines
1.6 KiB
TOML
70 lines
1.6 KiB
TOML
[package]
|
|
name = "rtx-kernel"
|
|
version = "1.0.0"
|
|
edition.workspace = true
|
|
rust-version = "1.92"
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
description = "RustyTorch++ GPU kernel primitives and abstractions"
|
|
repository.workspace = true
|
|
keywords = ["kernel", "gpu", "cuda", "primitives"]
|
|
categories = ["development-tools"]
|
|
|
|
[features]
|
|
# No default GPU features - select cuda or metal explicitly based on your platform
|
|
default = []
|
|
cuda = ["dep:cudarc"]
|
|
metal = ["dep:objc2", "dep:objc2-metal", "dep:objc2-foundation", "dep:block2"]
|
|
disabled_tests = []
|
|
|
|
[dependencies]
|
|
# Core GPU acceleration - CUDA
|
|
cudarc = { workspace = true, optional = true }
|
|
|
|
# Essential dependencies
|
|
anyhow = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tracing = { workspace = true }
|
|
|
|
# Serialization
|
|
serde = { workspace = true }
|
|
|
|
# Async runtime
|
|
tokio = { workspace = true }
|
|
|
|
# Collections
|
|
dashmap = { workspace = true }
|
|
indexmap = { workspace = true }
|
|
|
|
# Concurrency
|
|
parking_lot = { workspace = true }
|
|
|
|
# Math
|
|
byteorder = { workspace = true }
|
|
|
|
# Time handling
|
|
chrono = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
# Metal GPU acceleration for Apple Silicon
|
|
objc2 = { version = "0.6", optional = true, features = ["std"] }
|
|
objc2-metal = { version = "0.3", optional = true }
|
|
objc2-foundation = { version = "0.3", optional = true }
|
|
block2 = { version = "0.6", optional = true }
|
|
|
|
[dev-dependencies]
|
|
tokio-test = { workspace = true }
|
|
tempfile = { workspace = true }
|
|
criterion = { workspace = true }
|
|
|
|
[[example]]
|
|
name = "kernel_demo"
|
|
required-features = ["disabled_tests"]
|
|
|
|
[[example]]
|
|
name = "simple_test"
|
|
required-features = ["disabled_tests"]
|
|
|
|
[lints]
|
|
workspace = true
|