=== test === standard openSUSE xxhash packages of today $ make cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.24user 6.69system 0:13.69elapsed 72%CPU (0avgtext+0avgdata 3824maxresident)k 0inputs+0outputs (0major+178minor)pagefaults 0swaps 14:04 f3:../xx/xxhash $ make cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.29user 6.05system 0:13.04elapsed 71%CPU (0avgtext+0avgdata 3720maxresident)k 0inputs+0outputs (0major+178minor)pagefaults 0swaps 14:05 f3:../xx/xxhash $ make cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.20user 6.29system 0:13.19elapsed 72%CPU (0avgtext+0avgdata 3664maxresident)k 0inputs+0outputs (0major+177minor)pagefaults 0swaps 14:05 f3:../xx/xxhash $ make cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.38user 5.91system 0:12.89elapsed 72%CPU (0avgtext+0avgdata 3712maxresident)k 0inputs+0outputs (0major+178minor)pagefaults 0swaps Mean/Spread: 13.20 ± 0.31 sec (2.3% error) === switch packages === # rpm -U ... === verify AVX512 is now in use === Watch this space closely. $ gdb xh Reading symbols from xh... (gdb) b main Breakpoint 1 at 0x4010b0: file xh.cpp, line 7. (gdb) r ) at dl-init.c:74 #2 call_init (l=, argc=1, argv=0x7fffffffd988, env=0x7fffffffd998) at dl-init.c:26 #3 0x00007ffff7fca63c in _dl_init (main_map=0x7ffff7fbe000, argc=1, argv=0x7fffffffd988, env=0x7fffffffd998) at dl-init.c:121 #4 0x00007ffff7fe2ba0 in _dl_start_user () from /lib64/ld-linux-x86-64.so.2 #5 0x0000000000000001 in ?? () #6 0x00007fffffffde8c in ?? () #7 0x0000000000000000 in ?? () (gdb) n 707 int vecID = XXH_featureTest(); (gdb) 719 XXH_g_dispatch = XXH_kDispatch[vecID]; (gdb) p vecID $1 = 3 [= XXH_AVX512!] === test === $ make test cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.37user 6.16system 0:13.23elapsed 72%CPU (0avgtext+0avgdata 3708maxresident)k 0inputs+0outputs (0major+177minor)pagefaults 0swaps 14:07 f3:../xx/xxhash $ make test cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.23user 6.27system 0:13.27elapsed 71%CPU (0avgtext+0avgdata 3664maxresident)k 0inputs+0outputs (0major+176minor)pagefaults 0swaps 14:07 f3:../xx/xxhash $ make test cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.26user 6.77system 0:13.75elapsed 73%CPU (0avgtext+0avgdata 3712maxresident)k 0inputs+0outputs (0major+178minor)pagefaults 0swaps 14:07 f3:../xx/xxhash $ make test cat linux-6.*.tar{,,,,,,,} | time ./xh 5df8e93736b5a2bddd0b324a455b61fc 3.19user 6.07system 0:12.96elapsed 71%CPU (0avgtext+0avgdata 3712maxresident)k 0inputs+0outputs (0major+178minor)pagefaults 0swaps Mean/Spread: 13.30 ± 0.34s (2.5% error) == Lessons learned == Prerequisite for good measurement: * consistent(!) error rate (4 individual measurements is a bit on the low side, but ... anyway) Result: * The observed 13.2s mean is within the margin of measurement error of the 13.3 mean and viceversa Conclusion: * DISPATCH=1 made no impact on this machine