Skip to content

Add orisha and orisha-uring (Koru) entries - #1556

Merged
MDA2AV merged 4 commits into
mainfrom
add-orisha
Oct 13, 2026
Merged

MDA2AV merged 4 commits into
mainfrom
add-orisha

Conversation

@MDA2AV

@MDA2AV MDA2AV commented Oct 13, 2026 •

Copy link
Copy Markdown
Owner

Adds the two Koru entries from @COCPORN's submission/orisha branch on korulang/HttpArena. The commit and its authorship are unchanged.

  • orisha: Orisha with its default pump.
  • orisha-uring: the same sources built with --build=io-uring, which uses a ring per worker with SO_REUSEPORT, multishot recv and kTLS.

Both images build koru, koru-libs and orisha from main with Zig 0.15.2. The routes live in orisha's repo, in httparena/main.k and lib/httparena.kz.

Both entries are emerging and standard, and subscribe to baseline, pipelined, limited-conn, json-comp, json-tls, latency-1m and latency-10k.

Orisha is an HTTP server written in Koru — a language that compiles to
native code through a metacircular pipeline and emitted Zig — with the
route table resolved at compile time. Both entries build the same
consumer program (orisha/httparena/main.k, cloned from korulang/orisha
main at image build); they differ only in the pump backend:

- orisha: epoll pump (level-triggered readiness, batched pipelined writes)
- orisha-uring: io_uring pump (per-worker rings + SO_REUSEPORT, multishot
  accept/recv, provided-buffer pool, adaptive CQE coalescing, kTLS
  handoff after the handshake)

Subscribed: baseline, latency-1m, latency-10k, pipelined, limited-conn,
json-comp, json-tls. No response cache and no startup pre-serialization:
json serializes every field per request and compresses per request.

Local validator: 37 passed / 0 failed on the orisha entry (baseline,
anti-cheat randomized inputs, exhaustive TCP fragmentation, pipelined,
json-comp, json-tls incl. TLS 1.3 + AEAD negotiation). The io_uring
entry validates on hosts whose seccomp permits io_uring_setup; Docker
Desktop's default profile refuses it, so its local validation was run
with a permissive profile.
@MDA2AV

MDA2AV commented Oct 13, 2026

Copy link
Copy Markdown
Owner Author

/benchmark-multiple --save

@github-actions

Copy link
Copy Markdown
Contributor

👋 Benchmark request received. A collaborator will review and approve the run.

@github-actions

Copy link
Copy Markdown
Contributor

Benchmark Results

Frameworks: 2 | Test: all tests

✅ orisha

Test Conn RPS Rate CPU/req p99 p99.9 CPU Mem Δ RPS Δ Mem
baseline 4096 501,761 — — — — 6470.1% 206MiB ~0% ~0%
pipelined 4096 7,953,337 — — — — 6212.4% 215MiB ~0% ~0%
limited-conn 4096 361,621 — — — — 5696.9% 214MiB ~0% ~0%
json-comp 4096 417,915 — — — — 6005.6% 226MiB ~0% ~0%
json-comp 16384 380,531 — — — — 6164.8% 461MiB ~0% ~0%
json-tls 4096 440,016 — — — — 6224.1% 342MiB ~0% ~0%
latency-1m 1024 499,192 0.4992 ⚠️ 127.70us 9883648.0us 10047488.0us 6387.5% 155MiB ~0% ~0%
latency-10k 1024 9,982 0.9982 19.01us 88.0us 366.0us 17.9% 150MiB ~0% ~0%

✅ orisha-uring

Test Conn RPS Rate CPU/req p99 p99.9 CPU Mem Δ RPS Δ Mem
baseline 4096 4,114,610 — — — — 6300.7% 445MiB ~0% ~0%
pipelined 4096 40,513,032 — — — — 6363.7% 439MiB ~0% ~0%
limited-conn 4096 2,665,265 — — — — 5230.5% 527MiB ~0% ~0%
json-comp 4096 1,621,485 — — — — 6613.6% 528MiB ~0% ~0%
json-comp 16384 1,564,485 — — — — 6634.7% 970MiB ~0% ~0%
json-tls 4096 1,482,980 — — — — 6304.6% 416MiB ~0% ~0%
latency-1m 1024 998,091 0.9981 18.96us 163.0us 6734.0us 2080.6% 393MiB ~0% ~0%
latency-10k 1024 9,979 0.9979 23.08us 103.0us 159.0us 22.1% 391MiB ~0% ~0%

@MDA2AV
MDA2AV merged commit 7d64ddc into main Oct 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants