Skirr prototype: local HTTP/1 comparison One worker pinned to CPU 0; wrk on CPUs 4-7; identical apps and Python. Access logs, request IDs, compression and response caches disabled; lifespan recorded per matrix. Server allocator/GC defaults retained; Skirr does not alter application GC policy. Medians of repeated runs; counts, duration and warmup are recorded per matrix. Temporary performance-profile hold for final matrices; CPU clocks sampled per run. No TLS, HTTP/2, WebSockets or pipelining in the throughput workload. Exact body/status checked before/after each run, not on every wrk response. P99 below is median per-run wrk P99, not a pooled percentile. Timeout semantics follow the recorded generator; all counters are retained. These measurements do not establish production readiness or general superiority. Connections: 64; repeats: 3; duration: 30s; warmup: 1s; offered rate: 20000; lifespan: off Power profile: performance Versions: {"fastapi": "0.143.1", "peregrine-server": "1.1.7", "uvloop": "0.23.0", "weft-server": "0.1.0"} Workload Server Req/s P99 ms IO failures Timeouts HTTP errors PSS MiB RPS range P99 range ms fastapi_json peregrine 19,975 9.38 0 0 0 55.1 19,974-19,975 9.19-9.57 fastapi_json skirr 19,974 9.21 0 0 0 37.9 19,974-19,975 9.12-9.36 fastapi_json skirr-before 19,975 9.63 0 0 0 37.9 19,974-19,975 8.20-10.78 Sampled server CPU clocks (MHz; median per-run mean, full observed range): peregrine 4326; 600-4700 skirr 4337; 400-4700 skirr-before 4478; 400-4700 Optimized Skirr change versus same-session saved baseline: fastapi_json -0.0%; versus Peregrine -0.0% Raw artifact: bench/results/latency-round4-final-rate20k/results.json Total completed requests across these comparisons: 5,393,177 wrk histogram counter behavior: https://github.com/wg/wrk/blob/4.1.0/src/wrk.c#L301-L325 wrk2 corrected fixed-rate histograms: https://github.com/giltene/wrk2/tree/44a94c17d8e6a0bac8559b53da76848e430cb7a7