From 0905bb66c0a6697c878d06db146c3e14fd0a2d48 Mon Sep 17 00:00:00 2001 From: Andrew Noyes Date: Mon, 25 Aug 2025 13:08:12 -0400 Subject: [PATCH] Add theoretical max serial cpu times --- threading_performance_report.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/threading_performance_report.md b/threading_performance_report.md index cc4cdb9..2ee7ce7 100644 --- a/threading_performance_report.md +++ b/threading_performance_report.md @@ -24,12 +24,16 @@ WeaselDB achieved 1.3M requests/second throughput using a two-stage ThreadPipeli - Throughput: 1.3M requests/second (maintained with up to 1200 loop iterations) - Stage-0 CPU: 100% (10% futex wake, 90% other) - Serial CPU time per request: 396ns (1200 iterations, validated with nanobench) +- Theoretical maximum serial CPU time: 769ns (1,000,000,000ns ÷ 1,300,000 req/s) +- Serial efficiency: 51.5% (396ns ÷ 769ns) - 100% CPU usage when idle **Blocking acquisition (`mayBlock=true`)**: - Throughput: 1.1M requests/second (800 loop iterations) - Stage-0 CPU: 100% total (18% sched_yield, 8% futex wait, 7% futex wake, 67% other) - Serial CPU time per request: 266ns (800 iterations, validated with nanobench) +- Theoretical maximum serial CPU time: 909ns (1,000,000,000ns ÷ 1,100,000 req/s) +- Serial efficiency: 29.3% (266ns ÷ 909ns) - 0% CPU usage when idle ### Request Flow