hical
Engine · C++
Hical is a modern C++20/26 high-performance web framework built on Boost.Asio, featuring coroutine-based async I/O (boost::asio::awaitable<T>), three-tier PMR memory pools, zero-copy HTTP parsing via picohttpparser, and a self-developed WebSocket stack (RFC 6455 with permessage-deflate). SO_REUSEPORT multi-acceptor model on Linux. Dual-track C++26 reflection layer (P2996 / C++20 macro fallback).
Composite rank
Each profile of a family is worth 100 to the entry that leads it, and the composite is the sum over the family. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.
| Family | Rank | Composite |
|---|---|---|
| HTTP/1.1 | 17 of 34 | 155 |
| WebSocket | 9 of 9 | 77 |
Every result
Alpha Round, 18 runs. Requests per second is the best of three; latency, CPU and memory come from that run.
| Category | Profile | Conns | Req/sec | Avg | p99 | CPU | Memory |
|---|---|---|---|---|---|---|---|
| Connection | Baseline | 512 | 3,080,718 | 165us | 2.36ms | 6571.2% | 48MiB |
| Connection | Baseline | 4,096 | 3,262,680 | 1.25ms | 6.82ms | 6620.6% | 116MiB |
| Connection | Pipelined | 512 | 4,794,074 | 1.71ms | 7.65ms | 6548.7% | 41MiB |
| Connection | Pipelined | 4,096 | 4,787,219 | 13.75ms | 36.00ms | 6402.6% | 137MiB |
| Connection | Short-lived | 512 | 2,090,932 | 231us | 1.96ms | 6247.5% | 65MiB |
| Connection | Short-lived | 4,096 | 2,415,587 | 1.68ms | 22.90ms | 6210.0% | 90MiB |
| Workload | JSON | 4,096 | 667,967 | 5.80ms | 29.30ms | 6529.0% | 214MiB |
| Workload | JSON Comp | 512 | 259,626 | 1.97ms | 11.70ms | 6325.5% | 114MiB |
| Workload | JSON Comp | 4,096 | 256,696 | 15.87ms | 73.60ms | 6557.8% | 225MiB |
| Workload | JSON Comp | 16,384 | 251,925 | 59.01ms | 1.32s | 6191.0% | 243MiB |
| Workload | Upload | 32 | 1,815 | 17.60ms | 112.30ms | 2332.1% | 4.9GiB |
| Workload | Upload | 256 | 1,720 | 144.55ms | 904.40ms | 6302.2% | 8.2GiB |
| Workload | Static | 1,024 | 216,124 | 5.38ms | 57.51ms | 3515.8% | 362MiB |
| Workload | Static | 4,096 | 128,032 | 32.89ms | 334.69ms | 1353.1% | 728MiB |
| Workload | Static | 6,800 | 96,389 | 73.14ms | 1.02s | 1023.8% | 1021MiB |
| WebSocket | Echo | 512 | 3,303,164 | 154us | 2.46ms | 6567.6% | 49MiB |
| WebSocket | Echo | 4,096 | 3,661,346 | 1.12ms | 6.63ms | 6572.7% | 157MiB |
| WebSocket | Echo | 16,384 | 3,280,432 | 4.96ms | 11.00ms | 6536.6% | 512MiB |
How the benchmark is run · The machine · Add or fix an entry