diff options
| author | eunhhu <[email protected]> | 2026-09-26 05:29:44 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-26 05:29:48 +0100 |
| commit | f0bec42645aa845d1c1d71c6e18ac1521e808fcc (patch) | |
| tree | 4d4309ae29de36a5a984c2e5ad4a0424549eb2a7 /benchmarks/http/README.md | |
| parent | 3b89ae82ea9468d54c60a63fd03b9a829748a0ac (diff) | |
| download | pure-f0bec42645aa845d1c1d71c6e18ac1521e808fcc.tar.gz pure-f0bec42645aa845d1c1d71c6e18ac1521e808fcc.zip | |
Benchmark the HTTP hosts against axum
A C load generator, an axum service with the same document contract (in
memory, fdatasync, and crash-safe replacement), and a runner that pins the
servers and the load to separate CPUs. On the Pi 5, Pure uses about 40%
less memory, wins with a new connection per request and with eight durable
writers (3.2x the crash-safe axum), but loses 5x on keep-alive reads and
1.5x on 64 durable writers: no persistent connections, one thread, eight
connection slots and two fsyncs per commit. Note 075 records the numbers
and the targets.
Diffstat (limited to 'benchmarks/http/README.md')
| -rw-r--r-- | benchmarks/http/README.md | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/benchmarks/http/README.md b/benchmarks/http/README.md new file mode 100644 index 0000000..3fc5740 --- /dev/null +++ b/benchmarks/http/README.md @@ -0,0 +1,12 @@ +# HTTP 벤치마크 + +Pure의 문서 서버들과 같은 계약의 axum 서비스를 같은 기기·코어 배정·부하 생성기로 잰다([075](../../docs/research/075-http-host-against-axum.md)). + +```sh +cc -O2 -std=c17 -o load load.c +(cd axum-baseline && cargo build --release) +make -C ../../prototypes/connections build/pure-connections-module +make -C ../../prototypes/connections BUILD=build/tree STORE=store-tree.c build/tree/pure-connections +aup build ../../../aup/examples/editor.aup -o editor.pmod +python3 run.py --module editor.pmod --directory /var/tmp # 저장소를 둘 장치에서 +``` |
