HttpArena
Frameworks

ioxide-pipes

Engine · C# · engine: io_uring

ioxide-pipes — the ioxide io_uring runtime served through System.IO.Pipelines instead of its raw recv/send API, with Glyph11 parsing what comes off it. One reactor per core, each owning its ring and its share of the SO_REUSEPORT listeners. The pipe carries the design twice over: its reader owns the carry, so a request split across several recvs is handed over as one ReadOnlySequence with no copy and no buffer of the entry's own, and the TLS door on :8081 needs no second serve loop because TlsConnectionDualPipe is an IDuplexPipe like any other. TLS terminates ring-natively with kernel TX offload where the kernel offers the ULP (OpenSSL otherwise) and OpenSSL receive. Glyph11 takes that sequence as-is — query string already split, chunked bodies walked a chunk at a time without linearizing — so the entry is a transport loop and a routing decision rather than a parser. The async profile's wait is an IORING_OP_TIMEOUT through ioxide.timer, so a held connection costs a kernel deadline rather than a thread. Companion to the edixoi entry, which is the same profiles hand-written on the raw API.

Achievements

🥈 2 Silver. 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
🥈 SilverFamily compositeComposite · HTTP/1.12 of 19
🥈 SilverWithin its languageC# · HTTP/1.12 of 5

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.12 of 195466

Every result

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

CategoryProfileConnsReq/secAvgp99CPUMemory
ConnectionBaseline4,0963,864,9161.06ms1.53ms6211.2%1.3GiB
ConnectionShort-lived4,0962,649,6021.42ms3.08ms5734.3%1.4GiB
ConcurrencyAsync Delay32,0002,738,56611.60ms13.20ms6243.7%1.7GiB
EfficiencyLatency-10K1,0249,98174.2us101.0us23.1%1.2GiB
EfficiencyLatency-1M1,024997,61596.0us174.0us2269.7%1.2GiB
WorkloadJSON TLS4,0961,743,6472.40ms87.36ms5939.3%1.9GiB
Workload8Gbit51249,301118.3us585.0us235.0%3.3GiB

Compared with

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

EntryCompositevs ioxide-pipes
genhttp-ioxide6211+14%head to head
edixoi5832+7%head to head
simplew-tuned5354-2%head to head
ioxide4828-12%head to head

Compare ioxide-pipes with any C# entry · Compare ioxide-pipes with any entry, in any language · Every C# entry, ranked

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