Research / Evidence
Performance research
The useful question is not whether Gray wins one chart. It is how much work it delivers before latency, memory, startup cost, or correctness stops being acceptable.
Every result here names its environment and boundary. Native executable and SIMD results are scoped qualifications, not universal language rankings.
01 / Operating envelope
Throughput and latency
Gray holds corrected p99 below 4 ms through the 45k point. At 60k the queue becomes visible. At 75k the server is overloaded. These results identify the capacity boundary for this workload.
Corrected p99 curve
Logarithmic y-axis. The shape is the operating envelope, not a trophy chart.
| Requested rate | Corrected p99 | System state |
|---|---|---|
| 8k/s | 3.13 ms | Stable |
| 12k/s | 2.42 ms | Stable |
| 20k/s | 2.25 ms | Stable |
| 30k/s | 2.73 ms | Stable |
| 45k/s | 3.81 ms | Stable |
| 60k/s | 85.76 ms | Queueing |
| 75k/s | 1.60 s | Overloaded |
AMD EPYC 9645 host · one pinned server CPU · 30 seconds per point · corrected-latency wrk2.
02 / External context
One controlled comparison.
This answers a narrow question: under one fixture and one CPU, which tested rate still met the delivery and tail-latency condition? It does not rank ecosystems, safety, maintainability, or production maturity.
Read the language decision guidesHighest tested rate that still qualified
| Runtime | Qualifying rate |
|---|---|
| PHP-FPM | 8k req/s |
| Node | 12k req/s |
| Go | 30k req/s |
| Gray | 60k req/s |
Threshold: at least 95% delivery and corrected p99 below 100 ms. Not a general language ranking.
Operating envelope
Sustained performance

03 / Qualification ledger