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
@@ -1,41 +1,58 @@
rm -f main_* sizes run_tests *.o *.s
/usr/bin/g++ -O3 -march=native -std=c++23 -Wall -Wextra -flto -DFLOPCOUNT=0 -DRANDOM_SEED=0 -DROOFLINE=0 -DBENCHMARK=1 main.cpp ./variants/variant_branchless_sqrtfree.cpp -o main_branchless_sqrtfree
=== N_P=50 N_ITER=1000 ===
W(n) per iteration: 184500.00 flops
rm -f main_* run_tests *.o *.s variants/*.s variants/*.o headers/*.s headers/*.o
/usr/bin/g++ main.cpp ./variants/variant_branchless_sqrtfree.cpp -o main_branchless_sqrtfree -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: 6512 bytes
I(n): 28.33 flops/byte
W(n): 184500000.00 flops
T(n): 160027720.00 cycles
P(n): 1.15 flops/cycle
I(n): 28.21 flops/byte
W(n): 36740000.00 flops
T(n): 31502760.00 cycles
P(n): 1.17 flops/cycle
=== N_P=100 N_ITER=1000 ===
W(n) per iteration: 729000.00 flops
=== N_P=100 N_ITER=200 ===
W(n) per iteration: 727400.00 flops
Q(n) per iteration: 12912 bytes
I(n): 56.46 flops/byte
W(n): 729000000.00 flops
T(n): 632178740.00 cycles
P(n): 1.15 flops/cycle
I(n): 56.34 flops/byte
W(n): 145480000.00 flops
T(n): 124771860.00 cycles
P(n): 1.17 flops/cycle
=== N_P=200 N_ITER=1000 ===
W(n) per iteration: 2898000.00 flops
=== N_P=200 N_ITER=200 ===
W(n) per iteration: 2894800.00 flops
Q(n) per iteration: 25712 bytes
I(n): 112.71 flops/byte
W(n): 2898000000.00 flops
T(n): 2477854340.00 cycles
I(n): 112.59 flops/byte
W(n): 578960000.00 flops
T(n): 492923200.00 cycles
P(n): 1.17 flops/cycle
=== N_P=500 N_ITER=1000 ===
W(n) per iteration: 18045000.00 flops
=== N_P=500 N_ITER=200 ===
W(n) per iteration: 18037000.00 flops
Q(n) per iteration: 64112 bytes
I(n): 281.46 flops/byte
W(n): 18045000000.00 flops
T(n): 15380682320.00 cycles
I(n): 281.34 flops/byte
W(n): 3607400000.00 flops
T(n): 3068146360.00 cycles
P(n): 1.18 flops/cycle
=== N_P=1000 N_ITER=200 ===
W(n) per iteration: 72074000.00 flops
Q(n) per iteration: 128112 bytes
I(n): 562.59 flops/byte
W(n): 14414800000.00 flops
T(n): 12254157320.00 cycles
P(n): 1.18 flops/cycle
=== N_P=2000 N_ITER=200 ===
W(n) per iteration: 288148000.00 flops
Q(n) per iteration: 256112 bytes
I(n): 1125.09 flops/byte
W(n): 57629600000.00 flops
T(n): 49194147560.00 cycles
P(n): 1.17 flops/cycle
=== N_P=1000 N_ITER=1000 ===
W(n) per iteration: 72090000.00 flops
Q(n) per iteration: 128112 bytes
I(n): 562.71 flops/byte
W(n): 72090000000.00 flops
T(n): 61619267280.00 cycles
=== N_P=5000 N_ITER=200 ===
W(n) per iteration: 1800370000.00 flops
Q(n) per iteration: 640112 bytes
I(n): 2812.59 flops/byte
W(n): 360074000000.00 flops
T(n): 308136782060.00 cycles
P(n): 1.17 flops/cycle