Spaces:
Running
Running
| from inferscale import run_simulation | |
| def base_config(): | |
| return { | |
| "duration_s": 8, | |
| "request_rate_rps": 1.5, | |
| "prompt_tokens_mean": 128, | |
| "prompt_tokens_cv": 0.1, | |
| "output_tokens_mean": 16, | |
| "output_tokens_cv": 0.1, | |
| "seed": 3, | |
| } | |
| def test_simulation_completes_requests(): | |
| result = run_simulation(base_config()) | |
| assert result["summary"]["requests_generated"] > 0 | |
| assert result["summary"]["requests_unfinished"] == 0 | |
| assert result["latency"]["ttft_ms"]["p95"] > 0 | |
| assert result["resource"]["peak_kv_gb"] >= 0 | |
| assert result["provenance"]["latency_profile_type"] == "analytical-reference" | |
| def test_high_load_increases_tail_latency(): | |
| low = base_config() | |
| high = base_config() | |
| low["request_rate_rps"] = 0.5 | |
| high["request_rate_rps"] = 8.0 | |
| a = run_simulation(low) | |
| b = run_simulation(high) | |
| assert b["latency"]["ttft_ms"]["p95"] >= a["latency"]["ttft_ms"]["p95"] | |
| def test_static_and_continuous_are_distinct(): | |
| cfg = base_config() | |
| cfg.update({"request_rate_rps": 4.0, "output_tokens_mean": 32}) | |
| cfg["scheduler"] = "static_fcfs" | |
| static = run_simulation(cfg) | |
| cfg["scheduler"] = "continuous_fcfs" | |
| continuous = run_simulation(cfg) | |
| assert static["summary"]["goodput_rps"] != continuous["summary"]["goodput_rps"] or static["latency"]["ttft_ms"]["p95"] != continuous["latency"]["ttft_ms"]["p95"] | |