diff --git "a/index.html" "b/index.html" --- "a/index.html" +++ "b/index.html" @@ -1,801 +1,741 @@ - + + - - - InferScale-Sim - - - - + + +InferScale-Sim - LLM serving systems simulator + + + + - -
-
-
-
InferScale-Sim
-
interactive serving-systems research prototype
-
-
-
Loading Python runtime...
-
- -
-
-
-
InferScale-Sim
-

Explore serving policies, cache reuse, and P/D disaggregation without provisioning a GPU.

-

Generate workloads, compare schedulers, model KV pressure and prefix reuse, separate prefill from decode, and search the SLO-constrained design space. The simulator is Python running locally in a Pyodide Web Worker.

-
-
-
Backend
None
-
Runtime
Python / WASM
-
Network data
None after load
-
Profiles
Analytical reference
-
-
- -
Reference-profile mode. Absolute L4, A10G, and A100 latency values are analytical predictions, not measured GPU benchmarks. Queueing, scheduling, cache, transfer, and SLO behavior is simulated live.
- - - -
-
- - -
-
-

Run summary

Waiting
-

Configure a workload and run it

The Python simulator executes in a background Web Worker and returns request-level virtual timestamps.

- -
-
-
-
- -
-
-
-
Same workload - same seed

Scheduler Arena

Run every colocated scheduler against the current Serving Lab workload and rank by SLO attainment, then goodput.

- -
-

No comparison yet

Your Serving Lab workload and model controls are reused automatically.

- -
-
- -
-
- - -
-

Planner result

Waiting
-

No search yet

The planner repeatedly runs the simulator at different offered loads.

- -
-
-
- -
-
-
-
P/D disaggregation + prefix reuse

Modern Serving Lab

Compare colocated and prefill/decode-disaggregated serving, each with and without the current shared-prefix reuse scenario. P/D worker counts and interconnect settings come from Serving Lab.

- -
-

No topology study yet

Set shared-prefix and P/D parameters in Serving Lab, then run this controlled comparison.

- -
-
- -
-
-
-
Bounded what-if sweep

Design Explorer

Sweep 10 colocated candidates plus six P/D/cache variants, then identify the non-dominated goodput/TTFT frontier. This is an interactive design study, not an exhaustive optimizer.

-
-
-

No design sweep yet

The current workload, model, SLO, and P/D parameters are reused from Serving Lab.

- -
-
- - -
-
- - -
-
-
Controlled A/B experiment

Paired study

Waiting
-

No paired experiment yet

Baseline and treatment use the same random seed on every repetition. The reported confidence interval is over paired deltas, not unrelated runs.

- -
- -
-
Sensitivity analysis

Conclusion robustness

Waiting
-

No stress test yet

Shared multiplicative perturbations are applied to prefill, decode, and transfer latency proxies. This tests sensitivity to profile error; it is not a probability distribution over real hardware.

- -
-
-
-
- - -
-
- - -
-
-
Program execution

Session run

Waiting
-

No stateful run yet

Each session has ordered LLM turns separated by sampled tool gaps. A replica processes one turn at a time in this mode so cache/routing effects remain isolated from the batching experiments in Serving Lab.

- -
- -
-
Controlled policy comparison

Session Policy Arena

All candidates replay the identical generated program trace.

-

No policy comparison yet

Compare stateless load balancing, retention without affinity, TTL with affinity, and full retention with affinity.

- -
- -
-
Retention trade-off

TTL frontier

Sweep the KV retention horizon on the same program trace and expose the latency vs memory-residency frontier.

-

No TTL sweep yet

The sweep varies retention from immediate eviction through long-lived state while keeping session arrivals, turns, tool gaps, and token lengths fixed.

- -
-
-
Tiered-memory experiment

Agent Memory Lab

Replay one program trace across stateless, TTL, bounded-affinity, host-offload, and gap-aware policies, then deliberately shrink the per-replica HBM KV budget to expose eviction pressure.

-

No tiered-memory experiment yet

Host offload preserves reusable KV outside HBM and pays an explicit transfer cost on restore. Gap-aware tiering is reported as an oracle upper bound because it uses the realized simulated tool gap.

- -
- -
-
Locality vs balance

Affinity Frontier

Bounded affinity keeps a session on its cached replica only while the estimated queue penalty stays within a configurable slack. Sweep that slack on one common program trace.

-

No routing sweep yet

Low slack behaves closer to least-load routing; high slack increasingly prioritizes KV locality. This exposes when cache reuse begins to overload a hot replica.

- -
- -
-
Online prediction under workload shift

Predictive Tiering Lab

Replace the oracle tool-gap policy with online estimates learned only from completed tool calls. The study changes slow-tool latency partway through one common program trace, then measures whether global and per-tool predictors adapt without future-duration leakage.

-
- - - - -
-
-

No predictive-tiering experiment yet

The adaptive policies use exponentially weighted tool-duration history. The oracle candidate is retained only as an upper bound; it can see the realized future gap while adaptive candidates cannot.

- -
- -
-
-
- - -
-
- - -
-
-
Single online run

Execution model

Waiting
-

No execution-learning run yet

Agent-role transitions are revealed only when the next workflow step becomes ready. Learned policies may prefetch likely static prefixes from the modeled host tier before that happens.

- -
- -
-
Common shifted workflow trace

Prefetch Policy Study

Compare no prefetch, cumulative transition counts, exponentially decayed counts, and a clairvoyant next-role upper bound on exactly the same workflows.

-

No policy study yet

The study separates transition-model quality from serving outcomes such as TTFT, cache hits, HBM residency, and wrong-step prefetch traffic.

- -
- -
-
Decision policy frontier

Confidence Threshold Study

Sweep when a learned next-role prediction is confident enough to justify prefetch. Lower thresholds raise coverage but can pollute a small prefix cache with wrong-step transfers.

-

No threshold sweep yet

The same learned transition model is replayed at multiple decision thresholds on one common shifted workflow trace.

- -
- -
-
Non-stationary execution

Forgetting-Rate Study

Sweep exponential forgetting in the transition matrix after the workflow changes. The goal is not merely the most accurate predictor, but the best downstream serving behavior under cache and transfer constraints.

-

No forgetting-rate sweep yet

Decay = 1.0 is cumulative history. Smaller values forget old transitions faster and can react more quickly to the regime shift.

- -
- -
-
Multi-step decision quality

Prefetch Planning Study

Compare one-step prediction with multi-step forecasting, a utility-aware planner, and a clairvoyant future-set information bound on one common shifted workflow trace.

-

No planning study yet

This experiment separates next-role accuracy from forecast-set recall, cache utilization, unused prefetch traffic, and actual serving latency.

- -
- -
-
How far ahead?

Forecast Horizon Study

Sweep a utility-aware planner from one-step prediction to longer rollout horizons. Longer forecasts can reveal reuse but can also waste bandwidth or evict nearer-term prefixes.

-

No horizon sweep yet

Each horizon replays the exact same shifted workflow trace and uses the same cache budget and learned transition model.

- -
- -
-
Scarce-cache regime

Cache Budget Study

Compare top-1, multi-step, and utility-aware planning while shrinking or expanding the shared prefix-cache budget. The useful policy can change when speculative prefixes compete for HBM.

-

No cache-budget sweep yet

The study executes 12 controlled simulations: three planning policies across four working-set-relative HBM budgets.

- -
-
-
-
- - -
-
- - -
-
-
Repeated-seed evidence

Robust policy ranking

Nominal winners can move with one workload trace. This study reports bootstrap uncertainty, per-seed TTFT wins, Pareto stability, worst-seed latency, and regret to the bounded offline oracle.

Waiting
-

No consolidated study yet

Run the matched-seed experiment from the left panel. The default executes four deployable policies plus an offline oracle search on each seed.

- -
- -
-
Measured-data bridge

Held-out calibration

Fit robust global prefill/decode timing multipliers on training measurements, then evaluate the analytical simulator on held-out benchmark cases. This can correct global scale bias; it cannot by itself validate unseen schedulers or hardware.

No data
-

No external measurements loaded

This public demo ships no fake benchmark truth. Import your own vLLM/SGLang measurements or an InferScale validation-case bundle.

- -
-
-
-
- -
-
-
Simulation core

What is actually simulated?

Requests are generated from deterministic workload distributions and advanced through virtual time. Colocated runs model admission, prefill, paged KV allocation, dynamic decode batches, and completion. P/D runs use separate prefill and decode worker pools plus an explicit serialized KV-transfer link.

request -> queue -> prefill -> [KV transfer] -> decode -> completion
-
Prefix reuse

Cache without pretending to implement a radix tree

The simulator models a single shared prompt prefix with configurable length and reuse fraction. Cache hits avoid redundant prefill work and share one persistent KV allocation. It is deliberately a controlled what-if abstraction, not a claim to reproduce SGLang's full RadixAttention policy.

-
P/D disaggregation

Role-specific resources and transfer cost

Prefill and decode have separate accelerator profiles and worker counts. Prompt KV state crosses a modeled interconnect before decode admission. The simulator reports role utilization, transfer latency, and transfer pressure so the benefit of isolation can be weighed against data-movement overhead.

-
Stateful agent sessions

Tool gaps turn KV into a residency and routing decision

Agent Sessions preserves program identity and turn order, materializes tool-induced gaps, and tracks HBM retention, TTL expiry, host-memory offload/restore, recomputation, and pressure eviction. Strict affinity, least-load, and bounded-affinity routing expose the tension between cache locality and hot-replica queueing. The per-replica service model remains intentionally serial so state-management effects are not confounded with dynamic batching.

-
Online adaptive tiering

Prediction without future-gap leakage

Adaptive tiering learns an exponentially weighted estimate from tool calls only after they complete. Global and per-tool predictors can be evaluated on the same non-stationary program trace, while an oracle policy that sees the realized future gap is kept separate as an upper bound. A shift experiment changes slower external-tool durations mid-trace to expose the stability-versus-adaptation trade-off.

-
Execution learning

Learn transitions, forecast multiple steps, then spend cache carefully

Execution Learning updates a first-order role-transition model only after the next role is observed. The learned matrix can be rolled forward for multi-step forecasts without future-trace access. A utility-aware planner weighs expected prefill savings against host-transfer cost and forecast-weighted eviction cost, while calibration, horizon, confidence, forgetting, and cache-budget studies expose where better predictions do or do not improve serving outcomes.

-
Design search

Pareto, not one magic configuration

The Design Explorer reports both a raw-performance frontier and a resource-normalized frontier using goodput per accelerator. That prevents a multi-GPU P/D layout from looking unconditionally better merely because it uses more simulated hardware.

-
Trace methodology

Generated load or exact replay

Poisson, constant, and bursty workloads are open-loop: arrivals are scheduled independently of response completion, so queueing delay is not hidden by client backpressure. Exact CSV/JSON traces can be replayed with their original arrival times and token lengths.

-
Research protocol

Paired conclusions, not one lucky seed

Research Studies use common random numbers: baseline and treatment receive identical seeds, reducing workload variance in the paired difference. Research Summary extends that idea across matched seeds, bootstrap uncertainty, Pareto stability, and regret to a bounded full-trace serving oracle.

-
External validation

Analytical profiles are falsifiable

The measurement bridge imports serving-benchmark artifacts, fits simple prefill/decode scale factors on training cases only, and evaluates held-out residuals. Current vLLM serving benchmarks can save JSON results, while SGLang bench_serving supports JSONL output; InferScale normalizes both into explicit validation cases rather than treating imported measurements as hidden truth.

-
Research lineage

Research lineage and scope

Vidur established the value of simulation for avoiding expensive deployment sweeps. Recent systems have pushed toward heterogeneous and disaggregated serving, communication-aware modeling, stateful workloads, trace replay, and SLA-dependent design-space exploration. InferScale-Sim remains intentionally smaller and inspectable, with paired experiments and sensitivity analysis built into the workflow.

Vidur / 2024Predictive profiling, workload-aware serving simulation, configuration search.
TokenSim / 2025Extensible scheduling and memory-management simulation.
Revati / 2026GPU-free time-warp emulation of serving control logic.
LLMServingSim 2.0 / 2026Heterogeneous and disaggregated infrastructure, memory and communication.
Frontier / May 2026P/D disaggregation, runtime optimizations, stateful workloads, Pareto exploration.
HeteroPanacea / Aug 2026Heterogeneous stage specialization motivates resource-aware P/D comparison.
Vanguard / Jun 2026Open-loop replay avoids coordinated omission when studying latency under load.
AgentServeSim / Jun 2026Stateful multi-turn serving motivates session-aware workload modeling.
IdleKV / Jun 2026Tool-call idle windows motivate explicit HBM-to-host KV offload experiments.
SMetric / Jul 2026Cache-local routing can overload hot replicas, motivating bounded affinity.
Continuum / May 2026Per-tool duration history and bounded TTL motivate adaptive retention without clairvoyance.
CacheScout / Jul 2026Online learning of agent execution transitions and between-step prefetch motivates the Execution Learning experiments.
PBKV / May 2026Multi-step prediction for dynamic workflows motivates forecast-horizon and utility-aware prefetch experiments.
Predictive KV Memory / Aug 2026 rev.Bayesian reuse prediction and multi-tier placement motivate explicit prediction-quality experiments.
SGLang / RadixAttentionAutomatic shared-prefix KV reuse motivates the controlled cache scenario.
-
-
-
- -
- + +
+
InferScale-Sim
+
Loading Python runtime...
+
+
+

LLM serving simulator

Discrete-event Python model for queueing, batching, KV state, prefill/decode disaggregation, and stateful agent workloads. Device timings use analytical reference profiles unless measurements are imported.

Python/WASM / no backend / deterministic replay / JSON, CSV, PNG, and Markdown export

+
Timing note. L4, A10G, and A100 latencies are analytical predictions, not measured GPU benchmarks. Queueing, cache, transfer, and SLO behavior is simulated live.
+ +
+
+ +
+
+

Run summary

Waiting
+

No run yet

The Python simulator executes in a background Web Worker and returns request-level virtual timestamps.

+ +
+
+
+
+ + + + + + + + + +
+
+