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