SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2022 Standard Performance Evaluation Corporation

Hewlett Packard Enterprise (Test Sponsor: HPE)

ProLiant DL385 Gen10 Plus v2
(2.30 GHz, AMD EPYC 7643)

SPECrate®2017_fp_base = 56400

SPECrate®2017_fp_peak = 56600

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

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: AMD EPYC 7643
  Max MHz: 3600
  Nominal: 2300
Enabled: 96 cores, 2 chips
Orderable: 1, 2 chip(s)
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 / 6
cores
  Other: None
Memory: 2 TB (16 x 128 GB 4Rx4 PC4-3200AA-L)
Storage: 1 x 182 GB SATA SSD, RAID 0
Other: None
Software
OS: Ubuntu 20.04.1 LTS (x86_64)
Kernel 5.4.0-42-generic
Compiler: C/C++/Fortran: Version 3.0.0 of AOCC
Parallel: No
Firmware: HPE BIOS Version A42 v2.40 02/15/2021 released
Feb-2021
File System: ext4
System State: Run level 5 (multi-user)
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 56400
SPECrate®2017_fp_peak 56600
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 96 1223 787 1225 786 1224 787 96 1223 787 1225 786 1224 787
507.cactuBSSN_r 96 166 731 167 729 167 727 96 167 730 167 729 166 730
508.namd_r 96 220 414 220 414 220 415 96 220 414 220 414 220 415
510.parest_r 96 347 723 348 721 349 720 96 347 723 348 721 349 720
511.povray_r 96 357 628 359 625 360 623 96 352 636 353 635 352 636
519.lbm_r 96 534 189 534 189 534 189 96 534 190 534 190 534 190
521.wrf_r 96 387 556 387 555 387 556 96 387 556 387 555 387 556
526.blender_r 96 230 636 230 637 229 638 96 228 640 228 642 228 640
527.cam4_r 96 271 620 272 616 271 619 96 268 626 270 622 270 623
538.imagick_r 96 105 2280 105 2280 105 2280 96 104 2290 104 2290 104 2290
544.nab_r 96 200 808 200 808 200 809 96 200 808 200 808 200 809
549.fotonik3d_r 96 1435 261 1436 261 1435 261 96 1435 261 1436 261 1435 261
554.roms_r 96 556 274 552 276 553 276 96 556 274 552 276 553 276

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 limit
'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 for peak
integer runs and all FP runs to enable Transparent Hugepages (THP).
'echo madvise > /sys/kernel/mm/transparent_hugepage/enabled' run as root for base
integer runs to enable THP only on request.

Environment Variables Notes

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

General Notes

Binaries were compiled on a system with 2x AMD EPYC 7742 CPU + 512GiB 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


Submitted_by: "Bhatnagar, Prateek" <prateek.bhatnagar@hpe.com>
Submitted: Mon May 24 12:49:23 EDT 2021
Submission: cpu2017-20210524-26452.sub

Submitted_by: "Bhatnagar, Prateek" <prateek.bhatnagar@hpe.com>
Submitted: Tue Jun  1 09:16:08 EDT 2021
Submission: cpu2017-20210524-26452.sub

Platform Notes

BIOS Configuration
 Workload Profile set to General Throughput Compute
 AMD SMT Option set to Disabled
 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 Four memory domains per socket
 Data Fabric C-State Enable set to Force Enabled
 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
 L1 HW Prefetcher set to Disabled

 Sysinfo program /home/cpu2017/bin/sysinfo
 Rev: r6538 of 2020-09-24 e8664e66d2d7080afeaa89d4b38e2f1c
 running on dl385g10v2 Thu Apr  2 00:58:35 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 7643 48-Core Processor
       2  "physical id"s (chips)
       96 "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 : 48
       siblings  : 48
       physical 0: cores 0 1 2 3 4 5 8 9 10 11 12 13 16 17 18 19 20 21 24 25 26 27 28 29
       32 33 34 35 36 37 40 41 42 43 44 45 48 49 50 51 52 53 56 57 58 59 60 61
       physical 1: cores 0 1 2 3 4 5 8 9 10 11 12 13 16 17 18 19 20 21 24 25 26 27 28 29
       32 33 34 35 36 37 40 41 42 43 44 45 48 49 50 51 52 53 56 57 58 59 60 61

 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):                          96
      On-line CPU(s) list:             0-95
      Thread(s) per core:              1
      Core(s) per socket:              48
      Socket(s):                       2
      NUMA node(s):                    16
      Vendor ID:                       AuthenticAMD
      CPU family:                      25
      Model:                           1
      Model name:                      AMD EPYC 7643 48-Core Processor
      Stepping:                        1
      CPU MHz:                         1792.610
      BogoMIPS:                        4591.18
      Virtualization:                  AMD-V
      L1d cache:                       3 MiB
      L1i cache:                       3 MiB
      L2 cache:                        48 MiB
      L3 cache:                        512 MiB
      NUMA node0 CPU(s):               0-5
      NUMA node1 CPU(s):               6-11
      NUMA node2 CPU(s):               12-17
      NUMA node3 CPU(s):               18-23
      NUMA node4 CPU(s):               24-29
      NUMA node5 CPU(s):               30-35
      NUMA node6 CPU(s):               36-41
      NUMA node7 CPU(s):               42-47
      NUMA node8 CPU(s):               48-53
      NUMA node9 CPU(s):               54-59
      NUMA node10 CPU(s):              60-65
      NUMA node11 CPU(s):              66-71
      NUMA node12 CPU(s):              72-77
      NUMA node13 CPU(s):              78-83
      NUMA node14 CPU(s):              84-89
      NUMA node15 CPU(s):              90-95
      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 disabled, 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 x2apic 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: 16 nodes (0-15)
   node 0 cpus: 0 1 2 3 4 5
   node 0 size: 128776 MB
   node 0 free: 128580 MB
   node 1 cpus: 6 7 8 9 10 11
   node 1 size: 129020 MB
   node 1 free: 128872 MB
   node 2 cpus: 12 13 14 15 16 17
   node 2 size: 129022 MB
   node 2 free: 128896 MB
   node 3 cpus: 18 19 20 21 22 23
   node 3 size: 128997 MB
   node 3 free: 128792 MB
   node 4 cpus: 24 25 26 27 28 29
   node 4 size: 129022 MB
   node 4 free: 128868 MB
   node 5 cpus: 30 31 32 33 34 35
   node 5 size: 129021 MB
   node 5 free: 128878 MB
   node 6 cpus: 36 37 38 39 40 41
   node 6 size: 129022 MB
   node 6 free: 128907 MB
   node 7 cpus: 42 43 44 45 46 47
   node 7 size: 129009 MB
   node 7 free: 128905 MB
   node 8 cpus: 48 49 50 51 52 53
   node 8 size: 129022 MB
   node 8 free: 128896 MB
   node 9 cpus: 54 55 56 57 58 59
   node 9 size: 129021 MB
   node 9 free: 128890 MB
   node 10 cpus: 60 61 62 63 64 65
   node 10 size: 129022 MB
   node 10 free: 128913 MB
   node 11 cpus: 66 67 68 69 70 71
   node 11 size: 129021 MB
   node 11 free: 128907 MB
   node 12 cpus: 72 73 74 75 76 77
   node 12 size: 129022 MB
   node 12 free: 128866 MB
   node 13 cpus: 78 79 80 81 82 83
   node 13 size: 129021 MB
   node 13 free: 128906 MB
   node 14 cpus: 84 85 86 87 88 89
   node 14 size: 129022 MB
   node 14 free: 128877 MB
   node 15 cpus: 90 91 92 93 94 95
   node 15 size: 129020 MB
   node 15 free: 128909 MB
   node distances:
   node   0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
     0:  10  11  12  12  12  12  12  12  32  32  32  32  32  32  32  32
     1:  11  10  12  12  12  12  12  12  32  32  32  32  32  32  32  32
     2:  12  12  10  11  12  12  12  12  32  32  32  32  32  32  32  32
     3:  12  12  11  10  12  12  12  12  32  32  32  32  32  32  32  32
     4:  12  12  12  12  10  11  12  12  32  32  32  32  32  32  32  32
     5:  12  12  12  12  11  10  12  12  32  32  32  32  32  32  32  32
     6:  12  12  12  12  12  12  10  11  32  32  32  32  32  32  32  32
     7:  12  12  12  12  12  12  11  10  32  32  32  32  32  32  32  32
     8:  32  32  32  32  32  32  32  32  10  11  12  12  12  12  12  12
     9:  32  32  32  32  32  32  32  32  11  10  12  12  12  12  12  12
    10:  32  32  32  32  32  32  32  32  12  12  10  11  12  12  12  12
    11:  32  32  32  32  32  32  32  32  12  12  11  10  12  12  12  12
    12:  32  32  32  32  32  32  32  32  12  12  12  12  10  11  12  12
    13:  32  32  32  32  32  32  32  32  12  12  12  12  11  10  12  12
    14:  32  32  32  32  32  32  32  32  12  12  12  12  12  12  10  11
    15:  32  32  32  32  32  32  32  32  12  12  12  12  12  12  11  10

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

 /sbin/tuned-adm active
     Current active profile: throughput-performance

 /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 dl385g10v2 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 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:
                                                        disabled, RSB filling
 CVE-2020-0543 (Special Register Buffer Data Sampling): Not affected
 CVE-2019-11135 (TSX Asynchronous Abort):               Not affected

 run-level 5 Apr 2 00:57

 SPEC is set to: /home/cpu2017
    Filesystem                        Type  Size  Used Avail Use% Mounted on
    /dev/mapper/ubuntu--vg-ubuntu--lv ext4  182G   94G   79G  55% /

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

 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:
     16x UNKNOWN M386AAG40AM3-CWE 128 GB 4 rank 3200
     16x UNKNOWN NOT AVAILABLE

 BIOS:
    BIOS Vendor:       HPE
    BIOS Version:      A42
    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:  basepeak = yes 

C++ benchmarks:

508.namd_r:  basepeak = yes 
510.parest_r:  basepeak = yes 

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++:

 -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 

Benchmarks using Fortran, C, and C++:

 -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   -mllvm -unroll-threshold=100   -mllvm -loop-unswitch-threshold=200000   -finline-aggressive   -mllvm -reroll-loops   -mllvm -aggressive-loop-unswitch   -mllvm -extra-vectorizer-passes   -mllvm -convert-pow-exp-to-int=false   -Kieee   -Mrecursive   -lamdlibm   -ljemalloc   -lflang   -lflangrti 

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/HPE-Platform-Flags-AMD-V1.2-EPYC-revP.html,
http://www.spec.org/cpu2017/flags/aocc300-flags-A1.html.

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