Hi, On Wed, Sep 24, 2025 at 10:41:59AM +0200, Michael Banck via Bug reports for the GNU Hurd wrote: > Where as on my Linux Thinkpad host, I see this: > > $ LANG=C ./pg_test_timing > Testing timing overhead for 3 seconds. > Average loop time including overhead: 13.84 ns > Histogram of timing durations: > <= ns % of total running % count > 0 0.0000 0.0000 0 > 1 0.0000 0.0000 0 > 3 0.0000 0.0000 0 > 7 0.0000 0.0000 0 > 15 97.3170 97.3170 210936922 > 31 2.6288 99.9458 5697932 > 63 0.0505 99.9963 109441 > 127 0.0008 99.9971 1782 > 255 0.0022 99.9992 4674 > 511 0.0004 99.9996 789 > 1023 0.0002 99.9998 448 > 2047 0.0001 99.9999 260 > 4095 0.0000 99.9999 29 > 8191 0.0000 100.0000 28 > 16383 0.0000 100.0000 9 > 32767 0.0000 100.0000 20 > 65535 0.0000 100.0000 71 > 131071 0.0000 100.0000 1 > > Observed timing durations up to 99.9900%: > ns % of total running % count > 12 0.6013 0.6013 1303308 > 13 30.4999 31.1012 66109219 > 14 61.5536 92.6548 133418976 > 15 4.6622 97.3170 10105419 > 16 1.5844 98.9014 3434318 > 17 0.6401 99.5415 1387333 > 18 0.1352 99.6766 292948 > 19 0.1831 99.8597 396853 > 20 0.0499 99.9097 108239 > 21 0.0094 99.9191 20358 > 22 0.0056 99.9247 12191 > 23 0.0065 99.9312 14037 > 24 0.0072 99.9384 15645 > 25 0.0023 99.9407 4988 > 26 0.0008 99.9415 1819 > 27 0.0004 99.9419 863 > 28 0.0008 99.9427 1706 > 29 0.0007 99.9434 1486 > 30 0.0006 99.9440 1296 > 31 0.0018 99.9458 3852 > 32 0.0018 99.9476 3884 > 33 0.0003 99.9479 675 > 34 0.0001 99.9480 180 > 35 0.0001 99.9480 120 > 36 0.0000 99.9480 42 > 37 0.0000 99.9480 38 > 38 0.0000 99.9481 38 > 39 0.0000 99.9481 30 > 40 0.0009 99.9489 1885 > 41 0.0046 99.9536 10039 > 42 0.0137 99.9673 29692 > 43 0.0157 99.9830 34041 > 44 0.0089 99.9918 19219 > ... > 95775 0.0000 100.0000 1 > > (I should get a Linux VM running on qemu/kvm and compare timings there)
I did that now, here are the timings: Testing timing overhead for 3 seconds. Average loop time including overhead: 27.85 ns Histogram of timing durations: <= ns % of total running % count 0 0.0000 0.0000 0 1 0.0000 0.0000 0 3 0.0000 0.0000 0 7 0.0000 0.0000 0 15 0.0000 0.0000 0 31 98.8605 98.8605 106505832 63 0.2545 99.1149 274138 127 0.8823 99.9972 950514 255 0.0003 99.9975 311 511 0.0001 99.9975 63 1023 0.0000 99.9976 36 2047 0.0010 99.9986 1061 4095 0.0003 99.9988 303 8191 0.0011 99.9999 1156 16383 0.0000 100.0000 53 32767 0.0000 100.0000 7 65535 0.0000 100.0000 16 131071 0.0000 100.0000 1 262143 0.0000 100.0000 7 524287 0.0000 100.0000 3 1048575 0.0000 100.0000 1 2097151 0.0000 100.0000 2 Observed timing durations up to 99.9900%: ns % of total running % count 19 0.0819 0.0819 88181 20 26.9854 27.0672 29072269 21 1.0536 28.1208 1135118 29 0.3030 28.4239 326481 30 66.4685 94.8923 71608799 31 3.9681 98.8605 4274984 39 0.0014 98.8619 1554 40 0.2334 99.0953 251467 41 0.0191 99.1144 20597 49 0.0000 99.1144 4 50 0.0002 99.1147 249 51 0.0000 99.1147 31 60 0.0002 99.1149 211 61 0.0000 99.1149 25 69 0.0005 99.1154 497 70 0.0395 99.1548 42526 71 0.0060 99.1608 6439 79 0.0075 99.1683 8099 80 0.6032 99.7715 649829 81 0.1065 99.8780 114730 89 0.0014 99.8794 1505 90 0.0978 99.9772 105354 91 0.0198 99.9970 21350 ... 1430928 0.0000 100.0000 1 So the average loop time is 2.5-3x longer and the minium loop time increased from 12ns to 19ns. Michael