Files
ruvnet--RuView/v2/crates/wifi-densepose-nn/Cargo.toml
T
ruv 5cacb5fe0a perf(nn): zero-copy ORT input (~1.48x) + dynamic-dim guard + concurrency bench (ADR-155 §Tier-3)
- onnx.rs ORT input: arr.as_slice() single-memcpy fast path with iterator
  fallback for strided views. MEASURED [1,256,64,64]: 1.972ms -> 1.336ms
  (~1.48x). Repro: cargo bench -p wifi-densepose-nn --no-default-features
  --features onnx --bench onnx_bench -- onnx_input_copy
- onnx.rs checked_output_dims: reject ONNX dim <= 0 (incl. unresolved -1) before
  allocation (config-OOM class) + test.
- onnx_concurrency bench: empirically proves the per-inference write lock
  serializes (throughput drops with more threads). The intended read-lock win is
  NOT landable on ort 2.0.0-rc.11 (safe Session::run is &mut self, verified) and
  is deferred to the backlog with the upgrade path documented in-code.

New committed fixture tests/fixtures/tiny_conv.onnx (666 B, not gitignored).

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-06-11 19:57:53 -04:00

66 lines
1.5 KiB
TOML

[package]
name = "wifi-densepose-nn"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
documentation.workspace = true
keywords = ["neural-network", "onnx", "inference", "densepose", "deep-learning"]
categories = ["science", "computer-vision"]
description = "Neural network inference for WiFi-DensePose pose estimation"
readme = "README.md"
[features]
default = ["onnx"]
onnx = ["ort"]
tch-backend = ["tch"]
candle-backend = ["candle-core", "candle-nn"]
cuda = ["onnx"]
tensorrt = ["onnx"]
all-backends = ["onnx", "tch-backend", "candle-backend"]
[dependencies]
# Core utilities
thiserror.workspace = true
anyhow.workspace = true
serde.workspace = true
serde_json.workspace = true
tracing.workspace = true
# Tensor operations
ndarray.workspace = true
num-traits.workspace = true
# ONNX Runtime (default)
ort = { workspace = true, optional = true }
# PyTorch backend (optional)
tch = { workspace = true, optional = true }
# Candle backend (optional)
candle-core = { workspace = true, optional = true }
candle-nn = { workspace = true, optional = true }
# Async runtime
tokio = { workspace = true, features = ["sync", "rt"] }
# Additional utilities
parking_lot = "0.12"
memmap2 = "0.9"
[dev-dependencies]
criterion.workspace = true
proptest.workspace = true
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
tempfile = "3.10"
[[bench]]
name = "inference_bench"
harness = false
[[bench]]
name = "onnx_bench"
harness = false
required-features = ["onnx"]