84 lines
1.7 KiB
Plaintext
84 lines
1.7 KiB
Plaintext
[package]
|
|
name = "rtx-memory"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
repository.workspace = true
|
|
description = "Advanced memory pool manager for zero-allocation transformer inference"
|
|
keywords = ["memory", "pool", "allocator", "transformer", "gpu"]
|
|
categories = ["memory-management", "no-std", "embedded", "performance"]
|
|
|
|
[dependencies]
|
|
# Core dependencies
|
|
anyhow.workspace = true
|
|
thiserror.workspace = true
|
|
tracing.workspace = true
|
|
|
|
# Concurrency
|
|
parking_lot.workspace = true
|
|
crossbeam.workspace = true
|
|
rayon.workspace = true
|
|
|
|
# Collections and utilities
|
|
indexmap.workspace = true
|
|
dashmap.workspace = true
|
|
|
|
# Math and algorithms
|
|
num-complex.workspace = true
|
|
|
|
# Async support
|
|
tokio = { version = "1.0", features = ["full"] }
|
|
once_cell = "1.19"
|
|
|
|
# RTX integration
|
|
# rtx-tensor = { path = "../rtx-tensor" }
|
|
# rtx-runtime = { path = "../rtx-runtime" }
|
|
|
|
# Optional GPU support
|
|
cudarc = { workspace = true, optional = true }
|
|
|
|
[dev-dependencies]
|
|
tokio-test.workspace = true
|
|
proptest.workspace = true
|
|
criterion.workspace = true
|
|
tempfile = "3.8"
|
|
futures = "0.3"
|
|
|
|
[features]
|
|
default = ["std"]
|
|
std = []
|
|
no_std = []
|
|
gpu = ["cudarc"]
|
|
cuda = ["gpu", "cudarc/nvrtc"]
|
|
|
|
# Advanced allocation strategies
|
|
buddy-allocator = []
|
|
slab-allocator = []
|
|
stack-allocator = []
|
|
|
|
# Performance features
|
|
zero-copy = []
|
|
numa-aware = []
|
|
prefetch = []
|
|
|
|
# Debug features
|
|
debug-allocations = []
|
|
allocation-tracking = []
|
|
memory-poisoning = []
|
|
|
|
|
|
[[bench]]
|
|
name = "memory_pool_bench"
|
|
harness = false
|
|
path = "benches/memory_pool_bench.rs"
|
|
|
|
[[bench]]
|
|
name = "allocation_strategies_bench"
|
|
harness = false
|
|
path = "benches/allocation_strategies_bench.rs"
|
|
|
|
[[bench]]
|
|
name = "fragmentation_bench"
|
|
harness = false
|
|
path = "benches/fragmentation_bench.rs" |