# Invocation command line: # /home/specuser/cpu2006/cpu2017-kit904-0930binaries/bin/harness/runcpu --define default-platform-flags --configfile ic17.0-lin-ws-core-avx2-speed-20160930.cfg --define cores=44 --threads 44 --tune base,peak --output_format all --define intspeed intspeed # output_root was not used for this run ############################################################################ #------------------------------------------------------------------------------ # This is a sample SPEC CPU2017 config file. It was tested with: # # Compiler name/version: Intel(R) C/C++ and Fortran 17.0 Compilers for Linux # Operating system version: Redhat Enterprise Linux 7.2, GLIBC 2.17 # Hardware: Intel(R) processors supporting CORE-AVX2 tuning # # If you have different software or hardware, this config file may not work. # You may find a better config file for your system next to posted results: # http://www.spec.org/cpu2017/results # # Compiler issues: Contact your compiler vendor, not SPEC. # For SPEC help: http://www.spec.org/auto/cpu2017/Docs/techsupport.html #------------------------------------------------------------------------------ #--------- Preprocessor ------------------------------------------------------- # # Optionally edit if you wish: %define build_ncpus 8 # controls number of simultaneous compiles # Used to date the label %define version 20160930 # Used for the optimization tuning part of the label (not required) %if defined(%{noopt}) %define opt_label -noopt %elif defined(%{medopt}) %define opt_label -medopt %else %define opt_label %endif # Used for labeling static linked builds (not required) %if defined(%{static}) %define static_label -static %else %define static_label %endif #--------- Label -------------------------------------------------------------- # Arbitrary string, tags your binaries & directories. # Two Suggestions: # (1) Change this label as you try new ideas. label = ic17.0-lin-ws-core-avx2-speed%{opt_label}%{static_label}-%{version} # (2) Make the label meaningful to YOU. #--------- Global Settings ---------------------------------------------------- # For info, see: # https://www.spec.org/auto/cpu2017/Docs/config.html#fieldname XXX # Example: https://www.spec.org/auto/cpu2017/Docs/config.html#tune ######################################################## # ATTENTION ATTENTION ATTENTION ######################################################## # # NOTE If you change fail_build then PLEASE also # change the line 'define version', because # SPEC review tools use 'label' to track binaries. # ######################################################## # # vvvvvvvvvvvv # do not change unless you read NOTE above fail_build=0 # do not change unless you read NOTE above # ^^^^^^^^^^^^ # do not change unless you read NOTE above # ######################################################## # action = validate command_add_redirect = 1 line_width = 1020 log_line_width = 1020 makeflags = -j%{build_ncpus} output_format = txt,cfg,pdf,csv preenv = 1 tune = base bench_post_setup = sync parallel_test = 1 mean_anyway = 1 reportable = 1 # Set some environment variables %if !defined(%{cores}) %error please add --define cores=[ncores] to runcpu invocation %endif preENV_OMP_STACKSIZE = 192M %ifdef %{intspeed} preENV_KMP_AFFINITY = granularity=fine,scatter %else preENV_KMP_AFFINITY = granularity=fine,compact,1,0 %endif #Reference the flags files flagsurl000=http://www.spec.org/cpu2017/flags/Intel-ic17.0-official-linux64-revD.xml %ifdef %{default-platform-flags} flagsurl001=http://www.spec.org/cpu2017/flags/HP-Platform-Flags-Intel-V1.2-HSW-revE.xml %endif # Set some environment variables preENV_LD_LIBRARY_PATH = $[top]/lib/ia32:$[top]/lib/intel64:$[top]/sh10.2 # Affinitization Example - not used by default, KMP_AFFINITY can be edited above as well #%if !defined(%{affmask}) #%error please add a hex affinity mask to runcpu command line Ex: --define affmask 0xF0F0F0F0 #%else #default: #submit = taskset %{affmask} $command #%endif #--------- Compilers ---------------------------------------------------------- intspeed,fpspeed: CC = icc -m64 -std=c11 CXX = icpc -m64 FC = ifort -m64 # How to say "Show me your version, please" CC_VERSION_OPTION = --version CXX_VERSION_OPTION = --version FC_VERSION_OPTION = --version SMARTHEAP_DIR = /sh10.2 %if !defined(%{static}) SMARTHEAP32 = smartheap SMARTHEAP64 = smartheap64 %else SMARTHEAP32 = libsmartheap.a SMARTHEAP64 = libsmartheap64.a %endif #--------- Portability -------------------------------------------------------- intspeed,fpspeed: PORTABILITY = -DSPEC_LP64 600.perlbench_s: CPORTABILITY = -DSPEC_LINUX_X64 621.wrf_s: CPORTABILITY = -DSPEC_CASE_FLAG FPORTABILITY = -convert big_endian 623.xalancbmk_s: CXXPORTABILITY= -DSPEC_LINUX 627.cam4_s: CPORTABILITY= -DSPEC_CASE_FLAG 628.pop2_s: CPORTABILITY = -DSPEC_CASE_FLAG FPORTABILITY = -convert big_endian -assume byterecl #-------- Tuning Flags ---------------------------------------------- intrate,fprate: #reconsider using a rate config file instead of a speed config file fail=1 default: threads=%{cores} SSE = -xCORE-AVX2 EXTRA_FOPTIMIZE = -nostandard-realloc-lhs default=base: %if defined(%{noopt}) OPT_ROOT = -O0 %elif defined(%{medopt}) OPT_ROOT = -O2 %else OPT_ROOT = -ipo -O3 -no-prec-div %endif FAST_NOSTATIC = $(SSE) $(OPT_ROOT) -auto-p32 FORT_FASTNOSTATIC = $(SSE) $(OPT_ROOT) FAST = $(SSE) $(OPT_ROOT) -static -auto-p32 FORT_FAST = $(SSE) $(OPT_ROOT) -static any_cpp=default: EXTRA_LIBS = -L$(SMARTHEAP_DIR) -l$(SMARTHEAP64) EXTRA_LDFLAGS = -Wl,-z,muldefs default=base: %if !defined(%{static}) COPTIMIZE = $(FAST_NO_STATIC) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP CXXOPTIMIZE = $(FAST_NO_STATIC) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP FOPTIMIZE = $(FORT_FAST_NO_STATIC) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP %else COPTIMIZE = $(FAST) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP CXXOPTIMIZE = $(FAST) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP FOPTIMIZE = $(FORT_FAST) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP %endif default=peak=default: %if defined(%{noopt}) || defined(%{medopt}) #not building or executing peak against less opt fail=1 %endif PASS1_CFLAGS = -prof-gen PASS2_CFLAGS = -prof-use PASS1_FFLAGS = -prof-gen PASS2_FFLAGS = -prof-use PASS1_CXXFLAGS = -prof-gen PASS2_CXXFLAGS = -prof-use PASS1_LDFLAGS = -prof-gen PASS2_LDFLAGS = -prof-use OPT_ROOT = -ipo -O3 -no-prec-div FAST_NO_STATIC_PASS1 = $(OPT_ROOT) -auto-p32 FORT_FAST_NO_STATIC_PASS1 = $(OPT_ROOT) FAST_PASS1 = $(OPT_ROOT) -auto-p32 -static FORT_FAST_PASS1 = $(OPT_ROOT) -static FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT) -auto-p32 FORT_FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT) FAST_PASS2 = $(SSE) $(OPT_ROOT) -auto-p32 -static FORT_FAST_PASS2 = $(SSE) $(OPT_ROOT) -static fpspeed,intspeed_any_c=peak: OPT_ROOT_PASS1 = -O2 OPT_ROOT_PASS2 = -ipo -O3 -no-prec-div FAST_NO_STATIC_PASS1 = $(OPT_ROOT_PASS1) -auto-p32 FORT_FAST_NO_STATIC_PASS1 = $(OPT_ROOT_PASS1) FAST_PASS1 = $(OPT_ROOT_PASS1) -auto-p32 -static FORT_FAST_PASS1 = $(OPT_ROOT_PASS1) -static FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT_PASS2) -auto-p32 FORT_FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT_PASS2) FAST_PASS2 = $(SSE) $(OPT_ROOT_PASS2) -auto-p32 -static FORT_FAST_PASS2 = $(SSE) $(OPT_ROOT_PASS2) -static #maybe xz belongs here 605.mcf_s,631.deepsjeng_s=peak: FAST_NO_STATIC_PASS1 = $(OPT_ROOT) FORT_FAST_NO_STATIC_PASS1 = $(OPT_ROOT) FAST_PASS1 = $(OPT_ROOT) -static FORT_FAST_PASS1 = $(OPT_ROOT) -static FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT) FORT_FAST_NO_STATIC_PASS2 = $(SSE) $(OPT_ROOT) FAST_PASS2 = $(SSE) $(OPT_ROOT) -static FORT_FAST_PASS2 = $(SSE) $(OPT_ROOT) -static default=peak=default: %if !defined(%{static}) PASS1_COPTIMIZE = $(FAST_NO_STATIC_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS1_CXXOPTIMIZE = $(FAST_NO_STATIC_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS1_FOPTIMIZE = $(FORT_FAST_NO_STATIC_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_COPTIMIZE = $(FAST_NO_STATIC_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_CXXOPTIMIZE = $(FAST_NO_STATIC_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_FOPTIMIZE = $(FORT_FAST_NO_STATIC_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP %else PASS1_COPTIMIZE = $(FAST_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS1_CXXOPTIMIZE = $(FAST_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS1_FOPTIMIZE = $(FORT_FAST_PASS1) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_COPTIMIZE = $(FAST_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_CXXOPTIMIZE = $(FAST_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP PASS2_FOPTIMIZE = $(FORT_FAST_PASS2) -qopt-prefetch -qopt-mem-layout-trans=3 -DSPEC_SUPPRESS_OPENMP %endif #------------------------------------------------------------------------------- # Tester and System Descriptions - Edit the section below #------------------------------------------------------------------------------- # For info about any field, see # https://www.spec.org/auto/cpu2017/Docs/config.html#fieldname # Example: https://www.spec.org/auto/cpu2017/Docs/config.html#hw_memory #------------------------------------------------------------------------------- #--------- If you install new compilers, edit this section -------------------- intrate,intspeed,fpspeed,fprate: sw_compiler000 = C/C++: Version 17.0.0.098 of Intel C/C++ sw_compiler001 = Compiler for Linux; sw_compiler002 = Fortran: Version 17.0.0.098 of Intel Fortran sw_compiler003 = Compiler for Linux sw_base_ptrsize = 64-bit sw_peak_ptrsize = 32/64-bit #--------- Your info --------------------------------------------------------- # To understand the difference between hw_vendor/sponsor/tester, see: # www.spec.org/auto/cpu2017/Docs/config.html#test_sponsor intrate,intspeed,fprate,fpspeed: # Important: keep this line hw_vendor = Hewlett Packard Enterprise hw_ncoresperchip = 22 tester = HPE test_sponsor = HPE license_num = 3 #--------- Fill out this section ---------------------------------------------- intrate,intspeed,fprate,fpspeed: # Important: keep this line # Example # Brief info about field hw_avail = Apr-2016 sw_avail = Sep-2016 hw_cpu_nominal_mhz = 2200 hw_cpu_max_mhz = 3600 hw_ncores = 44 hw_nthreadspercore = 1 hw_ncpuorder = 1,2 chips hw_model000 = ProLiant ML350 Gen9 hw_model001 = (2.20 GHz, Intel Xeon E5-2699 v4) hw_other = None sw_other000 = Microquill SmartHeap V10.2 hw_pcache = 32 KB I + 32 KB D on chip per core hw_scache = 256 KB I+D on chip per core hw_tcache = 55 MB I+D on chip per chip hw_ocache = None hw_memory000 = 256 GB (16 x 16 GB 2Rx4 PC4-2400T-R) #--------- Sysinfo fields - You may need to adjust this section --------------- # The following are partly filled out by sysinfo. # www.spec.org/auto/cpu2017/Docs/config.html#sysinfo # Uncomment lines for which you already have a better answer than sysinfo # intrate,intspeed,fprate,fpspeed: # Important: keep this line # Example # Brief info about field hw_cpu_name = Intel Xeon E5-2699 v4 hw_disk = 1 x 800 GB SAS SSD, RAID 0 hw_nchips = 2 fw_bios = P92 v2.20 04/12/2016 sw_file = xfs sw_state = Run level 3 (multi-user) sw_os000 = SUSE Linux Enterprise Server 12 (x86_64) SP1 sw_os001 = Kernel 3.12.49-11-default prepared_by = HPE Performance Engineering #--------- Intel Recommended Fields - You may wish to adjust this section ----- default: notes_025 = Binaries compiled on a system with 1x Intel Core i7-4790K CPU + 32GB RAM notes_030 = memory using Redhat Enterprise Linux 7.2 notes_os_000 = Stack size set to unlimited using "ulimit -s unlimited" notes_plat_000 = BIOS Configuration: notes_plat_005 = Intel Hyperthreading Option set to Disabled notes_plat_010 = Power Profile set to Balanced Power and Performance notes_plat_015 = Collaborative Power Control set to Disabled notes_plat_020 = QPI Snoop Configuration set to Home Snoop notes_plat_025 = Thermal Configuration set to Maximum Cooling notes_plat_030 = Processor Power and Utilization Monitoring set to Disabled notes_plat_035 = Memory Double Refresh Rate set to 1x Refresh notes_plat_update_000 = Regarding the sysinfo display about the memory installed, the correct amount of notes_plat_update_005 = memory is 256 GB and the dmidecode description should have one line reading as: notes_plat_update_010 = 16x UNKNOWN NOT AVAILABLE 16 GB 2 rank 2400 MHz #Ease of tagging results from the runcpu command line with commands run outside of runcpu harneess %if defined(%{THP_enabled}) notes_200 = Transparent Huge Pages enabled with: notes_201 = echo always > /sys/kernel/mm/transparent_hugepage/enabled %elif defined(%{THP_disabled}) notes_200 = Transparent Huge Pages disabled with: notes_201 = echo never > /sys/kernel/mm/transparent_hugepage/enabled %else %endif %ifdef %{drop_caches} notes_202 = Filesystem page cache cleared with: notes_203 = echo 1> /proc/sys/vm/drop_caches %endif %ifdef %{invoke_with_interleave} notes_204 = runcpu command invoked through numactl i.e.: notes_205 = numactl --interleave=all runcpu %endif intrate,fprate: %if defined(%{no-numa}) notes_submit_000 = The numactl mechanism was used to bind copies to processors. The config file option 'submit' notes_submit_001 = was used to generate numactl commands to bind each copy to a specific processor. notes_submit_002 = For details, please see the config file. %elif notes_submit_000 = The taskset mechanism was used to bind copies to processors. The config file option 'submit' notes_submit_001 = was used to generate taskset commands to bind each copy to a specific processor. notes_submit_002 = For details, please see the config file. %endif # The following settings were obtained by running the sysinfo_program # 'specperl $[top]/Docs/sysinfo' (sysinfo:SHA:0710f0acde4bba9a64b6bc93cc9676f3a4858920d296e5f2df39ac8de52eecb0) default: notes_plat_sysinfo_000 = Sysinfo program /home/specuser/cpu2006/cpu2017-kit904-0930binaries/Docs/sysinfo notes_plat_sysinfo_005 = Rev: r5007 of 2016-11-15 fc8dc82f217779bedfed4d694d580ba9 notes_plat_sysinfo_010 = running on linux-szds Fri Dec 9 12:51:02 2016 notes_plat_sysinfo_015 = notes_plat_sysinfo_020 = This section contains SUT (System Under Test) info as seen by some common notes_plat_sysinfo_025 = utilities. notes_plat_sysinfo_030 = For more information on this section, see notes_plat_sysinfo_035 = http://www.spec.org/cpu2017/Docs/config.html#sysinfo notes_plat_sysinfo_040 = notes_plat_sysinfo_045 = From /proc/cpuinfo notes_plat_sysinfo_050 = model name : Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz notes_plat_sysinfo_055 = 2 "physical id"s (chips) notes_plat_sysinfo_060 = 44 "processors" notes_plat_sysinfo_065 = cores, siblings (Caution: counting these is hw and system dependent. The notes_plat_sysinfo_070 = following excerpts from /proc/cpuinfo might not be reliable. Use with notes_plat_sysinfo_075 = caution.) notes_plat_sysinfo_080 = cpu cores : 22 notes_plat_sysinfo_085 = siblings : 22 notes_plat_sysinfo_090 = physical 0: cores 0 2 3 4 8 10 11 12 16 17 18 19 20 21 24 25 26 27 28 notes_plat_sysinfo_095 = physical 1: cores 0 2 3 4 8 10 11 12 16 17 18 19 20 21 24 25 26 27 28 notes_plat_sysinfo_100 = cache size : 56320 KB notes_plat_sysinfo_105 = notes_plat_sysinfo_110 = The view from numactl --hardware follows. WARNING: a numactl 'node' might or notes_plat_sysinfo_115 = might not correspond to a physical chip. notes_plat_sysinfo_120 = available: 2 nodes (0-1) notes_plat_sysinfo_125 = node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 22 23 24 25 26 27 28 29 30 31 32 notes_plat_sysinfo_130 = node 0 size: 128997 MB notes_plat_sysinfo_135 = node 0 free: 128325 MB notes_plat_sysinfo_140 = node 1 cpus: 11 12 13 14 15 16 17 18 19 20 21 33 34 35 36 37 38 39 40 41 42 43 notes_plat_sysinfo_145 = node 1 size: 129134 MB notes_plat_sysinfo_150 = node 1 free: 128415 MB notes_plat_sysinfo_155 = node distances: notes_plat_sysinfo_160 = node 0 1 notes_plat_sysinfo_165 = 0: 10 21 notes_plat_sysinfo_170 = 1: 21 10 notes_plat_sysinfo_175 = notes_plat_sysinfo_180 = From /proc/meminfo notes_plat_sysinfo_185 = MemTotal: 264326748 kB notes_plat_sysinfo_190 = HugePages_Total: 0 notes_plat_sysinfo_195 = Hugepagesize: 2048 kB notes_plat_sysinfo_200 = notes_plat_sysinfo_205 = /usr/bin/lsb_release -d notes_plat_sysinfo_210 = SUSE Linux Enterprise Server 12 SP1 notes_plat_sysinfo_215 = notes_plat_sysinfo_220 = From /etc/*release* /etc/*version* notes_plat_sysinfo_225 = SuSE-release: notes_plat_sysinfo_230 = SUSE Linux Enterprise Server 12 (x86_64) notes_plat_sysinfo_235 = VERSION = 12 notes_plat_sysinfo_240 = PATCHLEVEL = 1 notes_plat_sysinfo_245 = # This file is deprecated and will be removed in a future service pack or notes_plat_sysinfo_250 = release. notes_plat_sysinfo_255 = # Please check /etc/os-release for details about this release. notes_plat_sysinfo_260 = os-release: notes_plat_sysinfo_265 = NAME="SLES" notes_plat_sysinfo_270 = VERSION="12-SP1" notes_plat_sysinfo_275 = VERSION_ID="12.1" notes_plat_sysinfo_280 = PRETTY_NAME="SUSE Linux Enterprise Server 12 SP1" notes_plat_sysinfo_285 = ID="sles" notes_plat_sysinfo_290 = ANSI_COLOR="0;32" notes_plat_sysinfo_295 = CPE_NAME="cpe:/o:suse:sles:12:sp1" notes_plat_sysinfo_300 = notes_plat_sysinfo_305 = uname -a: notes_plat_sysinfo_310 = Linux linux-szds 3.12.49-11-default #1 SMP Wed Nov 11 20:52:43 UTC 2015 notes_plat_sysinfo_315 = (8d714a0) x86_64 x86_64 x86_64 GNU/Linux notes_plat_sysinfo_320 = notes_plat_sysinfo_325 = run-level 3 Dec 9 12:45 notes_plat_sysinfo_330 = notes_plat_sysinfo_335 = SPEC is set to: /home/specuser/cpu2006/cpu2017-kit904-0930binaries notes_plat_sysinfo_340 = Filesystem Type Size Used Avail Use% Mounted on notes_plat_sysinfo_345 = /dev/sda4 xfs 703G 433G 271G 62% /home notes_plat_sysinfo_350 = notes_plat_sysinfo_355 = Additional information from dmidecode follows. WARNING: Use caution when you notes_plat_sysinfo_360 = interpret this section. The 'dmidecode' program reads system data which is notes_plat_sysinfo_365 = "intended to allow hardware to be accurately determined", but the intent may not notes_plat_sysinfo_370 = be met, as there are frequent changes to hardware, firmware, and the "DMTF notes_plat_sysinfo_375 = SMBIOS" standard. notes_plat_sysinfo_380 = BIOS HP P92 08/12/2016 notes_plat_sysinfo_385 = Memory: notes_plat_sysinfo_390 = 8x UNKNOWN NOT AVAILABLE notes_plat_sysinfo_395 = 16x UNKNOWN NOT AVAILABLE 16 GB 2 rank 2400 MHz notes_plat_sysinfo_400 = notes_plat_sysinfo_405 = (End of data from sysinfo program) hw_cpu_name = Intel Xeon E5-2699 v4 hw_disk = 703 GB add more disk info here hw_memory001 = 252.082 GB fixme: If using DDR3, format is: hw_memory002 = 'N GB (M x N GB nRxn PCn-nnnnnR-n, ECC)' hw_nchips = 2 prepared_by = root (is never output, only tags rawfile) sw_file = xfs sw_os001 = SUSE Linux Enterprise Server 12 SP1 sw_os002 = 3.12.49-11-default sw_state = Run level 3 (add definition here) # End of settings added by sysinfo_program # The following section was added automatically, and contains settings that # did not appear in the original configuration file, but were added to the # raw file after the run. default: notes_000 =Environment variables set by runcpu before the start of the run: notes_005 =KMP_AFFINITY = "granularity=fine,scatter" notes_010 =LD_LIBRARY_PATH = "/home/specuser/cpu2006/cpu2017-kit904-0930binaries/lib/ia32:/home/specuser/cpu2006/cpu2017-kit904-0930binaries/lib/intel64:/home/specuser/cpu2006/cpu2017-kit904-0930binaries/sh10.2" notes_015 =OMP_STACKSIZE = "192M" notes_020 =