Minor tweaks for pg_test_timing. master github/master
authorTom Lane
Wed, 9 Jul 2025 15:26:53 +0000 (11:26 -0400)
committerTom Lane
Wed, 9 Jul 2025 15:26:53 +0000 (11:26 -0400)
commit9dcc7641444f6a99269b446ee3a45a080b6ceea3
treeb546da0866b6314316e99196d396f9bf8efc87cf
parent167ed8082f40ee1f3f4cd18cf02bd6d17df57dab
Minor tweaks for pg_test_timing.

Increase the size of the "direct" histogram to 10K elements,
so that we can precisely track loop times up to 10 microseconds.
(Going further than that seems pretty uninteresting, even for
very old and slow machines.)

Relabel "Per loop time" as "Average loop time" for clarity.

Pre-zero the histogram arrays to make sure that they are loaded
into processor cache and any copy-on-write overhead has happened
before we enter the timing loop.  Also use unlikely() to keep
the compiler from thinking that the clock-went-backwards case
is part of the hot loop.  Neither of these hacks made a lot of
difference on my own machine, but they seem like they might help
on some platforms.

Discussion: https://postgr.es/m/be0339cc-1ae1-4892-9445-8e6d8995a44d@eisentraut.org
doc/src/sgml/ref/pgtesttiming.sgml
src/bin/pg_test_timing/pg_test_timing.c