Here is a patch submission for reference to the next commitfest.
Improve pgbench measurements & progress report
- Use progress option both under init & bench.
Activate progress report by default, every 5 seconds. When initializing, --quiet reverts to the old every 100,000
insertions behavior...
- Measure transaction latency instead of computing it.
The previous computed figure does not make sense under throttling, as sleep throttling time was included in the
figures. The latency and its standard deviation are printed out under progress and in the final report.
- Take thread start time at the beginning of the thread.
Otherwise it includes pretty slow thread/fork system start times in the measurements. May help with bug #8326.
- Reduce and compensate throttling underestimation bias.
This is a consequence of relying on an integer random generator. It was about 0.5% with 1000 distinct values.
Multiplieradded to compensate the 0.05% bias with 10000 distinct integer values.
- Updated documentation & help message.
Sample output under initialization with --progress=1
creating tables... 223000 of 1000000 tuples (22%) done (elapsed 1.01 s, remaining 3.52 s). 430200 of 1000000 tuples
(43%)done (elapsed 2.03 s, remaining 2.68 s). 507300 of 1000000 tuples (50%) done (elapsed 3.44 s, remaining 3.34 s).
571400of 1000000 tuples (57%) done (elapsed 4.05 s, remaining 3.03 s). 786800 of 1000000 tuples (78%) done (elapsed
5.03s, remaining 1.36 s). 893200 of 1000000 tuples (89%) done (elapsed 6.02 s, remaining 0.72 s). 1000000 of 1000000
tuples(100%) done (elapsed 6.93 s, remaining 0.00 s). ...
Sample output under benchmarking with --progress=1
progress: 1.0 s, 116.7 tps, 8.528 +- 1.217 ms lat progress: 2.0 s, 117.7 tps, 8.493 +- 1.165 ms lat progress: 3.0
s,115.5 tps, 8.654 +- 1.650 ms lat progress: 4.0 s, 116.8 tps, 8.559 +- 1.365 ms lat progress: 5.0 s, 111.7 tps,
8.947+- 3.475 ms lat progress: 6.0 s, 116.7 tps, 8.563 +- 1.387 ms lat progress: 7.0 s, 116.6 tps, 8.572 +- 1.474 ms
lat ... # oops, things happen: progress: 36.0 s, 10.9 tps, 91.864 +- 124.874 ms lat progress: 37.0 s, 115.2 tps,
8.678+- 1.792 ms lat ...
--
Fabien.