On Wed Aug 20 2025, Miroslav Lichvar wrote: > On Tue, Aug 19, 2025 at 04:31:49PM -0700, Jacob Keller wrote: >> I'm having trouble interpreting what exactly this data shows, as its >> quite a lot of data and numbers. I guess that it is showing when it >> switches over to software timestamps.. It would be nice if ntpperf >> showed number of events which were software vs hardware timestamping, as >> thats likely the culprit. igb hardare only has a single outstanding Tx >> timestamp at a time. > > The server doesn't have a way to tell the client (ntpperf) which > timestamps are HW or SW, we can only guess from the measured offset as > HW timestamps should be more accurate, but on the server side the > number of SW and HW TX timestamps provided to the client can be > monitored with the "chronyc serverstats" command. The server requests > both SW and HW TX timestamps and uses the better one it gets from the > kernel, if it can actually get one before it receives the next > request from the same client (ntpperf simulates up to 16384 concurrent > clients). > > When I run ntpperf at a fixed rate of 140000 requests per second > for 10 seconds (-r 140000 -t 10), I get the following numbers. > > Without the patch: > NTP daemon TX timestamps : 28056 > NTP kernel TX timestamps : 1012864 > NTP hardware TX timestamps : 387239 > > With the patch: > NTP daemon TX timestamps : 28047 > NTP kernel TX timestamps : 707674 > NTP hardware TX timestamps : 692326 > > The number of HW timestamps is significantly higher with the patch, so > that looks good. > > But when I increase the rate to 200000, I get this: > > Without the patch: > NTP daemon TX timestamps : 35835 > NTP kernel TX timestamps : 1410956 > NTP hardware TX timestamps : 581575 > > With the patch: > NTP daemon TX timestamps : 476908 > NTP kernel TX timestamps : 646146 > NTP hardware TX timestamps : 412095 >
Sebastian found a machine with i350 and gave me access. I did run the same test as you mentioned here. But, my numbers are completely different. Especially the number of hardware TX timestamps are significantly lower overall. Without the patch: ./ntpperf -i eno8303 -m X -d Y -s Z -I -r 200000 -t 10 NTP daemon RX timestamps : 0 NTP daemon TX timestamps : 565057 NTP kernel RX timestamps : 100208 NTP kernel TX timestamps : 281215 NTP hardware RX timestamps : 882823 NTP hardware TX timestamps : 136759 With the patch: NTP daemon RX timestamps : 0 NTP daemon TX timestamps : 576561 NTP kernel RX timestamps : 99232 NTP kernel TX timestamps : 255634 NTP hardware RX timestamps : 868392 NTP hardware TX timestamps : 135429 What am I doing wrong? Here's my chrony config: |########## i350 NTP performance regression test ########### |local stratum 10 |allow X |allow Y |allow Z | |hwtimestamp eno0 | |clientloglimit 134217728 |log measurements statistics tracking |logdir /var/log/chrony Thanks, Kurt
signature.asc
Description: PGP signature
