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/axum-baseline/Cargo.toml | |
| 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/axum-baseline/Cargo.toml')
| -rw-r--r-- | benchmarks/http/axum-baseline/Cargo.toml | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/benchmarks/http/axum-baseline/Cargo.toml b/benchmarks/http/axum-baseline/Cargo.toml new file mode 100644 index 0000000..1a26451 --- /dev/null +++ b/benchmarks/http/axum-baseline/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "axum-baseline" +version = "0.1.0" +edition = "2021" +publish = false + +# A reference service for Pure's HTTP benchmarks: the same document contract +# as Pure's document server, written the way an axum service usually is. +[dependencies] +axum = "0.8" +tokio = { version = "1", features = ["rt-multi-thread", "macros", "net", "fs", "sync", "signal"] } +bytes = "1" + +[profile.release] +lto = "fat" +codegen-units = 1 +panic = "abort" |
