Windows Benchmarks
Generated 2026-10-02 from corosio e2de06fda069 — benchmark run. This page is fully generated; do not edit by hand (see the Benchmarks landing page).
Summary
Within noise means the relative difference is within twice the combined run-to-run noise (the root-sum-square of each side’s CV). Differences that small are indistinguishable from measurement jitter. See Methodology for how these figures are computed.
0 faster · 18 within noise · 59 slower of 77 benchmarks — median -6.1% vs Boost.Asio (callbacks) on the same reactor.
Test Environment
CPU |
AMD Ryzen 5 3600 6-Core Processor |
Cores |
6 |
RAM (GB) |
64 |
OS |
MSYS_NT-10.0-20348 3.4.7-ea781829.x86_64 |
Kernel/build |
2023-07-05 12:05 UTC |
Compiler |
c++.exe (x86_64-posix-seh-rev2, Built by MinGW-W64 project) 12.2.0 |
CMake |
|
liburing |
n/a |
Boost commit |
39fa1e9a3491bd099b570935b3f3422065f91b03 |
Asio commit |
a7dc25b4cb6c49a6946d86ea20664f1027203225 |
Asio reactor |
IOCP |
Capy commit |
a372a6b054261f29497ac0d19c2a9533f9eaad40 |
Corosio commit |
e2de06fda069607f34bc957cbefcbd9ba12fddca |
Corosio branch |
pr/benchmark-report |
Date (UTC) |
2026-10-02 |
Iterations |
7 |
Duration per benchmark (s) |
2.0 |
Results
accept_churn
Rate of setting up and tearing down short-lived TCP connections: connect, accept, close.
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
1.54K ops/s |
0.38% |
-7.8% |
|
asio (coroutines) |
1.70K ops/s |
0.57% |
+2.2% |
|
asio (callbacks) |
1.67K ops/s |
0.65% |
baseline |
|
corosio (IOCP) |
149.4 ops/s |
0.43% |
-8.7% |
|
asio (coroutines) |
171.8 ops/s |
0.54% |
+4.9% |
|
asio (callbacks) |
163.8 ops/s |
0.68% |
baseline |
|
corosio (IOCP) |
1.54K ops/s |
0.26% |
-7.8% |
|
asio (coroutines) |
1.72K ops/s |
0.23% |
+2.5% |
|
asio (callbacks) |
1.67K ops/s |
0.23% |
baseline |
|
corosio (IOCP) |
154.4 ops/s |
0.73% |
-7.7% |
|
asio (coroutines) |
177.1 ops/s |
0.53% |
+5.9% |
|
asio (callbacks) |
167.2 ops/s |
0.48% |
baseline |
|
corosio (IOCP) |
12.38K ops/s |
0.31% |
-9.8% |
|
asio (coroutines) |
13.22K ops/s |
0.09% |
-3.6% |
|
asio (callbacks) |
13.72K ops/s |
0.18% |
baseline |
|
corosio (IOCP) |
13.30K ops/s |
0.24% |
-7.9% |
|
asio (coroutines) |
14.00K ops/s |
0.22% |
-3.0% |
|
asio (callbacks) |
14.44K ops/s |
0.17% |
baseline |
|
corosio (IOCP) |
13.02K ops/s |
0.26% |
-8.5% |
|
asio (coroutines) |
13.81K ops/s |
0.19% |
-3.0% |
|
asio (callbacks) |
14.24K ops/s |
0.33% |
baseline |
|
corosio (IOCP) |
12.34K ops/s |
1.24% |
-9.7% |
|
asio (coroutines) |
13.15K ops/s |
0.17% |
-3.8% |
|
asio (callbacks) |
13.67K ops/s |
0.18% |
baseline |
|
corosio (IOCP) |
12.39K ops/s |
1.32% |
-9.5% |
|
asio (coroutines) |
13.20K ops/s |
0.16% |
-3.7% |
|
asio (callbacks) |
13.70K ops/s |
0.15% |
baseline |
fan_out
Fan-out/fan-in coroutine coordination: a parent starts concurrent sub-requests against echo servers and awaits their completion via a shared latch.
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
7.16K ops/s |
0.30% |
-7.4% |
|
asio (coroutines) |
6.85K ops/s |
0.38% |
-11.3% |
|
asio (callbacks) |
7.73K ops/s |
0.21% |
baseline |
|
corosio (IOCP) |
6.43K ops/s |
0.76% |
-10.7% |
|
asio (coroutines) |
6.37K ops/s |
0.73% |
-11.5% |
|
asio (callbacks) |
7.20K ops/s |
0.43% |
baseline |
|
corosio (IOCP) |
6.90K ops/s |
0.36% |
-9.1% |
|
asio (coroutines) |
6.81K ops/s |
0.34% |
-10.2% |
|
asio (callbacks) |
7.59K ops/s |
0.29% |
baseline |
|
corosio (IOCP) |
7.15K ops/s |
0.22% |
-7.5% |
|
asio (coroutines) |
6.95K ops/s |
0.23% |
-10.1% |
|
asio (callbacks) |
7.73K ops/s |
0.16% |
baseline |
|
corosio (IOCP) |
6.44K ops/s |
0.63% |
-11.1% |
|
asio (coroutines) |
6.42K ops/s |
0.34% |
-11.3% |
|
asio (callbacks) |
7.24K ops/s |
0.65% |
baseline |
|
corosio (IOCP) |
6.92K ops/s |
0.34% |
-9.1% |
|
asio (coroutines) |
6.80K ops/s |
0.23% |
-10.5% |
|
asio (callbacks) |
7.61K ops/s |
0.16% |
baseline |
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
112.4K ops/s |
0.37% |
-8.9% |
|
asio (coroutines) |
109.9K ops/s |
0.96% |
-11.0% |
|
asio (callbacks) |
123.5K ops/s |
0.27% |
baseline |
|
corosio (IOCP) |
7.15K ops/s |
0.14% |
-7.6% |
|
asio (coroutines) |
6.85K ops/s |
0.87% |
-11.5% |
|
asio (callbacks) |
7.74K ops/s |
0.18% |
baseline |
|
corosio (IOCP) |
29.33K ops/s |
0.26% |
-4.8% |
|
asio (coroutines) |
27.75K ops/s |
0.28% |
-9.9% |
|
asio (callbacks) |
30.82K ops/s |
0.17% |
baseline |
|
corosio (IOCP) |
1.73K ops/s |
0.83% |
-8.7% |
|
asio (coroutines) |
1.70K ops/s |
0.17% |
-9.9% |
|
asio (callbacks) |
1.89K ops/s |
0.46% |
baseline |
|
corosio (IOCP) |
112.9K ops/s |
0.19% |
-8.8% |
|
asio (coroutines) |
109.8K ops/s |
0.53% |
-11.3% |
|
asio (callbacks) |
123.7K ops/s |
0.39% |
baseline |
|
corosio (IOCP) |
7.16K ops/s |
0.14% |
-7.4% |
|
asio (coroutines) |
6.86K ops/s |
0.51% |
-11.3% |
|
asio (callbacks) |
7.73K ops/s |
0.26% |
baseline |
|
corosio (IOCP) |
29.24K ops/s |
0.33% |
-5.1% |
|
asio (coroutines) |
27.80K ops/s |
0.19% |
-9.8% |
|
asio (callbacks) |
30.81K ops/s |
0.16% |
baseline |
|
corosio (IOCP) |
1.73K ops/s |
0.52% |
-8.8% |
|
asio (coroutines) |
1.71K ops/s |
0.37% |
-9.8% |
|
asio (callbacks) |
1.90K ops/s |
0.42% |
baseline |
|
corosio (IOCP) |
1.70K ops/s |
0.56% |
-10.5% |
|
asio (coroutines) |
1.66K ops/s |
0.39% |
-12.3% |
|
asio (callbacks) |
1.89K ops/s |
0.26% |
baseline |
|
corosio (IOCP) |
6.99K ops/s |
0.24% |
-8.9% |
|
asio (coroutines) |
6.65K ops/s |
0.53% |
-13.3% |
|
asio (callbacks) |
7.67K ops/s |
0.52% |
baseline |
|
corosio (IOCP) |
1.69K ops/s |
0.40% |
-10.7% |
|
asio (coroutines) |
1.66K ops/s |
0.49% |
-12.7% |
|
asio (callbacks) |
1.90K ops/s |
0.34% |
baseline |
|
corosio (IOCP) |
7.00K ops/s |
0.30% |
-9.0% |
|
asio (coroutines) |
6.66K ops/s |
0.42% |
-13.4% |
|
asio (callbacks) |
7.69K ops/s |
0.63% |
baseline |
http_server
Request/response throughput of a minimal HTTP/1.1 server exchanging a fixed small request and canned response over persistent TCP loopback connections.
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
111.9K ops/s |
0.42% |
-0.8% |
|
asio (coroutines) |
107.8K ops/s |
0.33% |
-4.5% |
|
asio (callbacks) |
112.8K ops/s |
0.37% |
baseline |
|
corosio (IOCP) |
108.6K ops/s |
0.33% |
-1.9% |
|
asio (coroutines) |
106.2K ops/s |
0.39% |
-4.0% |
|
asio (callbacks) |
110.7K ops/s |
0.23% |
baseline |
|
corosio (IOCP) |
108.1K ops/s |
0.20% |
-1.7% |
|
asio (coroutines) |
105.6K ops/s |
0.15% |
-4.0% |
|
asio (callbacks) |
109.9K ops/s |
0.24% |
baseline |
|
corosio (IOCP) |
109.6K ops/s |
0.24% |
-1.1% |
|
asio (coroutines) |
106.4K ops/s |
0.26% |
-4.0% |
|
asio (callbacks) |
110.8K ops/s |
0.35% |
baseline |
|
corosio (IOCP) |
108.0K ops/s |
0.17% |
-1.6% |
|
asio (coroutines) |
105.6K ops/s |
0.24% |
-3.7% |
|
asio (callbacks) |
109.7K ops/s |
0.26% |
baseline |
|
corosio (IOCP) |
268.9K ops/s |
0.21% |
-6.1% |
|
asio (coroutines) |
279.3K ops/s |
0.43% |
-2.4% |
|
asio (callbacks) |
286.3K ops/s |
0.52% |
baseline |
|
corosio (IOCP) |
181.9K ops/s |
0.68% |
-2.9% |
|
asio (coroutines) |
180.1K ops/s |
0.51% |
-3.9% |
|
asio (callbacks) |
187.4K ops/s |
0.47% |
baseline |
|
corosio (IOCP) |
225.9K ops/s |
0.37% |
-4.5% |
|
asio (coroutines) |
228.7K ops/s |
0.65% |
-3.3% |
|
asio (callbacks) |
236.6K ops/s |
0.55% |
baseline |
|
corosio (IOCP) |
268.0K ops/s |
0.42% |
-5.8% |
|
asio (coroutines) |
277.0K ops/s |
0.56% |
-2.6% |
|
asio (callbacks) |
284.6K ops/s |
0.68% |
baseline |
|
corosio (IOCP) |
111.8K ops/s |
0.37% |
-0.7% |
|
asio (coroutines) |
107.8K ops/s |
0.05% |
-4.2% |
|
asio (callbacks) |
112.5K ops/s |
0.26% |
baseline |
|
corosio (IOCP) |
112.2K ops/s |
0.32% |
-0.5% |
|
asio (coroutines) |
107.6K ops/s |
0.56% |
-4.5% |
|
asio (callbacks) |
112.7K ops/s |
0.20% |
baseline |
socket_latency
Round-trip latency of a TCP loopback connection. Each sample is one full round trip (request out, reply back) across message sizes and concurrent pair counts.
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
7.57 µs |
0.40% |
-7.2% |
|
asio (coroutines) |
7.48 µs |
0.45% |
-5.9% |
|
asio (callbacks) |
7.06 µs |
0.17% |
baseline |
|
corosio (IOCP) |
130.96 µs |
6.14% |
-11.2% |
|
asio (coroutines) |
127.44 µs |
2.57% |
-8.2% |
|
asio (callbacks) |
117.75 µs |
3.93% |
baseline |
|
corosio (IOCP) |
30.40 µs |
0.21% |
-7.4% |
|
asio (coroutines) |
29.95 µs |
0.34% |
-5.9% |
|
asio (callbacks) |
28.30 µs |
0.28% |
baseline |
|
corosio (IOCP) |
7.57 µs |
0.56% |
-7.3% |
|
asio (coroutines) |
7.48 µs |
0.22% |
-6.0% |
|
asio (callbacks) |
7.06 µs |
0.17% |
baseline |
|
corosio (IOCP) |
121.42 µs |
0.27% |
-8.0% |
|
asio (coroutines) |
120.27 µs |
0.37% |
-7.0% |
|
asio (callbacks) |
112.43 µs |
0.28% |
baseline |
|
corosio (IOCP) |
30.43 µs |
0.42% |
-7.6% |
|
asio (coroutines) |
29.95 µs |
0.41% |
-5.9% |
|
asio (callbacks) |
28.28 µs |
0.37% |
baseline |
|
corosio (IOCP) |
7.56 µs |
0.44% |
-7.0% |
|
asio (coroutines) |
7.45 µs |
0.77% |
-5.5% |
|
asio (callbacks) |
7.06 µs |
0.28% |
baseline |
|
corosio (IOCP) |
7.67 µs |
0.48% |
-7.2% |
|
asio (coroutines) |
7.56 µs |
0.37% |
-5.7% |
|
asio (callbacks) |
7.16 µs |
0.49% |
baseline |
|
corosio (IOCP) |
7.60 µs |
0.41% |
-7.5% |
|
asio (coroutines) |
7.46 µs |
0.22% |
-5.5% |
|
asio (callbacks) |
7.07 µs |
0.22% |
baseline |
|
corosio (IOCP) |
7.53 µs |
0.25% |
-7.0% |
|
asio (coroutines) |
7.43 µs |
0.27% |
-5.6% |
|
asio (callbacks) |
7.04 µs |
0.35% |
baseline |
|
corosio (IOCP) |
7.69 µs |
0.25% |
-7.5% |
|
asio (coroutines) |
7.56 µs |
0.36% |
-5.6% |
|
asio (callbacks) |
7.15 µs |
0.35% |
baseline |
|
corosio (IOCP) |
7.56 µs |
0.17% |
-7.0% |
|
asio (coroutines) |
7.47 µs |
0.29% |
-5.7% |
|
asio (callbacks) |
7.07 µs |
0.18% |
baseline |
socket_throughput
Sustained byte throughput of a TCP loopback connection under continuous streaming, varying chunk size, direction, and concurrency.
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
279.9 MB/s |
0.32% |
-3.0% |
|
asio (coroutines) |
274.1 MB/s |
0.34% |
-5.0% |
|
asio (callbacks) |
288.6 MB/s |
0.51% |
baseline |
|
corosio (IOCP) |
4.42 GB/s |
7.80% |
-9.0% |
|
asio (coroutines) |
4.66 GB/s |
6.82% |
-4.2% |
|
asio (callbacks) |
4.86 GB/s |
9.63% |
baseline |
|
corosio (IOCP) |
3.75 GB/s |
0.61% |
-1.9% |
|
asio (coroutines) |
3.68 GB/s |
0.34% |
-3.8% |
|
asio (callbacks) |
3.82 GB/s |
0.55% |
baseline |
|
corosio (IOCP) |
9.55 GB/s |
0.83% |
+0.2% |
|
asio (coroutines) |
9.47 GB/s |
6.89% |
-0.7% |
|
asio (callbacks) |
9.54 GB/s |
0.42% |
baseline |
|
corosio (IOCP) |
1.07 GB/s |
0.27% |
-2.8% |
|
asio (coroutines) |
1.06 GB/s |
0.45% |
-4.3% |
|
asio (callbacks) |
1.10 GB/s |
0.36% |
baseline |
|
corosio (IOCP) |
9.04 GB/s |
0.94% |
-2.6% |
|
asio (coroutines) |
9.00 GB/s |
2.37% |
-3.0% |
|
asio (callbacks) |
9.28 GB/s |
0.96% |
baseline |
|
corosio (IOCP) |
279.6 MB/s |
0.44% |
-2.9% |
|
asio (coroutines) |
274.6 MB/s |
0.65% |
-4.6% |
|
asio (callbacks) |
287.9 MB/s |
0.49% |
baseline |
|
corosio (IOCP) |
4.69 GB/s |
7.57% |
-1.5% |
|
asio (coroutines) |
4.61 GB/s |
7.67% |
-3.1% |
|
asio (callbacks) |
4.76 GB/s |
8.69% |
baseline |
|
corosio (IOCP) |
3.72 GB/s |
0.85% |
-1.8% |
|
asio (coroutines) |
3.68 GB/s |
0.61% |
-3.0% |
|
asio (callbacks) |
3.79 GB/s |
0.23% |
baseline |
|
corosio (IOCP) |
9.76 GB/s |
1.34% |
-0.1% |
|
asio (coroutines) |
9.71 GB/s |
0.99% |
-0.6% |
|
asio (callbacks) |
9.76 GB/s |
1.25% |
baseline |
|
corosio (IOCP) |
1.07 GB/s |
0.29% |
-3.0% |
|
asio (coroutines) |
1.06 GB/s |
0.52% |
-4.6% |
|
asio (callbacks) |
1.11 GB/s |
0.47% |
baseline |
|
corosio (IOCP) |
8.91 GB/s |
1.43% |
-2.0% |
|
asio (coroutines) |
8.85 GB/s |
0.38% |
-2.7% |
|
asio (callbacks) |
9.09 GB/s |
0.19% |
baseline |
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
12.68 GB/s |
0.54% |
-2.1% |
|
asio (coroutines) |
12.73 GB/s |
0.28% |
-1.8% |
|
asio (callbacks) |
12.96 GB/s |
0.37% |
baseline |
|
corosio (IOCP) |
17.09 GB/s |
0.54% |
-2.7% |
|
asio (coroutines) |
17.06 GB/s |
0.77% |
-2.8% |
|
asio (callbacks) |
17.56 GB/s |
0.45% |
baseline |
|
corosio (IOCP) |
18.40 GB/s |
0.37% |
-0.4% |
|
asio (coroutines) |
18.38 GB/s |
0.98% |
-0.6% |
|
asio (callbacks) |
18.48 GB/s |
1.82% |
baseline |
Detailed results
| Benchmark | Implementation | Median | CV | vs asio |
|---|---|---|---|---|
|
corosio (IOCP) |
283.5 MB/s |
0.40% |
-2.7% |
|
asio (coroutines) |
279.4 MB/s |
0.56% |
-4.1% |
|
asio (callbacks) |
291.4 MB/s |
0.32% |
baseline |
|
corosio (IOCP) |
3.93 GB/s |
3.90% |
+0.5% |
|
asio (coroutines) |
3.94 GB/s |
2.24% |
+0.6% |
|
asio (callbacks) |
3.91 GB/s |
5.15% |
baseline |
|
corosio (IOCP) |
3.78 GB/s |
1.35% |
-2.3% |
|
asio (coroutines) |
3.73 GB/s |
0.73% |
-3.5% |
|
asio (callbacks) |
3.87 GB/s |
0.66% |
baseline |
|
corosio (IOCP) |
8.75 GB/s |
7.22% |
-1.2% |
|
asio (coroutines) |
8.54 GB/s |
4.50% |
-3.6% |
|
asio (callbacks) |
8.86 GB/s |
3.82% |
baseline |
|
corosio (IOCP) |
1.09 GB/s |
0.43% |
-2.5% |
|
asio (coroutines) |
1.07 GB/s |
0.12% |
-4.0% |
|
asio (callbacks) |
1.12 GB/s |
0.44% |
baseline |
|
corosio (IOCP) |
9.27 GB/s |
3.59% |
-1.9% |
|
asio (coroutines) |
9.23 GB/s |
1.69% |
-2.4% |
|
asio (callbacks) |
9.45 GB/s |
1.78% |
baseline |
|
corosio (IOCP) |
282.6 MB/s |
0.33% |
-2.6% |
|
asio (coroutines) |
279.3 MB/s |
0.50% |
-3.8% |
|
asio (callbacks) |
290.2 MB/s |
0.42% |
baseline |
|
corosio (IOCP) |
4.37 GB/s |
4.83% |
+1.7% |
|
asio (coroutines) |
4.29 GB/s |
3.21% |
-0.1% |
|
asio (callbacks) |
4.30 GB/s |
7.83% |
baseline |
|
corosio (IOCP) |
3.78 GB/s |
0.69% |
-2.7% |
|
asio (coroutines) |
3.72 GB/s |
0.87% |
-4.1% |
|
asio (callbacks) |
3.88 GB/s |
0.75% |
baseline |
|
corosio (IOCP) |
9.77 GB/s |
1.43% |
-0.7% |
|
asio (coroutines) |
9.76 GB/s |
0.85% |
-0.8% |
|
asio (callbacks) |
9.84 GB/s |
1.23% |
baseline |
|
corosio (IOCP) |
1.09 GB/s |
0.35% |
-2.4% |
|
asio (coroutines) |
1.07 GB/s |
0.30% |
-3.9% |
|
asio (callbacks) |
1.12 GB/s |
0.24% |
baseline |
|
corosio (IOCP) |
9.35 GB/s |
2.30% |
-1.8% |
|
asio (coroutines) |
9.26 GB/s |
1.66% |
-2.8% |
|
asio (callbacks) |
9.52 GB/s |
0.82% |
baseline |