Discrete-event simulator for evaluating KV cache-aware routing policies in prefill-disaggregated LLM serving clusters. Models a two-tier KV cache hierarchy (L0 GPU HBM + L1 CPU DRAM) with RDMA/PCIe link contention, architecture-derived roofline compute (MoE, MLA, DSA), and a cluster-wide meta-store for prefix-aware routing decisions. Includes 11 routing policies (random, round_robin, least_loaded, least_tokens, ttl_aware, precise, min_pd, cache_load, cache_score, estimated_ttft, prefix_affinity), HuggingFace config.json auto-parsing, built-in GPU hardware presets (H100/H800/H20/A100/B200), and ablation tooling for systematic policy comparison across real Alibaba serving traces. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
29 lines
623 B
TOML
29 lines
623 B
TOML
[package]
|
|
name = "kvcache-simulator"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Discrete-event simulator for cluster-level LLM serving with two-tier KV cache and KV-aware routing ablation."
|
|
|
|
[[bin]]
|
|
name = "kvcache-sim"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
serde_yaml = "0.9"
|
|
clap = { version = "4", features = ["derive"] }
|
|
csv = "1"
|
|
ahash = "0.8"
|
|
ordered-float = "4"
|
|
anyhow = "1"
|
|
thiserror = "1"
|
|
indicatif = "0.17"
|
|
rand = "0.8"
|
|
rand_chacha = "0.3"
|
|
smallvec = { version = "1", features = ["union"] }
|
|
|
|
[profile.release]
|
|
lto = "thin"
|
|
codegen-units = 1
|