SPEC CPU result comparison

Comparison of x86_64 levels - Summer 2022

SPECINT 2006: LTO -Ofast - Different x86_64 levels

-flto -Ofast

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.60% 99.60% 100.00% 100.00%
401.bzip2 100.00% 100.41% 101.02% 100.00% 100.61%
403.gcc 100.00% 100.00% 100.00% 100.00% 100.00%
429.mcf 100.00% 99.40% 100.00% 100.00% 100.61%
445.gobmk 100.00% 99.17% 100.41% 100.00% 101.25%
456.hmmer 100.00% 76.17% 71.84% 100.00% 94.31%
458.sjeng 100.00% 100.41% 98.78% 100.00% 98.37%
462.libquantum 100.00% 97.47% 88.82% 100.00% 91.13%
464.h264ref 100.00% 100.00% 100.64% 100.00% 100.64%
471.omnetpp 100.00% 105.43% 104.13% 100.00% 98.76%
473.astar 100.00% 100.00% 100.41% 100.00% 100.41%
483.xalancbmk 100.00% 104.71% 100.86% 100.00% 96.32%
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% 100.37% 101.59% 100.00% 101.21%
401.bzip2 100.00% 94.49% 104.72% 100.00% 110.82%
403.gcc 100.00% 100.07% 100.72% 100.00% 100.65%
429.mcf 100.00% 100.14% 102.58% 100.00% 102.44%
445.gobmk 100.00% 99.94% 100.49% 100.00% 100.56%
456.hmmer 100.00% 100.76% 104.21% 100.00% 103.42%
458.sjeng 100.00% 99.99% 100.07% 100.00% 100.08%
462.libquantum 100.00% 113.67% 119.67% 100.00% 105.28%
464.h264ref 100.00% 99.55% 99.91% 100.00% 100.36%
471.omnetpp 100.00% 99.91% 101.11% 100.00% 101.21%
473.astar 100.00% 99.80% 97.67% 100.00% 97.86%
483.xalancbmk 100.00% 99.97% 101.29% 100.00% 101.32%
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% 97.18% 100.00% 97.97%
401.bzip2 100.00% 102.05% 100.41% 100.00% 98.39%
403.gcc 100.00% 99.38% 99.38% 100.00% 100.00%
429.mcf 100.00% 100.61% 98.58% 100.00% 97.98%
445.gobmk 100.00% 99.37% 100.42% 100.00% 101.05%
456.hmmer 100.00% 81.98% 78.80% 100.00% 96.12%
458.sjeng 100.00% 101.03% 101.03% 100.00% 100.00%
462.libquantum 100.00% 98.48% 92.41% 100.00% 93.83%
464.h264ref 100.00% 103.74% 99.78% 100.00% 96.19%
471.omnetpp 100.00% 95.06% 100.00% 100.00% 105.19%
473.astar 100.00% 100.81% 96.55% 100.00% 95.77%
483.xalancbmk 100.00% 101.75% 100.88% 100.00% 99.14%
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% 100.37% 101.59% 100.00% 101.21%
401.bzip2 100.00% 94.49% 104.72% 100.00% 110.82%
403.gcc 100.00% 100.07% 100.72% 100.00% 100.65%
429.mcf 100.00% 100.14% 102.58% 100.00% 102.44%
445.gobmk 100.00% 99.94% 100.49% 100.00% 100.56%
456.hmmer 100.00% 100.76% 104.21% 100.00% 103.42%
458.sjeng 100.00% 99.99% 100.07% 100.00% 100.08%
462.libquantum 100.00% 113.67% 119.67% 100.00% 105.28%
464.h264ref 100.00% 99.55% 99.91% 100.00% 100.36%
471.omnetpp 100.00% 99.91% 101.11% 100.00% 101.21%
473.astar 100.00% 99.80% 97.67% 100.00% 97.86%
483.xalancbmk 100.00% 99.97% 101.29% 100.00% 101.32%
Smaller binary sizes are always better.