mirror of
https://github.com/kristoferssolo/tls-pq-bench.git
synced 2026-03-22 00:36:21 +00:00
71 lines
991 B
Markdown
71 lines
991 B
Markdown
# Runbook
|
|
|
|
## 1) Build
|
|
|
|
```bash
|
|
cargo build --release
|
|
```
|
|
|
|
## 2) Start server
|
|
|
|
Example:
|
|
|
|
```bash
|
|
./target/release/server --mode x25519 --listen 0.0.0.0:4433
|
|
```
|
|
|
|
## 3) Run client benchmark
|
|
|
|
Example:
|
|
|
|
```bash
|
|
./target/release/runner \
|
|
--server 1.2.3.4:4433 \
|
|
--mode x25519mlkem768 \
|
|
--payload-bytes 1024 \
|
|
--concurrency 10 \
|
|
--iters 500 \
|
|
--warmup 50 \
|
|
--out results.ndjson
|
|
```
|
|
|
|
### Matrix Benchmarks
|
|
|
|
Create a config file (`matrix.toml`):
|
|
|
|
```toml
|
|
[[benchmarks]]
|
|
server = "1.2.3.4:4433"
|
|
mode = "x25519"
|
|
payload = 1024
|
|
iters = 500
|
|
warmup = 50
|
|
concurrency = 1
|
|
|
|
[[benchmarks]]
|
|
server = "1.2.3.4:4433"
|
|
mode = "x25519mlkem768"
|
|
payload = 1024
|
|
iters = 500
|
|
warmup = 50
|
|
concurrency = 1
|
|
```
|
|
|
|
Run matrix:
|
|
|
|
```bash
|
|
./target/release/runner --config matrix.toml
|
|
```
|
|
|
|
## 4) Collect perf stats (optional)
|
|
|
|
Run on the client:
|
|
|
|
```bash
|
|
perf stat -e cycles,instructions,cache-misses ./target/release/runner ...
|
|
```
|
|
|
|
## 5) Summarize
|
|
|
|
Use a script to compute p50/p95/p99 from NDJSON.
|