SPEC CPU result comparison

Comparison of x86_64 levels - Summer 2022

SPECINT 2006: LTO -O2 - Different x86_64 levels

-flto -O2

AMD EPYC 7543P (zen3 based Milan)

Run-times

Benchmark x86-64 x86-64-v2 x86-64-v3 x86-64-v2 x86-64-v3
400.perlbench 100.00% 99.59% 98.97% 100.00% 99.38%
401.bzip2 100.00% 100.20% 100.00% 100.00% 99.80%
403.gcc 100.00% 99.39% 99.39% 100.00% 100.00%
429.mcf 100.00% 100.41% 97.36% 100.00% 96.96%
445.gobmk 100.00% 99.60% 99.20% 100.00% 99.60%
456.hmmer 100.00% 89.54% 85.71% 100.00% 95.73%
458.sjeng 100.00% 100.81% 99.59% 100.00% 98.79%
462.libquantum 100.00% 104.49% 88.68% 100.00% 84.87%
464.h264ref 100.00% 98.59% 99.40% 100.00% 100.81%
471.omnetpp 100.00% 98.14% 99.38% 100.00% 101.26%
473.astar 100.00% 100.00% 100.61% 100.00% 100.61%
483.xalancbmk 100.00% 102.92% 101.04% 100.00% 98.18%
The compiler used was GCC 12.1.0.
Naturally, the smaller the run-times, the better. On the other hand, rates and especially their geometric means are better when they are greater.
See also continuous gcc tuning benchmarking at https://lnt.opensuse.org/db_default/v4/SPEC/spec_report/tuning.

Non-debug executable sizes

Click to display/hide
Benchmark x86-64 x86-64-v2 x86-64-v3 x86-64-v2 x86-64-v3
400.perlbench 100.00% 99.94% 100.10% 100.00% 100.16%
401.bzip2 100.00% 100.22% 101.23% 100.00% 101.01%
403.gcc 100.00% 100.01% 100.13% 100.00% 100.12%
429.mcf 100.00% 100.21% 100.38% 100.00% 100.17%
445.gobmk 100.00% 100.00% 99.99% 100.00% 99.99%
456.hmmer 100.00% 99.45% 99.62% 100.00% 100.17%
458.sjeng 100.00% 100.00% 100.03% 100.00% 100.03%
462.libquantum 100.00% 98.95% 98.60% 100.00% 99.65%
464.h264ref 100.00% 99.78% 101.18% 100.00% 101.41%
471.omnetpp 100.00% 99.82% 100.79% 100.00% 100.97%
473.astar 100.00% 100.18% 99.14% 100.00% 98.96%
483.xalancbmk 100.00% 99.96% 100.75% 100.00% 100.79%
Smaller binary sizes are always better.

Intel Cascade Lake Xeon

Run-times

Benchmark x86-64 x86-64-v2 x86-64-v3 x86-64-v2 x86-64-v3
400.perlbench 100.00% 99.19% 99.60% 100.00% 100.41%
401.bzip2 100.00% 100.21% 102.28% 100.00% 102.07%
403.gcc 100.00% 100.61% 100.61% 100.00% 100.00%
429.mcf 100.00% 100.61% 97.56% 100.00% 96.97%
445.gobmk 100.00% 100.40% 100.00% 100.00% 99.60%
456.hmmer 100.00% 103.33% 102.49% 100.00% 99.20%
458.sjeng 100.00% 100.61% 101.43% 100.00% 100.81%
462.libquantum 100.00% 101.57% 92.84% 100.00% 91.41%
464.h264ref 100.00% 96.39% 95.98% 100.00% 99.58%
471.omnetpp 100.00% 100.61% 100.00% 100.00% 99.39%
473.astar 100.00% 100.00% 101.24% 100.00% 101.24%
483.xalancbmk 100.00% 101.63% 101.63% 100.00% 100.00%
The compiler used was GCC 12.1.0.
Naturally, the smaller the run-times, the better. On the other hand, rates and especially their geometric means are better when they are greater.
See also continuous gcc tuning benchmarking at https://lnt.opensuse.org/db_default/v4/SPEC/spec_report/tuning.

Non-debug executable sizes

Click to display/hide
Benchmark x86-64 x86-64-v2 x86-64-v3 x86-64-v2 x86-64-v3
400.perlbench 100.00% 99.94% 100.10% 100.00% 100.16%
401.bzip2 100.00% 100.22% 101.23% 100.00% 101.01%
403.gcc 100.00% 100.01% 100.13% 100.00% 100.12%
429.mcf 100.00% 100.21% 100.38% 100.00% 100.17%
445.gobmk 100.00% 100.00% 99.99% 100.00% 99.99%
456.hmmer 100.00% 99.45% 99.62% 100.00% 100.17%
458.sjeng 100.00% 100.00% 100.03% 100.00% 100.03%
462.libquantum 100.00% 98.95% 98.60% 100.00% 99.65%
464.h264ref 100.00% 99.78% 101.18% 100.00% 101.41%
471.omnetpp 100.00% 99.82% 100.79% 100.00% 100.97%
473.astar 100.00% 100.18% 99.14% 100.00% 98.96%
483.xalancbmk 100.00% 99.96% 100.75% 100.00% 100.79%
Smaller binary sizes are always better.