SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2022 Standard Performance Evaluation Corporation

GIGA-BYTE TECHNOLOGY CO., LTD.

R272-Z30
(AMD EPYC 7773X, 2.20GHz)

SPECrate®2017_fp_base = 35400

SPECrate®2017_fp_peak = 38000

CPU2017 License: 9082 Test Date: Feb-2022
Test Sponsor: GIGA-BYTE TECHNOLOGY CO., LTD. Hardware Availability: Mar-2022
Tested by: GIGA-BYTE TECHNOLOGY CO., LTD. Software Availability: Feb-2022

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: AMD EPYC 7773X
  Max MHz: 3500
  Nominal: 2200
Enabled: 64 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: 768 MB I+D on chip per chip, 96 MB shared / 8
cores
  Other: None
Memory: 512 GB (8 x 64 GB 4DRx4 PC4-3200AA-L)
Storage: 1 x 1.92TB SATA SSD
Other: None
Software
OS: Ubuntu 20.04.3 LTS (x86_64)
kernel version
5.4.0-96-generic
Compiler: C/C++/Fortran: Version 3.2.0 of AOCC
Parallel: No
Firmware: Version M07 released Sep-2021
File System: ext4
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 35400
SPECrate®2017_fp_peak 38000
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 128 3317 3870 3318 3870 3318 3870 16 370 4340 369 4340 368 4360
507.cactuBSSN_r 128 431 3760 431 3760 428 3790 64 212 3830 212 3830 211 3830
508.namd_r 128 397 3060 397 3060 397 3060 128 395 3080 395 3070 395 3080
510.parest_r 128 615 5440 615 5440 616 5440 128 615 5440 615 5440 616 5440
511.povray_r 128 630 4750 629 4750 629 4750 128 630 4750 629 4750 629 4750
519.lbm_r 128 1428 94.5 1428 94.5 1425 94.7 64 709 95.1 709 95.1 709 95.1
521.wrf_r 128 930 3080 916 3130 929 3090 64 296 4840 296 4840 296 4850
526.blender_r 128 382 5100 384 5080 384 5070 128 382 5100 384 5080 384 5070
527.cam4_r 128 466 4810 468 4790 467 4800 128 466 4810 468 4790 467 4800
538.imagick_r 128 192 16500 193 16500 193 16500 128 190 16800 189 16800 189 16800
544.nab_r 128 332 6500 332 6500 332 6490 128 332 6500 332 6500 332 6490
549.fotonik3d_r 128 3881 1290 3884 1280 3883 1280 32 944 1320 943 1320 943 1320
554.roms_r 128 1677 1210 1675 1210 1678 1210 32 314 1620 313 1620 315 1620

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 settings:
cTDP = 280
Determinism Slider set to Power
SMT set to auto
IOMMU set to enable
Package Power Limit set to 280
NUMA nodes per socket set to NPS4
Memory Interleaving set to Disabled

 Sysinfo program /home/cpu2017/bin/sysinfo
 Rev: r6622 of 2021-04-07 982a61ec0915b55891ef0e16acafc64d
 running on test Fri Feb 11 18:01:00 2022

 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 7773X 64-Core Processor
       1  "physical id"s (chips)
       128 "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 : 64
       siblings  : 128
       physical 0: cores 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
       25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
       53 54 55 56 57 58 59 60 61 62 63

 From lscpu from util-linux 2.34:
      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):                          128
      On-line CPU(s) list:             0-127
      Thread(s) per core:              2
      Core(s) per socket:              64
      Socket(s):                       1
      NUMA node(s):                    8
      Vendor ID:                       AuthenticAMD
      CPU family:                      25
      Model:                           1
      Model name:                      AMD EPYC 7773X 64-Core Processor
      Stepping:                        2
      Frequency boost:                 enabled
      CPU MHz:                         3045.186
      CPU max MHz:                     2200.0000
      CPU min MHz:                     1500.0000
      BogoMIPS:                        4400.32
      Virtualization:                  AMD-V
      L1d cache:                       2 MiB
      L1i cache:                       2 MiB
      L2 cache:                        32 MiB
      L3 cache:                        768 MiB
      NUMA node0 CPU(s):               0-7,64-71
      NUMA node1 CPU(s):               8-15,72-79
      NUMA node2 CPU(s):               16-23,80-87
      NUMA node3 CPU(s):               24-31,88-95
      NUMA node4 CPU(s):               32-39,96-103
      NUMA node5 CPU(s):               40-47,104-111
      NUMA node6 CPU(s):               48-55,112-119
      NUMA node7 CPU(s):               56-63,120-127
      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

 From lscpu --cache:
      NAME ONE-SIZE ALL-SIZE WAYS TYPE        LEVEL
      L1d       32K       2M    8 Data            1
      L1i       32K       2M    8 Instruction     1
      L2       512K      32M    8 Unified         2
      L3        96M     768M   16 Unified         3

 /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 7 64 65 66 67 68 69 70 71
   node 0 size: 64360 MB
   node 0 free: 63811 MB
   node 1 cpus: 8 9 10 11 12 13 14 15 72 73 74 75 76 77 78 79
   node 1 size: 64506 MB
   node 1 free: 64091 MB
   node 2 cpus: 16 17 18 19 20 21 22 23 80 81 82 83 84 85 86 87
   node 2 size: 64508 MB
   node 2 free: 64110 MB
   node 3 cpus: 24 25 26 27 28 29 30 31 88 89 90 91 92 93 94 95
   node 3 size: 64507 MB
   node 3 free: 64084 MB
   node 4 cpus: 32 33 34 35 36 37 38 39 96 97 98 99 100 101 102 103
   node 4 size: 64508 MB
   node 4 free: 64073 MB
   node 5 cpus: 40 41 42 43 44 45 46 47 104 105 106 107 108 109 110 111
   node 5 size: 64507 MB
   node 5 free: 64111 MB
   node 6 cpus: 48 49 50 51 52 53 54 55 112 113 114 115 116 117 118 119
   node 6 size: 64508 MB
   node 6 free: 64087 MB
   node 7 cpus: 56 57 58 59 60 61 62 63 120 121 122 123 124 125 126 127
   node 7 size: 64494 MB
   node 7 free: 64064 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:       528282380 kB
    HugePages_Total:       0
    Hugepagesize:       2048 kB

 /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor has
    performance

 /usr/bin/lsb_release -d
    Ubuntu 20.04.3 LTS

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

 uname -a:
    Linux test 5.4.0-96-generic #109-Ubuntu SMP Wed Jan 12 16:49:16 UTC 2022 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 3 Feb 11 10:10

 SPEC is set to: /home/cpu2017
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/sda2      ext4  1.8T   18G  1.7T   2% /

 From /sys/devices/virtual/dmi/id
     Vendor:         GIGABYTE
     Product:        R272-Z30-00
     Product Family: Server
     Serial:         01234567890123456789AB

 Additional information from dmidecode 3.2 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 Samsung M386A8K40DM2-CWE 64 GB 4 rank 3200
     8x Unknown Unknown

 BIOS:
    BIOS Vendor:       GIGABYTE
    BIOS Version:      M07
    BIOS Date:         09/03/2021
    BIOS Revision:     5.22

 (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 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:  basepeak = yes 

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:  -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   -Kieee   -Mrecursive   -mllvm -reduce-array-computations=3   -mllvm -global-vectorize-slp=true   -mllvm -enable-licm-vrp   -lamdlibm   -ljemalloc   -lflang 
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:  -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   -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   -Mrecursive   -lamdlibm   -ljemalloc   -lflang 
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++:

 -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   -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   -Mrecursive   -lamdlibm   -ljemalloc   -lflang 

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/aocc320-flags-A1.html,
http://www.spec.org/cpu2017/flags/GIGA-BYTE-Platform-SPECcpu2017-Flags-V1.0-MilanX.html.

You can also download the XML flags sources by saving the following links:
http://www.spec.org/cpu2017/flags/aocc320-flags-A1.xml,
http://www.spec.org/cpu2017/flags/GIGA-BYTE-Platform-SPECcpu2017-Flags-V1.0-MilanX.xml.