SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2023 Standard Performance Evaluation Corporation

Hewlett Packard Enterprise (Test Sponsor: HPE)

ProLiant DL345 Gen10 Plus
(2.80 GHz, AMD EPYC 7203P)

SPECrate®2017_fp_base = 10300

SPECrate®2017_fp_peak = 10500

CPU2017 License: 3 Test Date: Nov-2023
Test Sponsor: HPE Hardware Availability: Nov-2023
Tested by: HPE Software Availability: May-2022

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: AMD EPYC 7203P
  Max MHz: 3400
  Nominal: 2800
Enabled: 8 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: 64 MB I+D on chip per chip,
16 MB shared / 2 cores
  Other: None
Memory: 512 GB (8 x 64 GB 2Rx4 PC4-3200AA-R)
Storage: 1 x 480 GB SAS SSD
Other: None
Software
OS: Red Hat Enterprise Linux 9.0 (Plow)
kernel 5.14.0-70.13.1.el9_0.x86_64
Compiler: C/C++/Fortran: Version 3.2.0 of AOCC
Parallel: No
Firmware: HPE BIOS Version A43 v2.84 08/17/2023 released
Aug-2023
File System: xfs
System State: Run level 3 (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 10300
SPECrate®2017_fp_peak 10500
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 16 476 3370 476 3370 476 3370 8 229 3510 230 3480 230 3490
507.cactuBSSN_r 16 147 1370 147 1380 147 1380 16 147 1370 147 1380 147 1380
508.namd_r 16 294 51.6 294 51.7 294 51.7 16 293 51.9 292 52.0 291 52.2
510.parest_r 16 411 1020 412 1020 412 1020 16 411 1020 412 1020 412 1020
511.povray_r 16 467 80.0 467 79.9 466 80.1 16 467 80.0 467 79.9 466 80.1
519.lbm_r 16 277 60.8 276 61.2 276 61.1 16 243 69.4 243 69.5 243 69.5
521.wrf_r 16 370 97.0 364 98.5 363 98.8 16 370 97.0 364 98.5 363 98.8
526.blender_r 16 298 81.9 296 82.4 297 82.2 16 298 81.9 296 82.4 297 82.2
527.cam4_r 16 360 77.7 359 77.9 359 77.9 16 360 77.7 359 77.9 359 77.9
538.imagick_r 16 146 2720 146 2730 146 2730 16 143 2780 143 2780 143 2780
544.nab_r 16 271 99.4 271 99.5 271 99.4 16 270 99.6 270 99.6 270 99.6
549.fotonik3d_r 16 585 1070 584 1070 599 1040 16 585 1070 584 1070 599 1040
554.roms_r 16 394 64.6 392 64.8 395 64.4 8 189 67.4 188 67.5 188 67.4

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>

To limit dirty cache to 8% of memory, 'sysctl -w vm.dirty_ratio=8' run as root.
To limit swap usage to minimum necessary, 'sysctl -w vm.swappiness=1' run as root.
To free node-local memory and avoid remote memory usage,
'sysctl -w vm.zone_reclaim_mode=1' run as root.
To clear filesystem caches, 'sync; sysctl -w vm.drop_caches=3' run as root.
To disable address space layout randomization (ASLR) to reduce run-to-run
variability, 'sysctl -w kernel.randomize_va_space=0' run as root.

To enable Transparent Hugepages (THP) for all allocations,
'echo always > /sys/kernel/mm/transparent_hugepage/enabled' and
'echo always > /sys/kernel/mm/transparent_hugepage/defrag' run as root.

Environment Variables Notes

Environment variables set by runcpu before the start of the run:
LD_LIBRARY_PATH =
     "/home/cpu2017/amd_rate_aocc320_milanx_A_lib/lib;/home/cpu2017/amd_rate_aocc320_milanx_A_lib/lib32:"
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 Throughput 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 Four memory domains per socket
Memory Patrol Scrubbing set to Disabled
Thermal Configuration set to Maximum Cooling
Workload Profile set to Custom
Power Regulator set to OS Control Mode

 Sysinfo program /home/cpu2017/bin/sysinfo
 Rev: r6732 of 2022-11-07 fe91c89b7ed5c36ae2c92cc097bec197
 running on localhost.localdomain Wed Nov  8 16:13:14 2023

 SUT (System Under Test) info as seen by some common utilities.

 ------------------------------------------------------------
 Table of contents
 ------------------------------------------------------------
  1. uname -a
  2. w
  3. Username
  4. ulimit -a
  5. sysinfo process ancestry
  6. /proc/cpuinfo
  7. lscpu
  8. numactl --hardware
  9. /proc/meminfo
 10. who -r
 11. Systemd service manager version: systemd 250 (250-6.el9_0)
 12. Services, from systemctl list-unit-files
 13. Linux kernel boot-time arguments, from /proc/cmdline
 14. cpupower frequency-info
 15. tuned-adm active
 16. sysctl
 17. /sys/kernel/mm/transparent_hugepage
 18. /sys/kernel/mm/transparent_hugepage/khugepaged
 19. OS release
 20. Disk information
 21. /sys/devices/virtual/dmi/id
 22. dmidecode
 23. BIOS
 ------------------------------------------------------------

 ------------------------------------------------------------
 1. uname -a
   Linux localhost.localdomain 5.14.0-70.13.1.el9_0.x86_64 #1 SMP PREEMPT Thu Apr 14 12:42:38 EDT 2022 x86_64
   x86_64 x86_64 GNU/Linux

 ------------------------------------------------------------
 2. w
    16:13:14 up 7 min,  1 user,  load average: 0.07, 0.03, 0.00
   USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
   root     pts/0     16:08   10.00s  1.14s  0.02s /bin/bash ./amd_rate_aocc320_milanx_A1.sh

 ------------------------------------------------------------
 3. Username
   From environment variable $USER:  root

 ------------------------------------------------------------
 4. ulimit -a
   real-time non-blocking time  (microseconds, -R) unlimited
   core file size              (blocks, -c) 0
   data seg size               (kbytes, -d) unlimited
   scheduling priority                 (-e) 0
   file size                   (blocks, -f) unlimited
   pending signals                     (-i) 2062725
   max locked memory           (kbytes, -l) 2097152
   max memory size             (kbytes, -m) unlimited
   open files                          (-n) 1024
   pipe size                (512 bytes, -p) 8
   POSIX message queues         (bytes, -q) 819200
   real-time priority                  (-r) 0
   stack size                  (kbytes, -s) unlimited
   cpu time                   (seconds, -t) unlimited
   max user processes                  (-u) 2062725
   virtual memory              (kbytes, -v) unlimited
   file locks                          (-x) unlimited

 ------------------------------------------------------------
 5. sysinfo process ancestry
  /usr/lib/systemd/systemd --switched-root --system --deserialize 18
  sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
  sshd: root [priv]
  sshd: root@pts/0
  -bash
  python3 ./run_amd_rate_aocc320_milanx_A1.py
  /bin/bash ./amd_rate_aocc320_milanx_A1.sh
  runcpu --config amd_rate_aocc320_milanx_A1.cfg --tune all --reportable --iterations 3 fprate
  runcpu --configfile amd_rate_aocc320_milanx_A1.cfg --tune all --reportable --iterations 3 --nopower
    --runmode rate --tune base:peak --size test:train:refrate fprate --nopreenv --note-preenv --logfile
    $SPEC/tmp/CPU2017.022/templogs/preenv.fprate.022.0.log --lognum 022.0 --from_runcpu 2
  specperl $SPEC/bin/sysinfo
 $SPEC = /home/cpu2017

 ------------------------------------------------------------
 6. /proc/cpuinfo
     model name      : AMD EPYC 7203P 8-Core Processor
     vendor_id       : AuthenticAMD
     cpu family      : 25
     model           : 1
     stepping        : 1
     microcode       : 0xa0011d1
     bugs            : sysret_ss_attrs spectre_v1 spectre_v2 spec_store_bypass
     TLB size        : 2560 4K pages
     cpu cores       : 8
     siblings        : 16
     1 physical ids (chips)
     16 processors (hardware threads)
     physical id 0: core ids 0-7
     physical id 0: apicids 0-15
   Caution: /proc/cpuinfo data regarding chips, cores, and threads is not necessarily reliable, especially for
   virtualized systems.  Use the above data carefully.

 ------------------------------------------------------------
 7. lscpu

 From lscpu from util-linux 2.37.4:
   Architecture:                    x86_64
   CPU op-mode(s):                  32-bit, 64-bit
   Address sizes:                   48 bits physical, 48 bits virtual
   Byte Order:                      Little Endian
   CPU(s):                          16
   On-line CPU(s) list:             0-15
   Vendor ID:                       AuthenticAMD
   BIOS Vendor ID:                  Advanced Micro Devices, Inc.
   Model name:                      AMD EPYC 7203P 8-Core Processor
   BIOS Model name:                 AMD EPYC 7203P 8-Core Processor
   CPU family:                      25
   Model:                           1
   Thread(s) per core:              2
   Core(s) per socket:              8
   Socket(s):                       1
   Stepping:                        1
   Frequency boost:                 enabled
   CPU max MHz:                     2800.0000
   CPU min MHz:                     1500.0000
   BogoMIPS:                        5589.34
   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 rapl
                                    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
                                    erms 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 rdpru wbnoinvd amd_ppin arat npt lbrv svm_lock
                                    nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter
                                    pfthreshold v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes
                                    vpclmulqdq rdpid overflow_recov succor smca fsrm
   Virtualization:                  AMD-V
   L1d cache:                       256 KiB (8 instances)
   L1i cache:                       256 KiB (8 instances)
   L2 cache:                        4 MiB (8 instances)
   L3 cache:                        64 MiB (4 instances)
   NUMA node(s):                    4
   NUMA node0 CPU(s):               0,1,8,9
   NUMA node1 CPU(s):               2,3,10,11
   NUMA node2 CPU(s):               4,5,12,13
   NUMA node3 CPU(s):               6,7,14,15
   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
   Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user pointer sanitization
   Vulnerability Spectre v2:        Mitigation; Retpolines, IBPB conditional, IBRS_FW, STIBP always-on, RSB
                                    filling
   Vulnerability Srbds:             Not affected
   Vulnerability Tsx async abort:   Not affected

 From lscpu --cache:
      NAME ONE-SIZE ALL-SIZE WAYS TYPE        LEVEL  SETS PHY-LINE COHERENCY-SIZE
      L1d       32K     256K    8 Data            1    64        1             64
      L1i       32K     256K    8 Instruction     1    64        1             64
      L2       512K       4M    8 Unified         2  1024        1             64
      L3        16M      64M   16 Unified         3 16384        1             64

 ------------------------------------------------------------
 8. numactl --hardware
 NOTE: a numactl 'node' might or might not correspond to a physical chip.
   available: 4 nodes (0-3)
   node 0 cpus: 0-1,8-9
   node 0 size: 128775 MB
   node 0 free: 128425 MB
   node 1 cpus: 2-3,10-11
   node 1 size: 129022 MB
   node 1 free: 128734 MB
   node 2 cpus: 4-5,12-13
   node 2 size: 128986 MB
   node 2 free: 128761 MB
   node 3 cpus: 6-7,14-15
   node 3 size: 129002 MB
   node 3 free: 128759 MB
   node distances:
   node   0   1   2   3
     0:  10  12  12  12
     1:  12  10  12  12
     2:  12  12  10  12
     3:  12  12  12  10

 ------------------------------------------------------------
 9. /proc/meminfo
    MemTotal:       528164896 kB

 ------------------------------------------------------------
 10. who -r
   run-level 3 Nov 8 16:05

 ------------------------------------------------------------
 11. Systemd service manager version: systemd 250 (250-6.el9_0)
   Default Target  Status
   multi-user      running

 ------------------------------------------------------------
 12. Services, from systemctl list-unit-files
   STATE            UNIT FILES
   enabled          NetworkManager NetworkManager-dispatcher NetworkManager-wait-online auditd crond
                    dbus-broker firewalld getty@ irqbalance kdump lvm2-monitor mdmonitor microcode
                    nis-domainname rhsmcertd rsyslog selinux-autorelabel-mark sshd sssd
                    systemd-network-generator tuned udisks2
   enabled-runtime  systemd-remount-fs
   disabled         blk-availability chrony-wait chronyd console-getty cpupower debug-shell kvm_stat
                    man-db-restart-cache-update nftables powertop rdisc rhsm rhsm-facts rpmdb-rebuild
                    serial-getty@ sshd-keygen@ systemd-boot-check-no-failures systemd-pstore systemd-sysext
   indirect         sssd-autofs sssd-kcm sssd-nss sssd-pac sssd-pam sssd-ssh sssd-sudo

 ------------------------------------------------------------
 13. Linux kernel boot-time arguments, from /proc/cmdline
   BOOT_IMAGE=(hd0,gpt2)/vmlinuz-5.14.0-70.13.1.el9_0.x86_64
   root=/dev/mapper/rhel-root
   ro
   resume=/dev/mapper/rhel-swap
   rd.lvm.lv=rhel/root
   rd.lvm.lv=rhel/swap

 ------------------------------------------------------------
 14. cpupower frequency-info
   analyzing CPU 0:
     current policy: frequency should be within 1.50 GHz and 2.80 GHz.
                     The governor "performance" may decide which speed to use
                     within this range.
     boost state support:
       Supported: yes
       Active: yes
       Boost States: 0
       Total States: 3
       Pstate-P0:  2800MHz

 ------------------------------------------------------------
 15. tuned-adm active
   Current active profile: throughput-performance

 ------------------------------------------------------------
 16. sysctl
   kernel.numa_balancing               1
   kernel.randomize_va_space           0
   vm.compaction_proactiveness        20
   vm.dirty_background_bytes           0
   vm.dirty_background_ratio          10
   vm.dirty_bytes                      0
   vm.dirty_expire_centisecs        3000
   vm.dirty_ratio                      8
   vm.dirty_writeback_centisecs      500
   vm.dirtytime_expire_seconds     43200
   vm.extfrag_threshold              500
   vm.min_unmapped_ratio               1
   vm.nr_hugepages                     0
   vm.nr_hugepages_mempolicy           0
   vm.nr_overcommit_hugepages          0
   vm.swappiness                       1
   vm.watermark_boost_factor       15000
   vm.watermark_scale_factor          10
   vm.zone_reclaim_mode                1

 ------------------------------------------------------------
 17. /sys/kernel/mm/transparent_hugepage
   defrag          [always] defer defer+madvise madvise never
   enabled         [always] madvise never
   hpage_pmd_size  2097152
   shmem_enabled   always within_size advise [never] deny force

 ------------------------------------------------------------
 18. /sys/kernel/mm/transparent_hugepage/khugepaged
   alloc_sleep_millisecs   60000
   defrag                      1
   max_ptes_none             511
   max_ptes_shared           256
   max_ptes_swap              64
   pages_to_scan            4096
   scan_sleep_millisecs    10000

 ------------------------------------------------------------
 19. OS release
   From /etc/*-release /etc/*-version
   os-release     Red Hat Enterprise Linux 9.0 (Plow)
   redhat-release Red Hat Enterprise Linux release 9.0 (Plow)
   system-release Red Hat Enterprise Linux release 9.0 (Plow)

 ------------------------------------------------------------
 20. Disk information
 SPEC is set to: /home/cpu2017
   Filesystem            Type  Size  Used Avail Use% Mounted on
   /dev/mapper/rhel-home xfs   372G   18G  354G   5% /home

 ------------------------------------------------------------
 21. /sys/devices/virtual/dmi/id
     Vendor:         HPE
     Product:        ProLiant DL345 Gen10 Plus
     Product Family: ProLiant
     Serial:         CN70460YWF

 ------------------------------------------------------------
 22. dmidecode
   Additional information from dmidecode 3.3 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 Micron 36ASF8G72PZ-3G2B2 64 GB 2 rank 3200


 ------------------------------------------------------------
 23. BIOS
 (This section combines info from /sys/devices and dmidecode.)
    BIOS Vendor:       HPE
    BIOS Version:      A43
    BIOS Date:         08/17/2023
    BIOS Revision:     2.84
    Firmware Revision: 2.96

Compiler Version Notes

============================================================================================================
C               | 519.lbm_r(base, peak) 538.imagick_r(base, peak) 544.nab_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++             | 508.namd_r(base, peak) 510.parest_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++, C          | 511.povray_r(base, peak) 526.blender_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++, C, Fortran | 507.cactuBSSN_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
Fortran         | 503.bwaves_r(base, peak) 549.fotonik3d_r(base, peak) 554.roms_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
Fortran, C      | 521.wrf_r(base, peak) 527.cam4_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.0/bin
AMD clang version 13.0.0 (CLANG: AOCC_3.2.0-Build#128 2021_11_12) (based on LLVM Mirror.Version.13.0.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc-compiler-3.2.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   -Wl,-mllvm -Wl,-enable-loop-fusion   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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-loop-fusion   -z muldefs   -lamdlibm   -ljemalloc   -lflang 

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   -Wl,-mllvm -Wl,-enable-loop-fusion   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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   -mllvm -enable-loop-fusion   -z muldefs   -lamdlibm   -ljemalloc   -lflang 

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   -Wl,-mllvm -Wl,-enable-loop-fusion   -Hz,1,0x1   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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   -mllvm -enable-loop-fusion   -mllvm -enable-loopinterchange   -mllvm -compute-interchange-order   -z muldefs   -lamdlibm   -ljemalloc   -lflang 

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   -Wl,-mllvm -Wl,-enable-loop-fusion   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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-loop-fusion   -Hz,1,0x1   -Kieee   -Mrecursive   -mllvm -fuse-tile-inner-loop   -funroll-loops   -mllvm -extra-vectorizer-passes   -mllvm -lsr-in-nested-loop   -mllvm -enable-loopinterchange   -mllvm -compute-interchange-order   -z muldefs   -lamdlibm   -ljemalloc   -lflang 

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   -Wl,-mllvm -Wl,-enable-loop-fusion   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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-loop-fusion   -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 

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   -Wl,-mllvm -Wl,-enable-loop-fusion   -O3   -march=znver3   -fveclib=AMDLIBM   -ffast-math   -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-loop-fusion   -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   -mllvm -enable-loopinterchange   -mllvm -compute-interchange-order   -z muldefs   -lamdlibm   -ljemalloc   -lflang 

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   -ffast-math   -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   -ffast-math   -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:  -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   -ffast-math   -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 
510.parest_r:  basepeak = yes 

Fortran benchmarks:

503.bwaves_r:  -m64   -Wl,-mllvm -Wl,-enable-X86-prefetching   -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   -ffast-math   -Mrecursive   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -lamdlibm   -ljemalloc   -lflang 
549.fotonik3d_r:  basepeak = yes 
554.roms_r:  -m64   -Wl,-mllvm -Wl,-enable-X86-prefetching   -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   -ffast-math   -Mrecursive   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -Hz,1,0x1   -mllvm -fuse-tile-inner-loop   -lamdlibm   -ljemalloc   -lflang 

Benchmarks using both Fortran and C:

521.wrf_r:  basepeak = yes 
527.cam4_r:  basepeak = yes 

Benchmarks using both C and C++:

511.povray_r:  basepeak = yes 
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/HPE-Platform-Flags-AMD-V1.3-EPYC-revS.html,
http://www.spec.org/cpu2017/flags/aocc320-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.3-EPYC-revS.xml,
http://www.spec.org/cpu2017/flags/aocc320-flags-A1.xml.