# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: Apache-2.0

[package]
name = "dynamo-memory"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
description = "Memory management library for Dynamo"

[features]
default = []

# feature to enable unsafe slices of memory descriptors
# for advanced testing in other crates
unsafe-slices = []

# test features for hardware-specific tests
testing-cuda = []
testing-nixl = []
testing-all = ["testing-cuda", "testing-nixl"]

[dependencies]
anyhow = { workspace = true }
cudarc = { workspace = true }
nixl-sys = { version = "=0.10.1" }
serde = { workspace = true}
thiserror = { workspace = true }
tracing = { workspace = true }

libc = { version = "0.2" }
libloading = "0.8"
nix = { version = "0.30", features = ["fs"] }
offset-allocator = "0.2"

[[bin]]
name = "validate_numa_placement"
path = "bin/validate_numa_placement.rs"

[dev-dependencies]
serde_json = { workspace = true }
tempfile = "3"
