HttpArena
Frameworks

libioma

Engine · C · engine: io_uring

Minimal HTTP/1.1 framework in C on a thread-per-core io_uring runtime with stackful coroutines. Raw io_uring syscalls, no liburing; multishot accept and recv over provided buffer rings.

Achievements

🥇 1 Gold. Top three of a field, taken in this entry's own league: the family composite, the same composite among entries written in the same language, and each test profile it is scored on. Every field is the one the badges publish, so a medal and a badge always say the same thing. How medals are awarded.

MedalAwardFieldRank
🥇 GoldTest profileEfficiency · Latency-10K1 of 24

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, less 2.5% for each of routing, middleware, request and response the entry does not do for you - its completeness factor, which the WebSocket and gRPC families do not carry. The field is this entry's own league: engines and reverse proxies are scored apart from frameworks. How it works.

FamilyRankComposite
HTTP/1.110 of 263819

Every result

Alpha Round, 5 runs. Requests per second is the best of three; latency, CPU and memory come from that run.

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,0964,255,834962us1.26ms6185.7%1.2GiB
ConnectionShort-lived4,0962,707,0291.37ms1.94ms5666.1%1.4GiB
EfficiencyLatency-10K1,0249,98372.9us106.0us26.2%1.1GiB
EfficiencyLatency-1M1,024997,80887.3us158.0us2131.9%1.1GiB
EfficiencyLatency-500K/81,024498,941292.6us2307.0us815.5%184MiB

Compared with

The C entries around libioma on the HTTP/1.1 composite, and the one leading them. The last column shows every profile side by side.

EntryCompositevs libioma
nginx4710+23%head to head
h2o3936+3%head to head
libreactorng3828+0%head to head
Vinyl Cache831-78%head to head
varnish185-95%head to head

Compare libioma with any C entry · Compare libioma with any entry, in any language · Every C entry, ranked

Results updated · How the benchmark is run · The machine · Add or fix an entry