Throughput & Latency
Throughput
Requests / second higher is better ↑ Virtual wins
/api/process — Average Latency
milliseconds lower is better ↓ Virtual wins
/api/process — p99 Latency
milliseconds lower is better ↓ Virtual wins
/api/status — Average Latency
milliseconds lower is better ↓ Virtual wins
/api/status — p99 Latency
milliseconds lower is better ↓ Virtual wins
Error Rate
percent lower is better ↓ Virtual wins
Resource Usage — Tradeoffs
Peak OS Threads
count lower = less OS overhead ↓ Virtual wins
Peak Heap Used
MB ↑ higher under virtual (more concurrency) Platform lower
Peak RSS Memory
MB (resident set) ↑ virtual uses more RAM Platform lower
CPU — Peak %
percent ↑ virtual uses more CPU (doing more work) Virtual: efficient
CPU — Average %
percent over test duration
GC Pressure
GC Events (total during test)
count ↑ more GC under virtual (more allocation) Platform lower
GC Pause Total
milliseconds cumulative stop-the-world time
Full Comparison — Averaged across 3 series
All metrics · green = better · red = worse · relative to platform threads baseline
| Profile | Mode |
Throughput (req/s) | ProcAvg (ms) | Proc p99 (ms) |
StatAvg (ms) | Stat p99 (ms) | Errors (%) |
OS Threads | Heap (MB) | RSS (MB) |
CPU avg (%) | GC events | GC pause (ms) |
Raw Data — Individual Series
Per-run values
| Profile | Mode |
S1 req/s | S2 req/s | S3 req/s |
S1 PAvg | S2 PAvg | S3 PAvg |
S1 p99 | S2 p99 | S3 p99 |
S1 Thr | S2 Thr | S3 Thr |
S1 Heap | S2 Heap | S3 Heap |
S1 GC | S2 GC | S3 GC |