1.6 KiB
1.6 KiB
Performance tests
Milestone 0 perf test instructions are tracked in docs/milestone-0.md.
Build
cmake -S . -B build
cmake --build build
Run
Usage:
./build/warppipe_perf --mode create-destroy|registry|links|policy|e2e [options]
Options:
--typesink|source|both (defaultsink)--countN (default 200; per-type when--type both)--eventsN (registry mode, default 100)--linksN (links mode, default 200)--batchN (links mode batch size)--rateN (default 48000)--channelsN (default 2)--target(loopback target)
Create/destroy microbenchmark (milestone 0/2):
./build/warppipe_perf --mode create-destroy --count 200 --type sink
./build/warppipe_perf --mode create-destroy --count 100 --type both
Registry snapshot + add/remove events (milestone 1):
./build/warppipe_perf --mode registry --count 1000 --events 100
Link creation + removal (milestone 3):
./build/warppipe_perf --mode links --links 200
./build/warppipe_perf --mode links --links 200 --batch 50
Policy auto-routing (milestone 4):
./build/warppipe_perf --mode policy --count 200
End-to-end (milestone 5):
./build/warppipe_perf --mode e2e --count 200
Optional format and loopback:
./build/warppipe_perf --mode create-destroy --count 200 --type sink --rate 48000 --channels 2
./build/warppipe_perf --mode create-destroy --count 200 --type sink --target "some-node-name"
Planned coverage:
- Microbenchmark: connect -> create N -> destroy N
- Target: subsecond for N=200 on warm PipeWire connection