SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2024 Standard Performance Evaluation Corporation

Lenovo Global Technology

ThinkSystem SD535 V3
(2.40 GHz, AMD EPYC 9654)

SPECrate®2017_fp_base = 70800

SPECrate®2017_fp_peak = 70900

CPU2017 License: 9017 Test Date: Apr-2024
Test Sponsor: Lenovo Global Technology Hardware Availability: May-2024
Tested by: Lenovo Global Technology Software Availability: Mar-2024

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: AMD EPYC 9654
  Max MHz: 3700
  Nominal: 2400
Enabled: 96 cores, 1 chip
Orderable: 1 chip
Cache L1: 32 KB I + 32 KB D on chip per core
  L2: 1 MB I+D on chip per core
  L3: 384 MB I+D on chip per chip,
32 MB shared / 8 cores
  Other: None
Memory: 384 GB (12 x 32 GB 2Rx8 PC5-4800B-R)
Storage: 1 x 960 GB M.2 SATA SSD
Other: CPU Cooling: Air
Software
OS: SUSE Linux Enterprise Server 15 SP5
Kernel 5.14.21-150500.53-default
Compiler: C/C++/Fortran: Version 4.0.0 of AOCC
Parallel: No
Firmware: Lenovo BIOS Version GPE103H 1.10 released Mar-2024
File System: xfs
System State: Run level 3 (multi-user)
Base Pointers: 64-bit
Peak Pointers: 64-bit
Other: None
Power Management: BIOS and OS 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 70800
SPECrate®2017_fp_peak 70900
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 96 10850 887 10840 888 10850 887 96 10850 887 10840 888 10850 887
507.cactuBSSN_r 96 1510 808 1510 807 1500 808 96 1510 808 1510 807 1500 808
508.namd_r 96 1530 597 1520 600 1520 600 96 1520 601 1520 601 1520 600
510.parest_r 96 3170 792 3210 783 3180 789 96 3170 792 3210 783 3180 789
511.povray_r 96 2730 821 2730 821 2730 822 96 2730 821 2730 821 2730 822
519.lbm_r 96 3230 313 3230 313 3220 314 96 3230 313 3230 313 3220 314
521.wrf_r 96 3670 587 3670 586 3670 586 96 3670 587 3670 586 3670 586
526.blender_r 96 1990 733 2000 731 2010 729 96 1990 733 2000 731 2010 729
527.cam4_r 96 2110 795 2110 794 2110 795 96 2100 799 2100 799 2100 800
538.imagick_r 96 78.9 3030 78.7 3030 79.3 3010 96 78.9 3030 78.7 3030 79.3 3010
544.nab_r 96 1320 1230 1320 1220 1320 1220 96 1320 1230 1320 1220 1320 1220
549.fotonik3d_r 96 12680 295 12690 295 12690 295 96 12680 295 12690 295 12690 295
554.roms_r 96 4410 346 4370 349 4380 349 96 4410 346 4370 349 4380 349

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.

cpupower set to performance mode
cpupower frequency-set -r -g performance
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-1.1.9-amd-aocc400-znver4-A1.2/amd_rate_aocc400_znver4_A_lib/lib:/home/cpu2017-1.1.9-amd
     -aocc400-znver4-A1.2/amd_rate_aocc400_znver4_A_lib/lib32:"
MALLOC_CONF = "retain:true"

General Notes

Binaries were compiled on a system with 2x AMD EPYC 9174F CPU + 1.5TiB Memory using RHEL 8.6

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.

Platform Notes

BIOS configuration:
Operating Mode set to Maximum Performance and then set it to Custom Mode
NUMA Nodes per Socket set to NPS4
L2 Stream HW Prefetcher set to Disabled
SMT Mode set to Disabled

 Sysinfo program /home/cpu2017-1.1.9-amd-aocc400-znver4-A1.2/bin/sysinfo
 Rev: r6732 of 2022-11-07 fe91c89b7ed5c36ae2c92cc097bec197
 running on localhost Tue Feb 28 20:02:51 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 249 (249.16+suse.171.gdad0071f15)
 12. Services, from systemctl list-unit-files
 13. Linux kernel boot-time arguments, from /proc/cmdline
 14. cpupower frequency-info
 15. sysctl
 16. /sys/kernel/mm/transparent_hugepage
 17. /sys/kernel/mm/transparent_hugepage/khugepaged
 18. OS release
 19. Disk information
 20. /sys/devices/virtual/dmi/id
 21. dmidecode
 22. BIOS
 ------------------------------------------------------------

 ------------------------------------------------------------
 1. uname -a
   Linux localhost 5.14.21-150500.53-default #1 SMP PREEMPT_DYNAMIC Wed May 10 07:56:26 UTC 2023 (b630043)
   x86_64 x86_64 x86_64 GNU/Linux

 ------------------------------------------------------------
 2. w
    20:02:52 up 2 min,  1 user,  load average: 0.00, 0.00, 0.00
   USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
   root     tty1     -                20:00   20.00s  1.11s  0.07s /bin/bash ./amd_rate_aocc400_znver4_A1.sh

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

 ------------------------------------------------------------
 4. ulimit -a
   core file size          (blocks, -c) unlimited
   data seg size           (kbytes, -d) unlimited
   scheduling priority             (-e) 0
   file size               (blocks, -f) unlimited
   pending signals                 (-i) 1546479
   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) 1546479
   virtual memory          (kbytes, -v) unlimited
   file locks                      (-x) unlimited

 ------------------------------------------------------------
 5. sysinfo process ancestry
  /usr/lib/systemd/systemd --switched-root --system --deserialize 30
  login -- root
  -bash
  /bin/bash ./run_SD535V3_genoa-X_1.03.sh
  /bin/bash ./Run026-compliant-amd-ratefp.sh
  python3 ./run_amd_rate_aocc400_znver4_A1.py
  /bin/bash ./amd_rate_aocc400_znver4_A1.sh
  runcpu --config amd_rate_aocc400_znver4_A1.cfg --tune all --reportable --iterations 3 fprate
  runcpu --configfile amd_rate_aocc400_znver4_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.233/templogs/preenv.fprate.233.0.log --lognum 233.0 --from_runcpu 2
  specperl $SPEC/bin/sysinfo
 $SPEC = /home/cpu2017-1.1.9-amd-aocc400-znver4-A1.2

 ------------------------------------------------------------
 6. /proc/cpuinfo
     model name      : AMD EPYC 9654 96-Core Processor
     vendor_id       : AuthenticAMD
     cpu family      : 25
     model           : 17
     stepping        : 1
     microcode       : 0xa101144
     bugs            : sysret_ss_attrs spectre_v1 spectre_v2 spec_store_bypass
     TLB size        : 3584 4K pages
     cpu cores       : 96
     siblings        : 96
     1 physical ids (chips)
     96 processors (hardware threads)
     physical id 0: core ids 0-7,16-23,32-39,48-55,64-71,80-87,96-103,112-119,128-135,144-151,160-167,176-183
     physical id 0: apicids 0-7,16-23,32-39,48-55,64-71,80-87,96-103,112-119,128-135,144-151,160-167,176-183
   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:                   52 bits physical, 57 bits virtual
   Byte Order:                      Little Endian
   CPU(s):                          96
   On-line CPU(s) list:             0-95
   Vendor ID:                       AuthenticAMD
   Model name:                      AMD EPYC 9654 96-Core Processor
   CPU family:                      25
   Model:                           17
   Thread(s) per core:              1
   Core(s) per socket:              96
   Socket(s):                       1
   Stepping:                        1
   Frequency boost:                 enabled
   CPU max MHz:                     3707.8120
   CPU min MHz:                     1500.0000
   BogoMIPS:                        4792.35
   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 amd_lbr_v2 nopl nonstop_tsc cpuid extd_apicid
                                    aperfmperf rapl 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 perfmon_v2 ibrs ibpb stibp
                                    vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f
                                    avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni
                                    avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc
                                    cqm_mbm_total cqm_mbm_local avx512_bf16 clzero irperf xsaveerptr rdpru
                                    wbnoinvd amd_ppin cppc arat npt lbrv svm_lock nrip_save tsc_scale
                                    vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic
                                    v_vmsave_vmload vgif v_spec_ctrl avx512vbmi umip pku ospke avx512_vbmi2
                                    gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq la57 rdpid
                                    overflow_recov succor smca fsrm flush_l1d
   Virtualization:                  AMD-V
   L1d cache:                       3 MiB (96 instances)
   L1i cache:                       3 MiB (96 instances)
   L2 cache:                        96 MiB (96 instances)
   L3 cache:                        384 MiB (12 instances)
   NUMA node(s):                    4
   NUMA node0 CPU(s):               0-23
   NUMA node1 CPU(s):               24-47
   NUMA node2 CPU(s):               48-71
   NUMA node3 CPU(s):               72-95
   Vulnerability Itlb multihit:     Not affected
   Vulnerability L1tf:              Not affected
   Vulnerability Mds:               Not affected
   Vulnerability Meltdown:          Not affected
   Vulnerability Mmio stale data:   Not affected
   Vulnerability Retbleed:          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; Retpolines, IBPB conditional, IBRS_FW, STIBP disabled, RSB
                                    filling, PBRSB-eIBRS Not affected
   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       3M    8 Data            1    64        1             64
      L1i       32K       3M    8 Instruction     1    64        1             64
      L2         1M      96M    8 Unified         2  2048        1             64
      L3        32M     384M   16 Unified         3 32768        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-23
   node 0 size: 96459 MB
   node 0 free: 95685 MB
   node 1 cpus: 24-47
   node 1 size: 96761 MB
   node 1 free: 96291 MB
   node 2 cpus: 48-71
   node 2 size: 96727 MB
   node 2 free: 96252 MB
   node 3 cpus: 72-95
   node 3 size: 96700 MB
   node 3 free: 96218 MB
   node distances:
   node   0   1   2   3
     0:  10  20  20  20
     1:  20  10  20  20
     2:  20  20  10  20
     3:  20  20  20  10

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

 ------------------------------------------------------------
 10. who -r
   run-level 3 Feb 28 20:00

 ------------------------------------------------------------
 11. Systemd service manager version: systemd 249 (249.16+suse.171.gdad0071f15)
   Default Target  Status
   multi-user      running

 ------------------------------------------------------------
 12. Services, from systemctl list-unit-files
   STATE            UNIT FILES
   enabled          YaST2-Firstboot YaST2-Second-Stage apparmor auditd cron getty@ irqbalance issue-generator
                    kbdsettings klog lvm2-monitor nscd postfix purge-kernels rollback rsyslog smartd sshd
                    systemd-pstore wicked wickedd-auto4 wickedd-dhcp4 wickedd-dhcp6 wickedd-nanny
   enabled-runtime  systemd-remount-fs
   disabled         autofs autoyast-initscripts blk-availability boot-sysctl ca-certificates chrony-wait
                    chronyd console-getty cups cups-browsed debug-shell ebtables exchange-bmc-os-info
                    firewalld gpm grub2-once haveged haveged-switch-root hwloc-dump-hwdata ipmi ipmievd
                    issue-add-ssh-keys kexec-load lunmask man-db-create multipathd nfs nfs-blkmap rpcbind
                    rpmconfigcheck rsyncd serial-getty@ smartd_generate_opts snmpd snmptrapd
                    systemd-boot-check-no-failures systemd-network-generator systemd-sysext
                    systemd-time-wait-sync systemd-timesyncd
   indirect         wickedd

 ------------------------------------------------------------
 13. Linux kernel boot-time arguments, from /proc/cmdline
   BOOT_IMAGE=/boot/vmlinuz-5.14.21-150500.53-default
   root=UUID=2b8d3d82-44aa-4750-bc54-9d507d1ea188
   splash=silent
   mitigations=auto
   quiet
   security=apparmor

 ------------------------------------------------------------
 14. cpupower frequency-info
   analyzing CPU 0:
     current policy: frequency should be within 1.50 GHz and 2.40 GHz.
                     The governor "performance" may decide which speed to use
                     within this range.
     boost state support:
       Supported: yes
       Active: yes

 ------------------------------------------------------------
 15. 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

 ------------------------------------------------------------
 16. /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

 ------------------------------------------------------------
 17. /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

 ------------------------------------------------------------
 18. OS release
   From /etc/*-release /etc/*-version
   os-release SUSE Linux Enterprise Server 15 SP5

 ------------------------------------------------------------
 19. Disk information
 SPEC is set to: /home/cpu2017-1.1.9-amd-aocc400-znver4-A1.2
   Filesystem     Type  Size  Used Avail Use% Mounted on
   /dev/sda3      xfs   890G   27G  863G   4% /

 ------------------------------------------------------------
 20. /sys/devices/virtual/dmi/id
     Vendor:         Lenovo
     Product:        ThinkSystem SD535V3 MB
     Product Family: ThinkSystem
     Serial:         1234567890

 ------------------------------------------------------------
 21. dmidecode
   Additional information from dmidecode 3.4 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 SK Hynix HMCG88AEBRA168N 32 GB 2 rank 4800
     4x SK Hynix HMCG88AEBRA173N 32 GB 2 rank 4800


 ------------------------------------------------------------
 22. BIOS
 (This section combines info from /sys/devices and dmidecode.)
    BIOS Vendor:       Lenovo
    BIOS Version:      GPE103H-1.10
    BIOS Date:         03/12/2024
    BIOS Revision:     1.10
    Firmware Revision: 0.50

Compiler Version Notes

============================================================================================================
C               | 519.lbm_r(base, peak) 538.imagick_r(base, peak) 544.nab_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++             | 508.namd_r(base, peak) 510.parest_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++, C          | 511.povray_r(base, peak) 526.blender_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
C++, C, Fortran | 507.cactuBSSN_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
Fortran         | 503.bwaves_r(base, peak) 549.fotonik3d_r(base, peak) 554.roms_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
------------------------------------------------------------------------------------------------------------

============================================================================================================
Fortran, C      | 521.wrf_r(base, peak) 527.cam4_r(base, peak)
------------------------------------------------------------------------------------------------------------
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.0.0/bin
AMD clang version 14.0.6 (CLANG: AOCC_4.0.0-Build#434 2022_10_28) (based on LLVM Mirror.Version.14.0.6)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /opt/AMD/aocc/aocc-compiler-4.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   -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,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-ldist-scalar-expand   -fenable-aggressive-gather   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -fstruct-layout=7   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -fstrip-mining   -mllvm -reduce-array-computations=3   -zopt   -lamdlibm   -lamdalloc   -lflang 

C++ benchmarks:

 -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -mllvm -unroll-threshold=100   -finline-aggressive   -mllvm -loop-unswitch-threshold=200000   -mllvm -reduce-array-computations=3   -zopt   -lamdlibm   -lamdalloc   -lflang 

Fortran benchmarks:

 -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-enable-X86-prefetching   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -Kieee   -Mrecursive   -funroll-loops   -mllvm -lsr-in-nested-loop   -mllvm -reduce-array-computations=3   -fepilog-vectorization-of-inductions   -zopt   -lamdlibm   -lamdalloc   -lflang 

Benchmarks using both Fortran and C:

 -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-enable-X86-prefetching   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -fstruct-layout=7   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -fstrip-mining   -mllvm -reduce-array-computations=3   -zopt   -Kieee   -Mrecursive   -funroll-loops   -mllvm -lsr-in-nested-loop   -fepilog-vectorization-of-inductions   -lamdlibm   -lamdalloc   -lflang 

Benchmarks using both C and C++:

 -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -fstruct-layout=7   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -fstrip-mining   -mllvm -reduce-array-computations=3   -zopt   -mllvm -unroll-threshold=100   -finline-aggressive   -mllvm -loop-unswitch-threshold=200000   -lamdlibm   -lamdalloc   -lflang 

Benchmarks using Fortran, C, and C++:

 -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -fstruct-layout=7   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -fstrip-mining   -mllvm -reduce-array-computations=3   -zopt   -mllvm -unroll-threshold=100   -finline-aggressive   -mllvm -loop-unswitch-threshold=200000   -Kieee   -Mrecursive   -funroll-loops   -mllvm -lsr-in-nested-loop   -fepilog-vectorization-of-inductions   -lamdlibm   -lamdalloc   -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:  basepeak = yes 
538.imagick_r:  basepeak = yes 
544.nab_r:  basepeak = yes 

C++ benchmarks:

508.namd_r:  -m64   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-x86-use-vzeroupper=false   -Ofast   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -finline-aggressive   -mllvm -unroll-threshold=100   -mllvm -reduce-array-computations=3   -zopt   -lamdlibm   -lamdalloc 
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   -flto   -Wl,-mllvm -Wl,-align-all-nofallthru-blocks=6   -Wl,-mllvm -Wl,-reduce-array-computations=3   -Wl,-mllvm -Wl,-enable-X86-prefetching   -O3   -march=znver4   -fveclib=AMDLIBM   -ffast-math   -fstruct-layout=7   -mllvm -unroll-threshold=50   -mllvm -inline-threshold=1000   -fremap-arrays   -mllvm -reduce-array-computations=3   -zopt   -Kieee   -Mrecursive   -funroll-loops   -mllvm -lsr-in-nested-loop   -fepilog-vectorization-of-inductions   -lamdlibm   -lamdalloc   -lflang 

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/Lenovo-Platform-SPECcpu2017-Flags-V1.2-Genoa-U.html,
http://www.spec.org/cpu2017/flags/aocc400-flags.2023-09-13.html.

You can also download the XML flags sources by saving the following links:
http://www.spec.org/cpu2017/flags/Lenovo-Platform-SPECcpu2017-Flags-V1.2-Genoa-U.xml,
http://www.spec.org/cpu2017/flags/aocc400-flags.2023-09-13.xml.