SPEC CPU®2017 Floating Point Rate Result

Copyright 2017-2022 Standard Performance Evaluation Corporation

Supermicro

SuperServer ARS-210M-NR
(R12SPD-A , Ampere Altra Max M128-30)

SPECrate®2017_fp_base = 23200

SPECrate®2017_fp_peak = 23800

CPU2017 License: 001176 Test Date: Nov-2022
Test Sponsor: Supermicro Hardware Availability: Nov-2022
Tested by: Supermicro Software Availability: May-2022

Benchmark result graphs are available in the PDF report.

Hardware
CPU Name: Ampere Altra Max M128-30
  Max MHz: 3300
  Nominal: 3000
Enabled: 128 cores, 1 chip
Orderable: 1 chip
Cache L1: 64 KB I + 64 KB D on chip per core
  L2: 1 MB I+D on chip per core
  L3: 32 MB I+D on chip per chip
  Other: None
Memory: 512 GB (8 x 64 GB 2Rx4 PC4-3200AA-R)
Storage: 1 x 4 TB NVMe SSD
Other: None
Software
OS: CentOS Stream release 8
Kernel 4.18.0-383.el8.aarch64
Compiler: C/C++/Fortran: Version 10.2.1 of Ampere GCC
GNU Compiler Collection
Parallel: No
Firmware: Version 1.1 released Oct-2022
File System: xfs
System State: Run level 3 (multi-user)
Base Pointers: 64-bit
Peak Pointers: 64-bit
Other: Jemalloc memory allocator library v5.2.1
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 23200
SPECrate®2017_fp_peak 23800
Results appear in the order in which they were run. Bold underlined text indicates a median measurement.
503.bwaves_r 128 3316 3870 3315 3870 3315 3870 128 3317 3870 3317 3870 3317 3870
507.cactuBSSN_r 128 695 2330 694 2340 694 2340 128 695 2330 694 2340 694 2340
508.namd_r 128 260 4670 262 4640 260 4680 128 260 4670 262 4640 260 4680
510.parest_r 128 3649 91.8 3650 91.7 3651 91.7 128 3580 93.5 3584 93.4 3579 93.6
511.povray_r 128 401 7460 401 7450 400 7470 128 301 9930 303 9880 300 9960
519.lbm_r 128 3437 39.3 3438 39.2 3441 39.2 128 3431 39.3 3431 39.3 3430 39.3
521.wrf_r 128 1799 1590 1798 1590 1798 1590 128 1805 1590 1805 1590 1808 1590
526.blender_r 128 420 4650 417 4670 416 4680 128 420 4650 417 4670 416 4680
527.cam4_r 128 911 2460 917 2440 923 2430 128 980 2290 975 2300 982 2280
538.imagick_r 128 438 7260 435 7310 436 7300 128 438 7270 435 7320 437 7280
544.nab_r 128 357 6040 354 6090 353 6100 128 324 6660 323 6680 323 6670
549.fotonik3d_r 128 4380 1140 4376 1140 4379 1140 128 4368 1140 4369 1140 4368 1140
554.roms_r 128 3806 53.4 3806 53.4 3804 53.5 128 3806 53.4 3806 53.4 3804 53.5

Submit Notes

 The config file option 'submit' was used.
 'numactl' was used to bind copies to the cores.

Operating System Notes

 'ulimit -s unlimited' was used to set environment stack size
 Set dirty_ratio=8 to limit dirty cache to 8% of memory
 i.e. echo 8 | sudo tee /proc/sys/vm/dirty_ratio
 Set swappiness=1 to swap only if necessary
 i.e. echo 1 | sudo tee /proc/sys/vm/swappiness
 Set zone_reclaim_mode=1 to free local node memory and avoid remote memory
 i.e. echo 1 | sudo tee /proc/sys/vm/zone_reclaim_mode
 Set drop_caches=3 to reset caches before invoking runcpu
 i.e. echo 3 | sudo tee /proc/sys/vm/drop_caches
 Set numa_balancing=0 to disable automatic numa balancing
 i.e. echo 0 | sudo tee /proc/sys/kernel/numa_balancing
 Switch off all ktune and tuned settings
 i.e. sudo tuned-adm off
 Transparent huge pages set to 'never'
 i.e. sudo bash -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled"

 runcpu command invoked through numactl i.e.
 numactl --interleave=0-3 runcpu <etc>

Environment Variables Notes

Environment variables set by runcpu before the start of the run:
LD_LIBRARY_PATH =
     "/home/amptest/ampere_spec2017/jemalloc/install/lib:/home/amptest/ampere
     _spec2017/gcc/install/lib64/:/home/amptest/ampere_spec2017/gcc/install/l
     ib/:/home/cpu2017-0621/gcc/install/lib64:/home/cpu2017-0621/jemalloc/ins
     tall/lib:"

General Notes

 Binaries were compiled on a system with the following configuration
 Ampere Altra Q80-33 2P CPU + 512GB Memory
 using CentOS 8.2 + glibc 2.28 + binutil 2.30

 Ampere GCC 10.2.1 is available via
 https://github.com/AmpereComputing/ampere-gcc/releases

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.
NA: 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 v5.2.1 is available via
 https://github.com/jemalloc/jemalloc/releases/download/5.2.1/jemalloc-5.2.1.tar.bz2
 Build aarch64 version with configure options
 --prefix=/home/amptest/jemalloc/install --with-lg-quantum=3

Platform Notes

BIOS Settings:
Enable ACPI Auto Configuration = Disabled
Enable CPPC = Disabled
Enable LPI = Disabled
ANC mode = Quadrant

 Sysinfo program /home/cpu2017-0621/spec2017/bin/sysinfo
 Rev: r6622 of 2021-04-07 982a61ec0915b55891ef0e16acafc64d
 running on 135-170-65.engtw Mon Nov 28 21:30:05 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
 *
 * Did not identify cpu model.  If you would
 * like to write your own sysinfo program, see
 * www.spec.org/cpu2017/config.html#sysinfo
 *
 *
 * 0 "physical id" tags found.  Perhaps this is an older system,
 * or a virtualized system.  Not attempting to guess how to
 * count chips/cores for this system.
 *
       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.)

 From lscpu from util-linux 2.32.1:
      Architecture:        aarch64
      Byte Order:          Little Endian
      CPU(s):              128
      On-line CPU(s) list: 0-127
      Thread(s) per core:  1
      Core(s) per socket:  128
      Socket(s):           1
      NUMA node(s):        4
      Vendor ID:           ARM
      BIOS Vendor ID:      Ampere(R)
      Model:               1
      Model name:          Neoverse-N1
      BIOS Model name:     Ampere(R) Altra(R) Max Processor
      Stepping:            r3p1
      BogoMIPS:            50.00
      L1d cache:           64K
      L1i cache:           64K
      L2 cache:            1024K
      NUMA node0 CPU(s):   0-31
      NUMA node1 CPU(s):   32-63
      NUMA node2 CPU(s):   64-95
      NUMA node3 CPU(s):   96-127
      Flags:               fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp
      cpuid asimdrdm lrcpc dcpop asimddp ssbs

 From numactl --hardware
 WARNING: a numactl 'node' might or might not correspond to a physical chip.
   available: 4 nodes (0-3)
   node 0 cpus: 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
   node 0 size: 129973 MB
   node 0 free: 112351 MB
   node 1 cpus: 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
   node 1 size: 130923 MB
   node 1 free: 115972 MB
   node 2 cpus: 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
   89 90 91 92 93 94 95
   node 2 size: 130923 MB
   node 2 free: 116782 MB
   node 3 cpus: 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
   115 116 117 118 119 120 121 122 123 124 125 126 127
   node 3 size: 130811 MB
   node 3 free: 116562 MB
   node distances:
   node   0   1   2   3
     0:  10  11  11  12
     1:  11  10  12  11
     2:  11  12  10  11
     3:  12  11  11  10

 From /proc/meminfo
    MemTotal:       535176320 kB
    HugePages_Total:       0
    Hugepagesize:     524288 kB

 /sbin/tuned-adm active
     No current active profile.

 From /etc/*release* /etc/*version*
    centos-release: CentOS Stream release 8
    os-release:
       NAME="CentOS Stream"
       VERSION="8"
       ID="centos"
       ID_LIKE="rhel fedora"
       VERSION_ID="8"
       PLATFORM_ID="platform:el8"
       PRETTY_NAME="CentOS Stream 8"
       ANSI_COLOR="0;31"
    redhat-release: CentOS Stream release 8
    system-release: CentOS Stream release 8
    system-release-cpe: cpe:/o:centos:centos:8

 uname -a:
    Linux 135-170-65.engtw 4.18.0-383.el8.aarch64 #1 SMP Wed Apr 20 15:39:57 UTC 2022
    aarch64 aarch64 aarch64 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
 CVE-2017-5753 (Spectre variant 1):                     Mitigation: __user pointer
                                                        sanitization
 CVE-2017-5715 (Spectre variant 2):                     Not affected
 CVE-2020-0543 (Special Register Buffer Data Sampling): Not affected
 CVE-2019-11135 (TSX Asynchronous Abort):               Not affected

 run-level 3 Nov 28 09:32

 SPEC is set to: /home/cpu2017-0621/spec2017
    Filesystem          Type  Size  Used Avail Use% Mounted on
    /dev/mapper/cl-home xfs   3.5T  279G  3.2T   8% /home

 From /sys/devices/virtual/dmi/id
     Vendor:         Supermicro Corporation
     Product:        R12SPD ..........
     Product Family: Altra Max
     Serial:         ............

 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 Samsung M393A8G 64 GB 2 rank 3200

 BIOS:
    BIOS Vendor:       Ampere(R)
    BIOS Version:      1.1
    BIOS Date:         10/31/2022
    BIOS Revision:     5.15

 (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)
------------------------------------------------------------------------------
gcc (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

==============================================================================
C++             | 508.namd_r(base, peak) 510.parest_r(base, peak)
------------------------------------------------------------------------------
g++ (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

==============================================================================
C++, C          | 511.povray_r(base, peak) 526.blender_r(base, peak)
------------------------------------------------------------------------------
g++ (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
gcc (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

==============================================================================
C++, C, Fortran | 507.cactuBSSN_r(base, peak)
------------------------------------------------------------------------------
g++ (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
gcc (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
GNU Fortran (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

==============================================================================
Fortran         | 503.bwaves_r(base, peak) 549.fotonik3d_r(base, peak)
                | 554.roms_r(base, peak)
------------------------------------------------------------------------------
GNU Fortran (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

==============================================================================
Fortran, C      | 521.wrf_r(base, peak) 527.cam4_r(base, peak)
------------------------------------------------------------------------------
GNU Fortran (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
gcc (Ampere Computing Build 11923 20201215) 10.2.1 20201216
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
------------------------------------------------------------------------------

Base Compiler Invocation

C benchmarks:

 gcc 

C++ benchmarks:

 g++ 

Fortran benchmarks:

 gfortran 

Benchmarks using both Fortran and C:

 gfortran   gcc 

Benchmarks using both C and C++:

 g++   gcc 

Benchmarks using Fortran, C, and C++:

 g++   gcc   gfortran 

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   -fconvert=big-endian   -DSPEC_LP64 
526.blender_r:  -funsigned-char   -DSPEC_LINUX   -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:

 -mabi=lp64   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -fno-strict-aliasing   -ljemalloc 

C++ benchmarks:

 -mabi=lp64   -std=c++03   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -ljemalloc 

Fortran benchmarks:

 -mabi=lp64   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -fno-stack-arrays   -ljemalloc 

Benchmarks using both Fortran and C:

 -mabi=lp64   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -fno-stack-arrays   -fno-strict-aliasing   -ljemalloc 

Benchmarks using both C and C++:

 -mabi=lp64   -std=c++03   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -fno-strict-aliasing   -ljemalloc 

Benchmarks using Fortran, C, and C++:

 -mabi=lp64   -std=c++03   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -g   -Ofast   -mcpu=neoverse-n1   -flto   -fno-stack-arrays   -fno-strict-aliasing   -ljemalloc 

Base Other Flags

C benchmarks:

 -Wl,-Map,mapfile 

C++ benchmarks:

 -Wl,-Map,mapfile 

Fortran benchmarks:

 -fallow-argument-mismatch   -Wl,-Map,mapfile 

Benchmarks using both Fortran and C:

 -fallow-argument-mismatch   -Wl,-Map,mapfile 

Benchmarks using both C and C++:

 -Wl,-Map,mapfile 

Benchmarks using Fortran, C, and C++:

 -fallow-argument-mismatch   -Wl,-Map,mapfile 

Peak Compiler Invocation

C benchmarks:

 gcc 

C++ benchmarks:

 g++ 

Fortran benchmarks:

 gfortran 

Benchmarks using both Fortran and C:

 gfortran   gcc 

Benchmarks using both C and C++:

 g++   gcc 

Benchmarks using Fortran, C, and C++:

 g++   gcc   gfortran 

Peak Portability Flags

Same as Base Portability Flags

Peak Optimization Flags

C benchmarks:

 -mabi=lp64   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   --param early-inlining-insns=96   --param max-inline-insns-auto=64   --param inline-unit-growth=96   -ljemalloc 

C++ benchmarks:

508.namd_r:  basepeak = yes 
510.parest_r:  -mabi=lp64   -std=c++03   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   --param early-inlining-insns=256   --param max-inline-insns-auto=128   --param inline-unit-growth=256   -ffinite-loops   -ljemalloc 

Fortran benchmarks:

503.bwaves_r:  -mabi=lp64   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   -fno-stack-arrays   -ljemalloc 
549.fotonik3d_r:  Same as 503.bwaves_r 
554.roms_r:  basepeak = yes 

Benchmarks using both Fortran and C:

521.wrf_r:  -mabi=lp64   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   --param early-inlining-insns=96   --param max-inline-insns-auto=64   --param inline-unit-growth=96   -fno-stack-arrays   -ljemalloc 
527.cam4_r:  -mabi=lp64   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   --param early-inlining-insns=96   --param max-inline-insns-auto=64   --param inline-unit-growth=96   -fno-stack-arrays   -fno-strict-aliasing   -ljemalloc 

Benchmarks using both C and C++:

511.povray_r:  -mabi=lp64   -std=c++03   -std=c99   -L/home/amptest/ampere_spec2017/gcc/install/lib64   -L/home/amptest/ampere_spec2017/gcc/install/lib   -L/home/amptest/ampere_spec2017/jemalloc/install/lib   -fprofile-generate   -fprofile-use   -g   -Ofast   -mcpu=neoverse-n1   -funroll-loops   -flto=32   --param early-inlining-insns=96   --param max-inline-insns-auto=64   --param inline-unit-growth=96   --param early-inlining-insns=256   --param max-inline-insns-auto=128   --param inline-unit-growth=256   -ffinite-loops   -fno-strict-aliasing   -ljemalloc 
526.blender_r:  basepeak = yes 

Benchmarks using Fortran, C, and C++:

507.cactuBSSN_r:  basepeak = yes 

Peak Other Flags

C benchmarks:

 -w   -Wl,-Map,mapfile 

C++ benchmarks:

 -Wl,-Map,mapfile 

Fortran benchmarks (except as noted below):

 -Wl,-Map,mapfile 
554.roms_r:  -fallow-argument-mismatch   -Wl,-Map,mapfile 

Benchmarks using both Fortran and C:

521.wrf_r:  -w   -fallow-argument-mismatch   -Wl,-Map,mapfile 
527.cam4_r:  -fallow-argument-mismatch   -Wl,-Map,mapfile 

Benchmarks using both C and C++:

 -Wl,-Map,mapfile 

Benchmarks using Fortran, C, and C++:

 -fallow-argument-mismatch   -Wl,-Map,mapfile 

The flags files that were used to format this result can be browsed at
http://www.spec.org/cpu2017/flags/gcc.2021-07-21.html,
http://www.spec.org/cpu2017/flags/Supermicro-Platform-Settings-V1.2-Ampere-revD.html.

You can also download the XML flags sources by saving the following links:
http://www.spec.org/cpu2017/flags/gcc.2021-07-21.xml,
http://www.spec.org/cpu2017/flags/Supermicro-Platform-Settings-V1.2-Ampere-revD.xml.