x86 measurements

This commit is contained in:
[Quy Anh] «Elliot» Nguyen
2026-05-30 21:26:19 +02:00
committed by Linus Baumberger
parent c16a67a1f8
commit 3aa84d6b8f
90 changed files with 3657 additions and 2561 deletions
@@ -0,0 +1,58 @@
rm -f main_* run_tests *.o *.s variants/*.s variants/*.o headers/*.s headers/*.o
/usr/bin/g++ main-float.cpp ./variants/variant_float_inlining_SoA_AVX512_polyexp_fastinvsqrt.cpp -o main_float_inlining_SoA_AVX512_polyexp_fastinvsqrt -O3 -march=native -std=c++23 -Wall -Wextra -flto -DFLOPCOUNT=0 -DRANDOM_SEED=0 -DROOFLINE=0 -DBENCHMARK=1
=== N_P=50 N_ITER=200 ===
W(n) per iteration: 183700.00 flops
Q(n) per iteration: 3256 bytes
I(n): 56.42 flops/byte
W(n): 36740000.00 flops
T(n): 4235088.00 cycles
P(n): 8.68 flops/cycle
=== N_P=100 N_ITER=200 ===
W(n) per iteration: 727400.00 flops
Q(n) per iteration: 6456 bytes
I(n): 112.67 flops/byte
W(n): 145480000.00 flops
T(n): 12301878.00 cycles
P(n): 11.83 flops/cycle
=== N_P=200 N_ITER=200 ===
W(n) per iteration: 2894800.00 flops
Q(n) per iteration: 12856 bytes
I(n): 225.17 flops/byte
W(n): 578960000.00 flops
T(n): 40178688.00 cycles
P(n): 14.41 flops/cycle
=== N_P=500 N_ITER=200 ===
W(n) per iteration: 18037000.00 flops
Q(n) per iteration: 32056 bytes
I(n): 562.67 flops/byte
W(n): 3607399936.00 flops
T(n): 223423168.00 cycles
P(n): 16.15 flops/cycle
=== N_P=1000 N_ITER=200 ===
W(n) per iteration: 72074000.00 flops
Q(n) per iteration: 64056 bytes
I(n): 1125.17 flops/byte
W(n): 14414799872.00 flops
T(n): 848105152.00 cycles
P(n): 17.00 flops/cycle
=== N_P=2000 N_ITER=200 ===
W(n) per iteration: 288148000.00 flops
Q(n) per iteration: 128056 bytes
I(n): 2250.17 flops/byte
W(n): 57629601792.00 flops
T(n): 3303374080.00 cycles
P(n): 17.45 flops/cycle
=== N_P=5000 N_ITER=200 ===
W(n) per iteration: 1800369920.00 flops
Q(n) per iteration: 320056 bytes
I(n): 5625.17 flops/byte
W(n): 360073986048.00 flops
T(n): 20445360128.00 cycles
P(n): 17.61 flops/cycle
@@ -0,0 +1,66 @@
rm -f main_* run_tests *.o *.s variants/*.s variants/*.o headers/*.s headers/*.o
/usr/bin/g++ main-float.cpp ./variants/variant_float_inlining_SoA_AVX512_polyexp_fastinvsqrt.cpp -o main_float_inlining_SoA_AVX512_polyexp_fastinvsqrt -O3 -march=native -std=c++23 -Wall -Wextra -flto -DFLOPCOUNT=0 -DRANDOM_SEED=0 -DROOFLINE=0 -DBENCHMARK=1
=== N_P=50 N_ITER=200 ===
W(n) per iteration: 183700.00 flops
Q(n) per iteration: 3256 bytes
I(n): 56.42 flops/byte
W(n): 36740000.00 flops
T(n): 4261088.00 cycles
P(n): 8.62 flops/cycle
=== N_P=100 N_ITER=200 ===
W(n) per iteration: 727400.00 flops
Q(n) per iteration: 6456 bytes
I(n): 112.67 flops/byte
W(n): 145480000.00 flops
T(n): 12455221.00 cycles
P(n): 11.68 flops/cycle
=== N_P=200 N_ITER=200 ===
W(n) per iteration: 2894800.00 flops
Q(n) per iteration: 12856 bytes
I(n): 225.17 flops/byte
W(n): 578960000.00 flops
T(n): 40661000.00 cycles
P(n): 14.24 flops/cycle
=== N_P=500 N_ITER=200 ===
W(n) per iteration: 18037000.00 flops
Q(n) per iteration: 32056 bytes
I(n): 562.67 flops/byte
W(n): 3607399936.00 flops
T(n): 226296576.00 cycles
P(n): 15.94 flops/cycle
=== N_P=1000 N_ITER=200 ===
W(n) per iteration: 72074000.00 flops
Q(n) per iteration: 64056 bytes
I(n): 1125.17 flops/byte
W(n): 14414799872.00 flops
T(n): 859257920.00 cycles
P(n): 16.78 flops/cycle
=== N_P=2000 N_ITER=200 ===
W(n) per iteration: 288148000.00 flops
Q(n) per iteration: 128056 bytes
I(n): 2250.17 flops/byte
W(n): 57629601792.00 flops
T(n): 3344503808.00 cycles
P(n): 17.23 flops/cycle
=== N_P=5000 N_ITER=200 ===
W(n) per iteration: 1800369920.00 flops
Q(n) per iteration: 320056 bytes
I(n): 5625.17 flops/byte
W(n): 360073986048.00 flops
T(n): 20797153280.00 cycles
P(n): 17.31 flops/cycle
=== N_P=10000 N_ITER=200 ===
W(n) per iteration: 2905772800.00 flops
Q(n) per iteration: 640056 bytes
I(n): 4539.87 flops/byte
W(n): 581154570240.00 flops
T(n): 82334916608.00 cycles
P(n): 7.06 flops/cycle