Spec CPU 2006

Christian Külker

0.1.4

2023-03-11

The SPEC CPU 2006 benchmark from the Standard Performance Evaluation Corporation (SPEC) is a proprietary benchmark in use until September 2017. The benchmark suite includes SPECint® benchmarks and SECfp® benchmarks. The SPECint® 2006 benchmark includes 12 different benchmark tests and the SPECfp® 2006 benchmark includes 19 different benchmark tests. It can be used to measure computer speed or throughput.

This benchmark has been superseded by SPEC CPU® 2017, version 1.1.9 as of 2023-03-11.

Some Hints For Intel Clusters

Preparation Before Running

As root:

echo always > /sys/kernel/mm/redhat_transparent_hugepage/enabled
echo 1 > /proc/sys/vm/drop_caches

As user:

cd /cpu2006
source  /opt/intel/bin/compilervars.sh intel64
#source /cm/shared/apps/intel-ics-2013/bin/compilervars.sh intel64
source shrc
ulimit -s unlimited

Running The Long Time Benchmark

bin/runspec -c intel2 --action=run --define external --rate 24 --define smt \
--define cores=24 --define physicalfirst --define invoke_with_interleave \
--define drop_caches --define THP_enabled -T all --reportable -o all fp

Minimal Install On CentOS 7

Spec CPU 2006 must be purchased.

Dependencies

yum install dmidecode vim screen tree zsh rsync openssh-clients wget
yum install gcc-gfortran.x86_64 numactl libgfortran.i686 libgfortran.x86_64 \
compat-gcc-34-g77.x86_64 compat-libf2c-34.i686 compat-libf2c-34.x86_64 \
kernel-devel make

Configuration

useradd -s /bin/bash -U -m -c HPC -d /home/hpc hpc
mkdir /cpu2006
chown hpc:hpc /cpu2006
su - hpc
ssh-keygen

Copy ISO image to /home/hpc/src

mkdir /home/hpc/src
wget ../cpu2006-1.2.iso
mkdir /home/hpc/mnt
mount -o loop /home/hpc/src/cpu2006-1.2.iso /home/hpc/mnt

As user hpc

cd /home/hpc/mnt/
./install.sh

Specify the directory in which you want to install (e.g. /usr/cpu2006).

/cpu2006
yes

As root

umount /home/hpc/mnt

More Configuration

cd /cpu2006/config
wget http://www.spec.org/cpu2006/results/res2013q4/cpu2006-20131007-26551.cfg
cp cpu2006-20131007-26551.cfg aurora-E5-2697v2-f1.2.ic14.0.linux64.avx.rate.cfg

cd /cpu2006/Docs
mv sysinfo sysinfo.6775
wget http://www.spec.org/cpu2006/Docs/sysinfo
mv sysinfo sysinfo.6818
chmod +x sysinfo.6818
ln -s sysinfo.6818 sysinfo

Intel Compiler

The URL depends on the compiler you want to use

#wget http://registrationcenter-download.intel.com/akdlm/irc_nas/2871/l_ics_2013.0.028.tgz
wget http://registrationcenter-download.intel.com/akdlm/irc_nas/3471/l_ics_2013.1.039.tgz

Running

As root:

echo 1 > /proc/sys/vm/drop_caches
echo always > /sys/kernel/mm/redhat_transparent_hugepage/enabled
ulimit -s unlimited
/root/tools/setmaxturbofreq.sh

As user hpc:

source /cpu2006/shrc
source /opt/intel/composer_xe_2013/bin/compilervars.sh intel64
ulimit -s unlimited

bin/runspec -c aurora --action=run --define external --rate=40 --define smt \
--define cores=20 --define physicalfirst --define invoke_with_interleave \
--define drop_caches --define THP_enabled -T all --reportable -o all fp

bin/runspec -c aurora --action=run --define external --rate=40 --define smt \
--define cores=20 --define physicalfirst --define invoke_with_interleave \
--define drop_caches --define THP_enabled -T all --reportable -o all fp \
 --nobuild

Power Measurement

An example of a power measurement could be as follows (assuming the power measurement logic is provided in the query script). The content of this script is not provided, as the way the measurement is done is very architecture dependent. The loop queries the power supply every second for 21600 seconds, or 6 hours.

for i in {1..21600}; do ./query $i >> 2013-10-22-1900.log; sleep 1; done

History

Version Date Notes
0.1.4 2023-03-11 Improve writing, latest version hint
0.1.3 2022-06-16 History, shell->bash
0.1.2 2020-12-27 Typos, more explanations
0.1.1 2020-05-03 Typos, replacement remark
0.1.0 2016-02-17 Initial release

  • Spec CPU 2006