SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2021 Standard Performance Evaluation Corporation

Hewlett Packard Enterprise (Test Sponsor: HPE)

ProLiant DL325 Gen10 Plus v2
(2.00 GHz, AMD EPYC 7663)

SPECrate®2017_fp_base = 28600

SPECrate®2017_fp_peak = 28700

CPU2017 License: 3 Test Date: Apr-2021
Test Sponsor: HPE Hardware Availability: Jun-2021
Tested by: HPE Software Availability: Mar-2021

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: AMD EPYC 7663
  Max MHz: 3500
  Nominal: 2000
Enabled: 56 cores, 1 chip, 2 threads/core
Orderable: 1 chip
Cache L1: 32 KB I + 32 KB D on chip per core
  L2: 512 KB I+D on chip per core
  L3: 256 MB I+D on chip per chip,
32 MB shared / 7 cores
  Other: None
Memory: 1 TB (8 x 128 GB 4Rx4 PC4-3200AA-L)
Storage: 1 x 800 GB SAS SSD, RAID 0
Other: None
Software
OS: Ubuntu 20.04.1 LTS (x86_64)
Kernel 5.4.0-54-generic
Compiler: C/C++/Fortran: Version 3.0.0 of AOCC
Parallel: No
Firmware: HPE BIOS Version A43 v2.40 02/15/2021 released
Mar-2021
File System: ext4
System State: Run level 5 (multi-user, GUI disabled)
Base Pointers: 64-bit
Peak Pointers: 64-bit
Other: jemalloc: jemalloc memory allocator library v5.1.0
Power Management: BIOS set to prefer performance at the cost of
additional power usage

Results Table

Benchmark Base Peak
Copies Seconds Ratio Seconds Ratio Seconds Ratio Copies Seconds Ratio Seconds Ratio Seconds Ratio
SPECrate®2017_fp_base 28600
SPECrate®2017_fp_peak 28700
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 112 2947 3810 2946 3810 2946 3810 112 2947 3810 2946 3810 2946 3810
507.cactuBSSN_r 112 387 3660 388 3660 388 3660 112 387 3660 388 3660 388 3660
508.namd_r 112 408 2610 407 2610 408 2610 112 408 2610 407 2610 408 2610
510.parest_r 112 1405 2090 1421 2060 1407 2080 112 1398 2100 1410 2080 1399 2090
511.povray_r 112 677 3860 673 3880 676 3870 112 671 3900 669 3910 670 3900
519.lbm_r 112 1250 94.5 1250 94.5 1250 94.5 112 1248 94.6 1248 94.6 1248 94.6
521.wrf_r 112 1190 2110 1191 2110 1191 2110 112 1190 2110 1191 2110 1191 2110
526.blender_r 112 429 3970 427 3990 427 3990 112 429 3970 427 3990 427 3990
527.cam4_r 112 561 3490 554 3530 561 3490 112 547 3580 552 3550 550 3560
538.imagick_r 112 200 13900 200 13900 200 13900 112 199 14000 199 14000 200 14000
544.nab_r 112 363 5190 363 5200 360 5230 112 360 5240 357 5280 360 5240
549.fotonik3d_r 112 3418 1280 3417 1280 3419 1280 112 3418 1280 3417 1280 3419 1280
554.roms_r 112 1587 1120 1589 1120 1584 1120 112 1587 1120 1589 1120 1584 1120

Compiler Notes

The AMD64 AOCC Compiler Suite is available at
http://developer.amd.com/amd-aocc/

Submit Notes

The config file option 'submit' was used.
'numactl' was used to bind copies to the cores.
See the configuration file for details.

Operating System Notes

'ulimit -s unlimited' was used to set environment stack size
'ulimit -l 2097152' was used to set environment locked pages in memory limit
runcpu command invoked through numactl i.e.:
numactl --interleave=all runcpu <etc>
'echo 8 > /proc/sys/vm/dirty_ratio' run as root to limit dirty cache to 8% of
memory.
'echo 1 > /proc/sys/vm/swappiness' run as root to limit swap usage to minimum
necessary.
'echo 1 > /proc/sys/vm/zone_reclaim_mode' run as root to free node-local memory
and avoid remote memory usage.
'sync; echo 3 > /proc/sys/vm/drop_caches' run as root to reset filesystem caches.
'sysctl -w kernel.randomize_va_space=0' run as root to disable address space layout
randomization (ASLR) to reduce run-to-run variability.
'echo always > /sys/kernel/mm/transparent_hugepage/enabled' and
'echo always > /sys/kernel/mm/transparent_hugepage/defrag' run as root to enable
Transparent Hugepages (THP) for this run.
'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' run as root for peak
runs of 628.pop2_s and 638.imagick_s to enable THP only on request.

The real test date is Apr-2021. The clock was mistakenly set to 2020 before the benchmark was run.

Environment Variables Notes

Environment variables set by runcpu before the start of the run:
LD_LIBRARY_PATH =
     "/cpu2017/amd_rate_aocc300_milan_A_lib/64;/cpu2017/amd_rate_aocc300_mila
     n_A_lib/32:"
MALLOC_CONF = "retain:true"

General Notes

Binaries were compiled on a system with 2x AMD EPYC 7742 CPU + 1TiB Memory using openSUSE 15.2

NA: The test sponsor attests, as of date of publication, that CVE-2017-5754 (Meltdown)
is mitigated in the system as tested and documented.
Yes: The test sponsor attests, as of date of publication, that CVE-2017-5753 (Spectre variant 1)
is mitigated in the system as tested and documented.
Yes: The test sponsor attests, as of date of publication, that CVE-2017-5715 (Spectre variant 2)
is mitigated in the system as tested and documented.

jemalloc: configured and built with GCC v4.8.2 in RHEL 7.4 (No options specified)
jemalloc 5.1.0 is available here:
https://github.com/jemalloc/jemalloc/releases/download/5.1.0/jemalloc-5.1.0.tar.bz2

Platform Notes

BIOS Configuration
 Workload Profile set to General Peak Frequency Compute
 Determinism Control set to Manual
  Performance Determinism set to Power Deterministic
 Last-Level Cache (LLC) as NUMA Node set to Enabled
 NUMA memory domains per socket set to One memory domain per socket
 Thermal Configuration set to Maximum Cooling
 Workload Profile set to Custom
  Infinity Fabric Power Management set to Disabled
   Infinity Fabric Performance State set to P0
  Power Regulator set to OS Control Mode

 Sysinfo program /cpu2017/bin/sysinfo
 Rev: r6538 of 2020-09-24 e8664e66d2d7080afeaa89d4b38e2f1c
 running on dl325gen10plus Thu Apr  2 01:33:05 2020

 SUT (System Under Test) info as seen by some common utilities.
 For more information on this section, see
    https://www.spec.org/cpu2017/Docs/config.html#sysinfo

 From /proc/cpuinfo
    model name : AMD EPYC 7663 56-Core Processor
       1  "physical id"s (chips)
       112 "processors"
    cores, siblings (Caution: counting these is hw and system dependent. The following
    excerpts from /proc/cpuinfo might not be reliable.  Use with caution.)
       cpu cores : 56
       siblings  : 112
       physical 0: cores 0 1 2 3 4 5 6 8 9 10 11 12 13 14 16 17 18 19 20 21 22 24 25 26 27
       28 29 30 32 33 34 35 36 37 38 40 41 42 43 44 45 46 48 49 50 51 52 53 54 56 57 58 59
       60 61 62

 From lscpu:
      Architecture:                    x86_64
      CPU op-mode(s):                  32-bit, 64-bit
      Byte Order:                      Little Endian
      Address sizes:                   48 bits physical, 48 bits virtual
      CPU(s):                          112
      On-line CPU(s) list:             0-111
      Thread(s) per core:              2
      Core(s) per socket:              56
      Socket(s):                       1
      NUMA node(s):                    8
      Vendor ID:                       AuthenticAMD
      CPU family:                      25
      Model:                           1
      Model name:                      AMD EPYC 7663 56-Core Processor
      Stepping:                        1
      CPU MHz:                         2606.904
      BogoMIPS:                        3992.63
      Virtualization:                  AMD-V
      L1d cache:                       1.8 MiB
      L1i cache:                       1.8 MiB
      L2 cache:                        28 MiB
      L3 cache:                        256 MiB
      NUMA node0 CPU(s):               0-6,56-62
      NUMA node1 CPU(s):               7-13,63-69
      NUMA node2 CPU(s):               14-20,70-76
      NUMA node3 CPU(s):               21-27,77-83
      NUMA node4 CPU(s):               28-34,84-90
      NUMA node5 CPU(s):               35-41,91-97
      NUMA node6 CPU(s):               42-48,98-104
      NUMA node7 CPU(s):               49-55,105-111
      Vulnerability Itlb multihit:     Not affected
      Vulnerability L1tf:              Not affected
      Vulnerability Mds:               Not affected
      Vulnerability Meltdown:          Not affected
      Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via
      prctl and seccomp
      Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user
      pointer sanitization
      Vulnerability Spectre v2:        Mitigation; Full AMD retpoline, IBPB conditional,
      IBRS_FW, STIBP always-on, RSB filling
      Vulnerability Srbds:             Not affected
      Vulnerability Tsx async abort:   Not affected
      Flags:                           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr
      pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt
      pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid
      aperfmperf pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 movbe popcnt aes
      xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a
      misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb
      bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 invpcid_single hw_pstate ssbd mba ibrs
      ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 invpcid cqm rdt_a rdseed adx smap
      clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc
      cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr wbnoinvd arat npt lbrv svm_lock
      nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
      v_vmsave_vmload vgif umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca

 /proc/cpuinfo cache data
    cache size : 512 KB

 From numactl --hardware  WARNING: a numactl 'node' might or might not correspond to a
 physical chip.
   available: 8 nodes (0-7)
   node 0 cpus: 0 1 2 3 4 5 6 56 57 58 59 60 61 62
   node 0 size: 128774 MB
   node 0 free: 128459 MB
   node 1 cpus: 7 8 9 10 11 12 13 63 64 65 66 67 68 69
   node 1 size: 129018 MB
   node 1 free: 128670 MB
   node 2 cpus: 14 15 16 17 18 19 20 70 71 72 73 74 75 76
   node 2 size: 129020 MB
   node 2 free: 128834 MB
   node 3 cpus: 21 22 23 24 25 26 27 77 78 79 80 81 82 83
   node 3 size: 129019 MB
   node 3 free: 128845 MB
   node 4 cpus: 28 29 30 31 32 33 34 84 85 86 87 88 89 90
   node 4 size: 129020 MB
   node 4 free: 128327 MB
   node 5 cpus: 35 36 37 38 39 40 41 91 92 93 94 95 96 97
   node 5 size: 129019 MB
   node 5 free: 128815 MB
   node 6 cpus: 42 43 44 45 46 47 48 98 99 100 101 102 103 104
   node 6 size: 128996 MB
   node 6 free: 128802 MB
   node 7 cpus: 49 50 51 52 53 54 55 105 106 107 108 109 110 111
   node 7 size: 129006 MB
   node 7 free: 128832 MB
   node distances:
   node   0   1   2   3   4   5   6   7
     0:  10  11  12  12  12  12  12  12
     1:  11  10  12  12  12  12  12  12
     2:  12  12  10  11  12  12  12  12
     3:  12  12  11  10  12  12  12  12
     4:  12  12  12  12  10  11  12  12
     5:  12  12  12  12  11  10  12  12
     6:  12  12  12  12  12  12  10  11
     7:  12  12  12  12  12  12  11  10

 From /proc/meminfo
    MemTotal:       1056642672 kB
    HugePages_Total:       0
    Hugepagesize:       2048 kB

 /usr/bin/lsb_release -d
    Ubuntu 20.04.1 LTS

 From /etc/*release* /etc/*version*
    debian_version: bullseye/sid
    os-release:
       NAME="Ubuntu"
       VERSION="20.04.1 LTS (Focal Fossa)"
       ID=ubuntu
       ID_LIKE=debian
       PRETTY_NAME="Ubuntu 20.04.1 LTS"
       VERSION_ID="20.04"
       HOME_URL="https://www.ubuntu.com/"
       SUPPORT_URL="https://help.ubuntu.com/"

 uname -a:
    Linux dl325gen10plus 5.4.0-54-generic #60-Ubuntu SMP Fri Nov 6 10:37:59 UTC 2020
    x86_64 x86_64 x86_64 GNU/Linux

 Kernel self-reported vulnerability status:

 CVE-2018-12207 (iTLB Multihit):                        Not affected
 CVE-2018-3620 (L1 Terminal Fault):                     Not affected
 Microarchitectural Data Sampling:                      Not affected
 CVE-2017-5754 (Meltdown):                              Not affected
 CVE-2018-3639 (Speculative Store Bypass):              Mitigation: Speculative Store
                                                        Bypass disabled via prctl and
                                                        seccomp
 CVE-2017-5753 (Spectre variant 1):                     Mitigation: usercopy/swapgs
                                                        barriers and __user pointer
                                                        sanitization
 CVE-2017-5715 (Spectre variant 2):                     Mitigation: Full AMD retpoline,
                                                        IBPB: conditional, IBRS_FW, STIBP:
                                                        always-on, RSB filling
 CVE-2020-0543 (Special Register Buffer Data Sampling): Not affected
 CVE-2019-11135 (TSX Asynchronous Abort):               Not affected

 run-level 5 Apr 1 17:25

 SPEC is set to: /cpu2017
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/sdb2      ext4  733G   23G  672G   4% /

 From /sys/devices/virtual/dmi/id
     Vendor:         HPE
     Product:        ProLiant DL325 Gen10 Plus
     Product Family: ProLiant
     Serial:         CN79290FKQ

 Additional information from dmidecode follows.  WARNING: Use caution when you interpret
 this section. The 'dmidecode' program reads system data which is "intended to allow
 hardware to be accurately determined", but the intent may not be met, as there are
 frequent changes to hardware, firmware, and the "DMTF SMBIOS" standard.
   Memory:
     8x UNKNOWN M386AAG40AM3-CWE 128 GB 4 rank 3200
     8x UNKNOWN NOT AVAILABLE

 BIOS:
    BIOS Vendor:       HPE
    BIOS Version:      A43
    BIOS Date:         02/15/2021
    BIOS Revision:     2.40
    Firmware Revision: 2.40

 (End of data from sysinfo program)

Compiler Version Notes

==============================================================================
C               | 519.lbm_r(base, peak) 538.imagick_r(base, peak)
                | 544.nab_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

==============================================================================
C++             | 508.namd_r(base, peak) 510.parest_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

==============================================================================
C++, C          | 511.povray_r(base, peak) 526.blender_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

==============================================================================
C++, C, Fortran | 507.cactuBSSN_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

==============================================================================
Fortran         | 503.bwaves_r(base, peak) 549.fotonik3d_r(base, peak)
                | 554.roms_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

==============================================================================
Fortran, C      | 521.wrf_r(base, peak) 527.cam4_r(base, peak)
------------------------------------------------------------------------------
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
AMD clang version 12.0.0 (CLANG: AOCC_3.0.0-Build#78 2020_12_10) (based on
  LLVM Mirror.Version.12.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.0.0/bin
------------------------------------------------------------------------------

Base Compiler Invocation

C benchmarks:

 clang 

C++ benchmarks:

 clang++ 

Fortran benchmarks:

 flang 

Benchmarks using both Fortran and C:

 flang   clang 

Benchmarks using both C and C++:

 clang++   clang 

Benchmarks using Fortran, C, and C++:

 clang++   clang   flang 

Base Portability Flags

503.bwaves_r:  -DSPEC_LP64 
507.cactuBSSN_r:  -DSPEC_LP64 
508.namd_r:  -DSPEC_LP64 
510.parest_r:  -DSPEC_LP64 
511.povray_r:  -DSPEC_LP64 
519.lbm_r:  -DSPEC_LP64 
521.wrf_r:  -DSPEC_CASE_FLAG   -Mbyteswapio   -DSPEC_LP64 
526.blender_r:  -funsigned-char   -D__BOOL_DEFINED   -DSPEC_LP64 
527.cam4_r:  -DSPEC_CASE_FLAG   -DSPEC_LP64 
538.imagick_r:  -DSPEC_LP64 
544.nab_r:  -DSPEC_LP64 
549.fotonik3d_r:  -DSPEC_LP64 
554.roms_r:  -DSPEC_LP64 

Base Optimization Flags

C benchmarks:

 -m64   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=5   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -mllvm -function-specialize   -flv-function-specialization   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

C++ benchmarks:

 -m64   -std=c++98   -mno-adx   -mno-sse4a   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -mllvm -enable-partial-unswitch   -mllvm -unroll-threshold=100   -finline-aggressive   -flv-function-specialization   -mllvm -loop-unswitch-threshold=200000   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -mllvm -extra-vectorizer-passes   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -mllvm -convert-pow-exp-to-int=false   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Fortran benchmarks:

 -m64   -Wl,-mllvm -Wl,-enable-X86-prefetching   -Wl,-mllvm -Wl,-enable-licm-vrp   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Hz,1,0x1   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -Kieee   -Mrecursive   -mllvm -fuse-tile-inner-loop   -funroll-loops   -mllvm -extra-vectorizer-passes   -mllvm -lsr-in-nested-loop   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Benchmarks using both Fortran and C:

 -m64   -Wl,-mllvm -Wl,-enable-X86-prefetching   -Wl,-mllvm -Wl,-enable-licm-vrp   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=5   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -mllvm -function-specialize   -flv-function-specialization   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -Hz,1,0x1   -Kieee   -Mrecursive   -mllvm -fuse-tile-inner-loop   -funroll-loops   -mllvm -extra-vectorizer-passes   -mllvm -lsr-in-nested-loop   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Benchmarks using both C and C++:

 -m64   -std=c++98   -mno-adx   -mno-sse4a   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=5   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -mllvm -function-specialize   -flv-function-specialization   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -mllvm -enable-partial-unswitch   -mllvm -unroll-threshold=100   -finline-aggressive   -mllvm -loop-unswitch-threshold=200000   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -mllvm -extra-vectorizer-passes   -mllvm -convert-pow-exp-to-int=false   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Benchmarks using Fortran, C, and C++:

 -m64   -std=c++98   -mno-adx   -mno-sse4a   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -O3   -ffast-math   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=5   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -mllvm -function-specialize   -flv-function-specialization   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -mllvm -enable-partial-unswitch   -mllvm -unroll-threshold=100   -finline-aggressive   -mllvm -loop-unswitch-threshold=200000   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -mllvm -extra-vectorizer-passes   -mllvm -convert-pow-exp-to-int=false   -Hz,1,0x1   -Kieee   -Mrecursive   -mllvm -fuse-tile-inner-loop   -funroll-loops   -mllvm -lsr-in-nested-loop   -z muldefs   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Base Other Flags

C benchmarks:

 -Wno-unused-command-line-argument 

C++ benchmarks:

 -Wno-unused-command-line-argument 

Fortran benchmarks:

 -Wno-unused-command-line-argument 

Benchmarks using both Fortran and C:

 -Wno-unused-command-line-argument 

Benchmarks using both C and C++:

 -Wno-unused-command-line-argument 

Benchmarks using Fortran, C, and C++:

 -Wno-unused-command-line-argument 

Peak Compiler Invocation

C benchmarks:

 clang 

C++ benchmarks:

 clang++ 

Fortran benchmarks:

 flang 

Benchmarks using both Fortran and C:

 flang   clang 

Benchmarks using both C and C++:

 clang++   clang 

Benchmarks using Fortran, C, and C++:

 clang++   clang   flang 

Peak Portability Flags

Same as Base Portability Flags

Peak Optimization Flags

C benchmarks:

519.lbm_r:  -m64   -flto   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Ofast   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=7   -mllvm -unroll-threshold=50   -fremap-arrays   -flv-function-specialization   -mllvm -inline-threshold=1000   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -function-specialize   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -lamdlibm   -ljemalloc 
538.imagick_r:  Same as 519.lbm_r 
544.nab_r:  -m64   -flto   -Wl,-mllvm -Wl,-region-vectorize   -Wl,-mllvm -Wl,-function-specialize   -Ofast   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=7   -mllvm -unroll-threshold=50   -fremap-arrays   -flv-function-specialization   -mllvm -inline-threshold=1000   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -function-specialize   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -lamdlibm   -ljemalloc 

C++ benchmarks:

508.namd_r:  basepeak = yes 
510.parest_r:  -m64   -std=c++98   -mno-adx   -mno-sse4a   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -Wl,-mllvm -Wl,-enable-licm-vrp   -flto   -Wl,-mllvm -Wl,-suppress-fmas   -Wl,-mllvm -Wl,-function-specialize   -Ofast   -march=znver3   -fveclib=AMDLIBM   -finline-aggressive   -mllvm -unroll-threshold=100   -flv-function-specialization   -mllvm -enable-licm-vrp   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -lamdlibm   -ljemalloc 

Fortran benchmarks:

503.bwaves_r:  basepeak = yes 
549.fotonik3d_r:  basepeak = yes 
554.roms_r:  basepeak = yes 

Benchmarks using both Fortran and C:

521.wrf_r:  basepeak = yes 
527.cam4_r:  -m64   -Wl,-mllvm -Wl,-enable-X86-prefetching   -Wl,-mllvm -Wl,-enable-licm-vrp   -flto   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-force-vector-interleave=1   -Ofast   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=7   -mllvm -unroll-threshold=50   -fremap-arrays   -flv-function-specialization   -mllvm -inline-threshold=1000   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -function-specialize   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -O3   -ffast-math   -funroll-loops   -mllvm -extra-vectorizer-passes   -mllvm -lsr-in-nested-loop   -Mrecursive   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

Benchmarks using both C and C++:

511.povray_r:  -m64   -std=c++98   -mno-adx   -mno-sse4a   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -Wl,-mllvm -Wl,-enable-licm-vrp   -flto   -Wl,-mllvm -Wl,-function-specialize   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Ofast   -march=znver3   -fveclib=AMDLIBM   -fstruct-layout=7   -mllvm -unroll-threshold=50   -fremap-arrays   -flv-function-specialization   -mllvm -inline-threshold=1000   -mllvm -enable-gvn-hoist   -mllvm -global-vectorize-slp=true   -mllvm -function-specialize   -mllvm -enable-licm-vrp   -mllvm -reduce-array-computations=3   -finline-aggressive   -mllvm -unroll-threshold=100   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -lamdlibm   -ljemalloc 
526.blender_r:  basepeak = yes 

Benchmarks using Fortran, C, and C++:

507.cactuBSSN_r:  basepeak = yes 

Peak Other Flags

C benchmarks:

 -Wno-unused-command-line-argument 

C++ benchmarks:

 -Wno-unused-command-line-argument 

Fortran benchmarks:

 -Wno-unused-command-line-argument 

Benchmarks using both Fortran and C:

 -Wno-unused-command-line-argument 

Benchmarks using both C and C++:

 -Wno-unused-command-line-argument 

Benchmarks using Fortran, C, and C++:

 -Wno-unused-command-line-argument 

The flags files that were used to format this result can be browsed at
http://www.spec.org/cpu2017/flags/aocc300-flags-A1.html,
http://www.spec.org/cpu2017/flags/HPE-Platform-Flags-AMD-V1.2-EPYC-revP.html.

You can also download the XML flags sources by saving the following links:
http://www.spec.org/cpu2017/flags/aocc300-flags-A1.xml,
http://www.spec.org/cpu2017/flags/HPE-Platform-Flags-AMD-V1.2-EPYC-revP.xml.