SPEC CPU result comparison

Comparison of x86_64 levels - Summer 2022

SPEC2017 FPrate: 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
503.bwaves_r 100.00% 100.00% 102.27% 100.00% 102.27%
507.cactuBSSN_r 100.00% 100.83% 97.29% 100.00% 96.49%
508.namd_r 100.00% 100.00% 85.10% 100.00% 85.10%
510.parest_r 100.00% 102.06% 113.99% 100.00% 111.69%
511.povray_r 100.00% 101.42% 97.97% 100.00% 96.59%
519.lbm_r 100.00% 99.60% 94.98% 100.00% 95.36%
521.wrf_r 100.00% 100.00% 95.77% 100.00% 95.77%
526.blender_r 100.00% 100.00% 99.19% 100.00% 99.19%
527.cam4_r 100.00% 99.60% 95.79% 100.00% 96.18%
538.imagick_r 100.00% 93.78% 80.32% 100.00% 85.65%
544.nab_r 100.00% 100.00% 95.18% 100.00% 95.18%
549.fotonik3d_r 100.00% 98.19% 87.55% 100.00% 89.16%
554.roms_r 100.00% 100.00% 98.18% 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
503.bwaves_r 100.00% 100.04% 96.52% 100.00% 96.48%
507.cactuBSSN_r 100.00% 100.07% 96.85% 100.00% 96.79%
508.namd_r 100.00% 99.27% 93.04% 100.00% 93.72%
510.parest_r 100.00% 100.16% 100.15% 100.00% 99.99%
511.povray_r 100.00% 99.38% 96.97% 100.00% 97.57%
519.lbm_r 100.00% 99.77% 93.01% 100.00% 93.23%
521.wrf_r 100.00% 100.13% 100.33% 100.00% 100.19%
526.blender_r 100.00% 99.76% 99.61% 100.00% 99.86%
527.cam4_r 100.00% 99.99% 99.84% 100.00% 99.84%
538.imagick_r 100.00% 98.97% 97.11% 100.00% 98.11%
544.nab_r 100.00% 99.94% 99.21% 100.00% 99.27%
549.fotonik3d_r 100.00% 99.86% 99.02% 100.00% 99.16%
554.roms_r 100.00% 99.97% 99.35% 100.00% 99.38%
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
503.bwaves_r 100.00% 100.00% 97.18% 100.00% 97.18%
507.cactuBSSN_r 100.00% 100.00% 92.56% 100.00% 92.56%
508.namd_r 100.00% 100.00% 76.02% 100.00% 76.02%
510.parest_r 100.00% 100.40% 98.39% 100.00% 97.99%
511.povray_r 100.00% 100.82% 95.91% 100.00% 95.13%
519.lbm_r 100.00% 100.00% 93.35% 100.00% 93.35%
521.wrf_r 100.00% 100.41% 101.02% 100.00% 100.61%
526.blender_r 100.00% 101.65% 99.59% 100.00% 97.97%
527.cam4_r 100.00% 100.40% 97.57% 100.00% 97.18%
538.imagick_r 100.00% 90.93% 79.23% 100.00% 87.14%
544.nab_r 100.00% 100.20% 88.51% 100.00% 88.33%
549.fotonik3d_r 100.00% 98.79% 95.98% 100.00% 97.15%
554.roms_r 100.00% 100.00% 96.98% 100.00% 96.98%
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
503.bwaves_r 100.00% 100.04% 96.52% 100.00% 96.48%
507.cactuBSSN_r 100.00% 100.07% 96.85% 100.00% 96.79%
508.namd_r 100.00% 99.27% 93.04% 100.00% 93.72%
510.parest_r 100.00% 100.16% 100.15% 100.00% 99.99%
511.povray_r 100.00% 99.38% 96.97% 100.00% 97.57%
519.lbm_r 100.00% 99.77% 93.01% 100.00% 93.23%
521.wrf_r 100.00% 100.13% 100.33% 100.00% 100.19%
526.blender_r 100.00% 99.76% 99.61% 100.00% 99.86%
527.cam4_r 100.00% 99.99% 99.84% 100.00% 99.84%
538.imagick_r 100.00% 98.97% 97.11% 100.00% 98.11%
544.nab_r 100.00% 99.94% 99.21% 100.00% 99.27%
549.fotonik3d_r 100.00% 99.86% 99.02% 100.00% 99.16%
554.roms_r 100.00% 99.97% 99.35% 100.00% 99.38%
Smaller binary sizes are always better.