[package]
edition = "2024"
name = "dynamo-bench"
version = "1.3.0"
authors = ["NVIDIA Inc. <sw-dl-dynamo@nvidia.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Lightweight HTTP benchmarks for Dynamo endpoints"
homepage = "https://github.com/ai-dynamo/dynamo"
readme = "README.md"
license = "Apache-2.0"
repository = "https://github.com/ai-dynamo/dynamo.git"
[features]
default = []
mocker-kvbm-offload = ["dynamo-mocker/kvbm-offload"]
profile = ["dynamo-mocker/profile"]
[lib]
name = "dynamo_bench"
path = "src/lib.rs"
[[bin]]
name = "claude_trace_export"
path = "claude_trace_export.rs"
[[test]]
name = "active_sequences_trace"
path = "tests/active_sequences_trace.rs"
[[test]]
name = "mooncake_trace"
path = "tests/mooncake_trace.rs"
[[test]]
name = "request_trace"
path = "tests/request_trace.rs"
[[bench]]
name = "active_sequences_bench"
path = "kv_router/active_sequences_bench.rs"
harness = false
[[bench]]
name = "mooncake_bench"
path = "kv_router/mooncake_bench.rs"
harness = false
[[bench]]
name = "multiturn_bench"
path = "multiturn_bench.rs"
harness = false
[[bench]]
name = "offline_replay_bench"
path = "offline_replay_bench.rs"
harness = false
[dependencies.anyhow]
version = "1"
[dependencies.chrono]
version = "0.4"
features = [
"alloc",
"std",
"clock",
"now",
"serde",
]
default-features = false
[dependencies.clap]
version = "4.5"
features = ["derive"]
[dependencies.crossbeam-channel]
version = "0.5"
[dependencies.dynamo-data-gen]
version = "1.3.0"
[dependencies.dynamo-kv-router]
version = "1.3.0"
features = [
"metrics",
"runtime-protocols",
"bench",
"metrics",
"shard-metrics",
]
[dependencies.dynamo-mocker]
version = "1.3.0"
[dependencies.dynamo-tokens]
version = "1.3.0"
[dependencies.flate2]
version = "1"
[dependencies.futures-util]
version = "0.3.32"
[dependencies.hf-hub]
version = "0.4.2"
features = [
"tokio",
"rustls-tls",
"ureq",
]
default-features = false
[dependencies.indicatif]
version = "0.18"
[dependencies.rand]
version = "0.9.2"
[dependencies.reqwest]
version = "0.12.24"
features = [
"multipart",
"json",
"stream",
"rustls-tls",
]
default-features = false
[dependencies.rustc-hash]
version = "2"
[dependencies.serde]
version = "1"
features = [
"derive",
"rc",
]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.tokenizers]
version = "0.21.4"
features = [
"onig",
"esaxx_fast",
"rustls-tls",
]
default-features = false
[dependencies.tokio]
version = "=1.48.0"
features = ["full"]
[dev-dependencies.dynamo-tokens]
version = "1.3.0"
[dev-dependencies.minstant]
version = "0.1.7"
[dev-dependencies.tempfile]
version = "3"
[dev-dependencies.tokio]
version = "=1.48.0"
features = [
"full",
"rt",
"macros",
"time",
]
[dev-dependencies.tokio-util]
version = "0.7.17"
features = [
"codec",
"net",
"rt",
"io-util",
]
[dev-dependencies.tracing]
version = "0.1"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"local-time",
"json",
]
[dev-dependencies.uuid]
version = "1.18.1"
features = [
"v4",
"serde",
]