Last updated: $Date: 2008-05-21 18:17:05 -0400 (Wed, 21 May 2008) $ by $Author: cloyce $
(To check for possible updates to this document, please
see http://www.spec.org/cpu2006/Docs/ )
Contents
1. Review Pre-requisites
2. Create destination
3. Mount the DVD
4. Set your directory to the DVD
5. Use install.sh
5.a. Destination selection
5.b. Architecture selection
5.c. The files are unpacked and tested
6. Source shrc or cshrc
7. Try to build one benchmark
8. Try running one benchmark with the test dataset
9. Try a real data set
10. Try a full (reportable) run
Appendix: the DVD drive is on system A, but I want to install on system B. What do I do?
A1. Network mount
A2. Tar file
The SPEC CPU2006 suite has been tested under Unix, Linux, Mac OS X and Windows XP systems. Your DVD can be installed under many operating systems.
Reminder: the SPEC license allows you to install on multiple systems as you may wish within your institution; but you may not share the software with the public.
The installation procedure for Unix, Linux, and Mac OS X is as follows:
Review the hardware and software requirements, in system-requirements.html
Note: links to SPEC CPU2006 documents on this web page assume that you are reading the page from a directory that also contains the other SPEC CPU2006 documents. If by some chance you are reading this web page from a location where the links do not work, try accessing the referenced documents at one of the following locations:
Create a directory on the destination disk. You should make sure that you have a disk that has at least 8GB free. (For more information on disk usage, see system-requirements.html.)
Insert the the DVD, and, if necessary, mount it. For Mac OS X and some versions of Unix and Linux the DVD will be automatically mounted. For some systems, you may have to enter an explicit mount command. If your operating system supports the Rock Ridge Interchange Protocol extensions to ISO 9660, be sure to select them, unless they are the default. The following examples are not intended to be comprehensive, but may get you started or at least give you clues which manpages to read:
| AIX: | mount -v cdrfs -r /dev/cd0 /cdrom |
| HP-UX: | pfs_mountd &
pfsd & pfs_mount -v /dev/rdsk/c1t2d0 /cdrom (Obtain the device name via ioscan -funCdisk. See the manpages for pfs, pfsd, pfs_mount, pfs_mountd, and pfs_umount. You will need the latter in order to eject the DVD.) |
| Linux: | mount -t iso9660 -o ro,exec /dev/cdrom /mnt |
| Solaris: | If Volume Management is running, you should find that the DVD is automatically mounted, as
/cdrom/label_of_volume/ If not, you should be able to mount it with commands similar to this:
mkdir /mnt1 mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /mnt1 |
Note that you may need root privileges to mount the DVD.
The following paragraphs assume that your DVD drive is on the same system as where you wish to install. If it is on a different system, please see the appendix.
If you haven't already done so by now, start a Terminal window (aka "command window", "shell", "console", "terminal emulator", "character cell window", etc.) and issue a cd command to set your current working directory to the directory where the DVD is mounted. For example:
cd /dvdrom/spec_cpu2006
Type:
./install.sh
Depending on your installation type, you may be prompted for a destination directory:
SPEC CPU2006 Installation Top of the CPU2006 tree is '/dvdrom/spec_cpu2006' Enter the directory you wish to install to (e.g. /usr/cpu2006)
When answering this question, note that you will have to use syntax acceptable to sh (so you might need to say something like "$HOME/mydir" instead of "~/mydir").
Note: You can also specify the destination directory in the command
line, using the -d flag, like this:
./install.sh -d
/spec/test
The installation procedure will show you the directories that will be used to install from and to. You will see a message such as this one:
Installing FROM /dvdrom/spec_cpu2006 Installing TO /mnt/carol/cpu2006 Is this correct? (Please enter 'yes' or 'no')
Enter "yes" if the directories match your expectations. If there is an error, enter "no", and the procedure will exit, and you can try again, possibly using the -d flag mentioned in the note above.
The installation procedure will attempt to automatically determine your current platform type (hardware architecture, operating system, etc.) In some cases, the tools may identify several candidate matches for your architecture.
You typically do not have to worry about whether the toolset is an exact match to your current environment, because the toolset selection does not affect your benchmark scores, and because the installation procedure does a series of tests to ensure that the selected tools work on your system.
For example, the installation procedure may determine that tools built on version "N" of your operating system are entirely functional on version "N+3".
If at least one candidate match is found, you will see a message such as:
The following toolset is expected to work on your platform. If the
automatically installed one does not work, please re-run install.sh
and exclude that toolset using the '-e' switch.
The toolset selected will not affect your benchmark scores.
solaris-sparc Recommended for Solaris 8 and later.
Built on Solaris 8 with Sun Studio 11
If the installation procedure is unable to determine your system architecture, you will see a message such as:
We do not appear to have vendor supplied binaries for your
architecture. You will have to compile the tool binaries by
yourself. Please read the file
/mnt/carol/testno/Docs/tools_build.html
for instructions on how you might be able to build them.
If you see that message, please stop here, and examine the file tools-build.html.
Note: If the tools that are automatically installed on your
system do not work, but you know that another set of tools that is in the list will work, you can exclude the ones that
do not work. You may be instructed to do this during the first installation. Use the -e flag for install.sh,
for example:
./install.sh -e linux-rhas4r4-ia64
The above will cause the tools for linux-rhas4r4-ia64 to be excluded from consideration for installing.
Alternatively, you can explicitly direct which toolset is to be used with the -u flag for install.sh, for example:
./install.sh -u linux-redhat62-ia32
The above will cause the tools for linux-redhat62-ia32 to be installed, even if another toolset would have been chosen automatically. If you specify tools that do not work on your system, the installation procedure will stop without installing any tools.
Thousands of files will be unpacked from the distribution media, and quietly installed on your destination disk. (If you would prefer to see them all named you can set VERBOSE=1 in your environment before installing the kit.) Various tests will be performed to verify that the files have been correctly installed, and that the tools work correctly. You should see summary messages such as these:
================================================================= Attempting to install the solaris-sparc toolset... Unpacking CPU2006 base files (7 MB) Unpacking 400.perlbench benchmark and data files (61.5 MB) Unpacking 401.bzip2 benchmark and data files (110.6 MB) Unpacking 403.gcc benchmark and data files (43 MB) Unpacking 410.bwaves benchmark and data files (0.1 MB) Unpacking 416.gamess benchmark and data files (16.8 MB) Unpacking 429.mcf benchmark and data files (6.9 MB) Unpacking 433.milc benchmark and data files (0.6 MB) Unpacking 434.zeusmp benchmark and data files (1.1 MB) Unpacking 435.gromacs benchmark and data files (13 MB) Unpacking 436.cactusADM benchmark and data files (3.3 MB) Unpacking 437.leslie3d benchmark and data files (0.3 MB) Unpacking 444.namd benchmark and data files (7.5 MB) Unpacking 445.gobmk benchmark and data files (9.2 MB) Unpacking 447.dealII benchmark and data files (70.2 MB) Unpacking 450.soplex benchmark and data files (321 MB) Unpacking 453.povray benchmark and data files (10.3 MB) Unpacking 454.calculix benchmark and data files (26 MB) Unpacking 456.hmmer benchmark and data files (57 MB) Unpacking 458.sjeng benchmark and data files (0.4 MB) Unpacking 459.GemsFDTD benchmark and data files (2.6 MB) Unpacking 462.libquantum benchmark and data files (0.2 MB) Unpacking 464.h264ref benchmark and data files (52.9 MB) Unpacking 465.tonto benchmark and data files (6.8 MB) Unpacking 470.lbm benchmark and data files (4.7 MB) Unpacking 471.omnetpp benchmark and data files (2.9 MB) Unpacking 473.astar benchmark and data files (5.7 MB) Unpacking 481.wrf benchmark and data files (67.1 MB) Unpacking 482.sphinx3 benchmark and data files (51.7 MB) Unpacking 483.xalancbmk benchmark and data files (213.6 MB) Unpacking 998.specrand benchmark and data files (4.1 MB) Unpacking 999.specrand benchmark and data files (4.1 MB) Checking the integrity of your source tree... Checksums are all okay. Unpacking binary tools for solaris-sparc... <<-- your valid architecture Checking the integrity of your binary tools... Checksums are all okay. Testing the tools installation (this may take a minute) ..........................................................o....................................o.................................... ........................................................ All tests passed! Installation successful. Source the shrc or cshrc in /mnt/carol/cpu2006/, <<-- your directory to set up your environment for the benchmark.
At this point, you will have consumed about 1.5GB of disk space on the destination drive.
Change your current directory to the top-level SPEC directory and source either shrc or cshrc:
For example, if you are using a Bourne-compatible shell (such as ash, bash, ksh, zsh), you could type:
If you are using a csh-compatible shell, you could type:
(The cshrc script is new with CPU2006)
The effect of the above commands is to set up environment variables and paths for SPEC.
Test that you can build a benchmark using the config file supplied for your system. For example:
% runspec --config=macosx-ia32-iccifortv91.cfg --action=build --tune=base bzip2
The above command assumes that you can identify a config file (in the directory $SPEC/config) that is appropriate for you. You may need to copy one of the supplied config files, and edit it for your system. For example, you may need to indicate the path to your compiler. For a quick introduction to config files, see "About Config Files" in runspec.html
The "--tune=base" above indicates that we want to use only the simple tuning, if more than one kind of tuning is supplied in the config file.
Test that you can run a benchmark, using the minimal input set - the "test" workload. For example:
% runspec --config=macosx-ia32-iccifortv91.cfg --size=test --tune=base \
--noreportable --iterations=1 bzip2
The "\" above indicates that the command is continued on the next line. The "--noreportable" ensures that the tools will allow us to run just a single benchmark instead of the whole suite, and "--iterations=1" says just run the benchmark once.
Check the results in $SPEC/result
Test that you can run a benchmark using the real input set - the "reference" workload. For example:
% runspec --config=macosx-ia32-iccifortv91.cfg --size=ref \
--noreportable --iterations=1 bzip2
Check the results in $SPEC/result.
Have a look at runspec.html to learn how to do a full run of the suite.
The command runspec -h will give you a brief summary of the many options for runspec.
Here is a complete linux installation, with interspersed commentary. This example follows the steps listed above. We assume that Steps 1 through 3 are already complete (from the list above).
Step 4: Set the current working directory to the DVD:
# cd /media/cdrom
Step 5: Invoke install.sh. When prompted, we enter the destination directory:
% ./install.sh
SPEC CPU2006 Installation
Top of the CPU2006 tree is '/media/cdrom'
Enter the directory you wish to install to (e.g. /usr/cpu2006)
/var/tmp/cpu2006
Installing FROM /media/cdrom
Installing TO /var/tmp/cpu2006
Is this correct? (Please enter 'yes' or 'no')
yes
The following toolsets are expected to work on your platform. If the
automatically installed one does not work, please re-run install.sh and
exclude that toolset using the '-e' switch.
The toolset selected will not affect your benchmark scores.
linux-rhas4r4-ia64 For Red Hat Enterprise Linux AS 4 or later.
Built on RHAS 4 update 4 with glibc-2.3.4-2.25
sles9-glibc23-ia64 For IA64 systems running SuSE Enterprise Linux 9
or later.
Built on SLES 9 with gcc 3.3.3.
linux-redhat62-ia32 For x86, IA-64, EM64T, and AMD64-based Linux
systems with GLIBC 2.1.3+.
Built on RedHat 6.2 (x86) with gcc 2.95.3
=================================================================
Attempting to install the linux-rhas4r4-ia64 toolset...
Unpacking CPU2006 base files (7 MB)
Unpacking 400.perlbench benchmark and data files (61.5 MB)
Unpacking 401.bzip2 benchmark and data files (110.6 MB)
Unpacking 403.gcc benchmark and data files (43 MB)
Unpacking 410.bwaves benchmark and data files (0.1 MB)
Unpacking 416.gamess benchmark and data files (16.8 MB)
Unpacking 429.mcf benchmark and data files (6.9 MB)
Unpacking 433.milc benchmark and data files (0.6 MB)
Unpacking 434.zeusmp benchmark and data files (1.1 MB)
Unpacking 435.gromacs benchmark and data files (13 MB)
Unpacking 436.cactusADM benchmark and data files (3.3 MB)
Unpacking 437.leslie3d benchmark and data files (0.3 MB)
Unpacking 444.namd benchmark and data files (7.5 MB)
Unpacking 445.gobmk benchmark and data files (9.2 MB)
Unpacking 447.dealII benchmark and data files (70.2 MB)
Unpacking 450.soplex benchmark and data files (321 MB)
Unpacking 453.povray benchmark and data files (10.3 MB)
Unpacking 454.calculix benchmark and data files (26 MB)
Unpacking 456.hmmer benchmark and data files (57 MB)
Unpacking 458.sjeng benchmark and data files (0.4 MB)
Unpacking 459.GemsFDTD benchmark and data files (2.6 MB)
Unpacking 462.libquantum benchmark and data files (0.2 MB)
Unpacking 464.h264ref benchmark and data files (52.9 MB)
Unpacking 465.tonto benchmark and data files (6.8 MB)
Unpacking 470.lbm benchmark and data files (4.7 MB)
Unpacking 471.omnetpp benchmark and data files (2.9 MB)
Unpacking 473.astar benchmark and data files (5.7 MB)
Unpacking 481.wrf benchmark and data files (67.1 MB)
Unpacking 482.sphinx3 benchmark and data files (51.7 MB)
Unpacking 483.xalancbmk benchmark and data files (213.6 MB)
Unpacking 998.specrand benchmark and data files (4.1 MB)
Unpacking 999.specrand benchmark and data files (4.1 MB)
Checking the integrity of your source tree...
Checksums are all okay.
Unpacking binary tools for linux-rhas4r4-ia64...
Checking the integrity of your binary tools...
Checksums are all okay.
Testing the tools installation (this may take a minute)
...............................................................................................o....................................
........................................................
All tests passed!
Installation successful. Source the shrc or cshrc in
/var/tmp/cpu2006
to set up your environment for the benchmark.
Step 6: Now, we set the current working directory to the DESTINATION device. If you are using a Bourne compatible shell, you will source shrc; if you are using a variant of the csh, you'll use cshrc.
# cd /var/tmp/cpu2006 # . ./shrc
That's dot-space-dot-slash-shrc just above
Step 7: Use runspec to do a test build:
# runspec --config=carol.cfg --action=build --tune=base bzip2 runspec v5487 - Copyright 1999-2007 Standard Performance Evaluation Corporation Using 'linux-rhas4r4-ia64' tools Reading MANIFEST... 18338 files Loading runspec modules................ Locating benchmarks...found 31 benchmarks in 13 benchsets. Reading config file '/var/tmp/cpu2006/config/carol.cfg' Loading "http://www.spec.org/auto/cpu2006/devel_version" for version check: OK Benchmarks selected: 401.bzip2 Compiling Binaries Building 401.bzip2 ref base cpu2006.v1.0.ipf.linux default: (build_base_cpu2006.v1.0.ipf.linux.0000) specmake clean 2> make.clean.err | tee make.clean.out rm -rf bzip2 rm -rf bzip2.exe rm -rf *.o find . \( -name \*.o -o -name '*.fppized.f*' \) -print | xargs rm -rf rm -rf core rm -rf specmake build 2> make.err | tee make.out gcc -c -o spec.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 spec.c gcc -c -o blocksort.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 blocksort.c gcc -c -o bzip2.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 bzip2.c bzip2.c: In function `compressStream': bzip2.c:487: warning: assignment makes integer from pointer without a cast bzip2.c: In function `uncompressStream': bzip2.c:614: warning: assignment makes integer from pointer without a cast gcc -c -o bzlib.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 bzlib.c gcc -c -o compress.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 compress.c gcc -c -o crctable.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 crctable.c gcc -c -o decompress.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 decompress.c gcc -c -o huffman.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 huffman.c gcc -c -o randtable.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 randtable.c gcc -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 spec.o blocksort.o bzip2.o bzlib.o compress.o crctable.o deco mpress.o huffman.o randtable.o -o bzip2 specmake options 2> options.err | tee options.out COMP: gcc -c -o options.o -DSPEC_CPU -DNDEBUG -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 <source> C: CC="gcc" C: COBJOPT="-c -o options" P: CPUFLAGS="-DSPEC_CPU -DNDEBUG" P: BENCH_FLAGS="" P: BENCH_CFLAGS="" O: OPTIMIZE="" O: COPTIMIZE="-O3 -funroll-loops -fno-inline-functions" P: PORTABILITY="-DSPEC_CPU_LP64" P: CPORTABILITY="" O: EXTRA_CFLAGS="" O: EXTRA_OPTIMIZE="" O: EXTRA_COPTIMIZE="" P: EXTRA_PORTABILITY="" P: EXTRA_CPORTABILITY="" LINK: gcc -O3 -funroll-loops -fno-inline-functions -DSPEC_CPU_LP64 <objects> -o options C: LD="gcc" O: COPTIMIZE="-O3 -funroll-loops -fno-inline-functions" P: PORTABILITY="-DSPEC_CPU_LP64" C: LDOUT="-o options" Build successes: 401.bzip2(base) Build Complete The log for this run is in /var/tmp/cpu2006/result/CPU2006.001.log runspec finished at Fri Oct 5 11:24:05 2007; 10 total seconds elapsed
Just above, various compile and link commands may or may not be echoed to your screen, depending on the settings in your config file. At this point, we've accomplished a lot. The SPEC tree is installed, and we have verified that a benchmark can be compiled using the C compiler.
Step 8: Now try running a benchmark, using the minimal test workload. The test workload runs in a tiny amount of time and does a minimal verification that the benchmark executable can at least start up:
# runspec --config=carol.cfg --size=test --noreportable --tune=base --iterations=1 bzip2
runspec v5487 - Copyright 1999-2007 Standard Performance Evaluation Corporation
Using 'linux-rhas4r4-ia64' tools
Reading MANIFEST... 18338 files
Loading runspec modules................
Locating benchmarks...found 31 benchmarks in 13 benchsets.
Reading config file '/var/tmp/cpu2006/config/carol.cfg'
Benchmarks selected: 401.bzip2
Compiling Binaries
Up to date 401.bzip2 test base cpu2006.v1.0.ipf.linux default
Setting Up Run Directories
Setting up 401.bzip2 test base cpu2006.v1.0.ipf.linux default: created (run_base_test_cpu2006.v1.0.ipf.linux.0000)
Running Benchmarks
Running 401.bzip2 test base cpu2006.v1.0.ipf.linux default
/var/tmp/cpu2006/bin/specinvoke -d /var/tmp/cpu2006/benchspec/CPU2006/401.bzip2/run/run_base_test_cpu2006.v1.0.ipf.linux.0000 -e spe
ccmds.err -o speccmds.stdout -f speccmds.cmd -C
/var/tmp/cpu2006/bin/specinvoke -E -d /var/tmp/cpu2006/benchspec/CPU2006/401.bzip2/run/run_base_test_cpu2006.v1.0.ipf.linux.0000 -c
1 -e compare.err -o compare.stdout -f compare.cmd
Success: 1x401.bzip2
Producing Raw Reports
mach: default
ext: cpu2006.v1.0.ipf.linux
size: test
set: int
format: raw -> /var/tmp/cpu2006/result/CINT2006.002.test.rsf
Parsing flags for 401.bzip2 base: done
Doing flag reduction: done
format: flags -> /var/tmp/cpu2006/result/CINT2006.002.test.flags.html
format: ASCII -> /var/tmp/cpu2006/result/CINT2006.002.test.txt
format: config -> /var/tmp/cpu2006/result/CINT2006.002.test.cfg
format: CSV -> /var/tmp/cpu2006/result/CINT2006.002.test.csv
format: HTML -> /var/tmp/cpu2006/result/CINT2006.002.test.html, result//invalid.gif, CINT2006.002.test.gif
format: PDF -> /var/tmp/cpu2006/result/CINT2006.002.test.pdf
format: PostScript -> /var/tmp/cpu2006/result/CINT2006.002.test.ps
set: fp
The log for this run is in /var/tmp/cpu2006/result/CPU2006.002.log
runspec finished at Fri Oct 5 11:26:07 2007; 43 total seconds elapsed
Notice about 20 lines up the notation "Success: 1x401.bzip2". That is what we want to see.
Step 9: let's try running bzip2 with the real workload. This will take a while, over 20 minutes on the Itanium that was under test.
# runspec --config=carol.cfg --size=ref --noreportable --tune=base --iterations=1 bzip2
runspec v5487 - Copyright 1999-2007 Standard Performance Evaluation Corporation
Using 'linux-rhas4r4-ia64' tools
Reading MANIFEST... 18338 files
Loading runspec modules................
Locating benchmarks...found 31 benchmarks in 13 benchsets.
Reading config file '/var/tmp/cpu2006/config/carol.cfg'
Benchmarks selected: 401.bzip2
Compiling Binaries
Up to date 401.bzip2 ref base cpu2006.v1.0.ipf.linux default
Setting Up Run Directories
Setting up 401.bzip2 ref base cpu2006.v1.0.ipf.linux default: created (run_base_ref_cpu2006.v1.0.ipf.linux.0000)
Running Benchmarks
Running 401.bzip2 ref base cpu2006.v1.0.ipf.linux default
/var/tmp/cpu2006/bin/specinvoke -d /var/tmp/cpu2006/benchspec/CPU2006/401.bzip2/run/run_base_ref_cpu2006.v1.0.ipf.linux.0000 -e spec
cmds.err -o speccmds.stdout -f speccmds.cmd -C
/var/tmp/cpu2006/bin/specinvoke -E -d /var/tmp/cpu2006/benchspec/CPU2006/401.bzip2/run/run_base_ref_cpu2006.v1.0.ipf.linux.0000 -c 1
-e compare.err -o compare.stdout -f compare.cmd
Success: 1x401.bzip2
Producing Raw Reports
mach: default
ext: cpu2006.v1.0.ipf.linux
size: ref
set: int
format: raw -> /var/tmp/cpu2006/result/CINT2006.003.ref.rsf
Parsing flags for 401.bzip2 base: done
Doing flag reduction: done
format: flags -> /var/tmp/cpu2006/result/CINT2006.003.ref.flags.html
format: ASCII -> /var/tmp/cpu2006/result/CINT2006.003.ref.txt
format: config -> /var/tmp/cpu2006/result/CINT2006.003.ref.cfg
format: CSV -> /var/tmp/cpu2006/result/CINT2006.003.ref.csv
format: HTML -> /var/tmp/cpu2006/result/CINT2006.003.ref.html, CINT2006.003.ref.gif
format: PDF -> /var/tmp/cpu2006/result/CINT2006.003.ref.pdf
format: PostScript -> /var/tmp/cpu2006/result/CINT2006.003.ref.ps
set: fp
The log for this run is in /var/tmp/cpu2006/result/CPU2006.003.log
runspec finished at Fri Oct 5 12:03:31 2007; 1516 total seconds elapsed
Success with the real workload! So now let's look in the result directory and see what we find:
# cd result # ls CINT2006.002.test.cfg CINT2006.002.test.txt CINT2006.003.ref.rsf CINT2006.002.test.csv CINT2006.003.ref.cfg CINT2006.003.ref.txt CINT2006.002.test.flags.html CINT2006.003.ref.csv CPU2006.001.log CINT2006.002.test.gif CINT2006.003.ref.flags.html CPU2006.002.log CINT2006.002.test.html CINT2006.003.ref.gif CPU2006.003.log CINT2006.002.test.pdf CINT2006.003.ref.html lock.CPU2006 CINT2006.002.test.ps CINT2006.003.ref.pdf invalid.gif CINT2006.002.test.rsf CINT2006.003.ref.ps
Notice the three separate sets of files: .001, .002, and .003
CPU2006.001.log has the log from the compile.
CPU2006.002.log has the log from running 401.bzip2 with the "test" input. The various outputs (.csv, .pdf, .ps, .txt), a compiler flags report (.flags.html), and the configuration file (.cfg) are all preceded by "CINT2006", because 401.bzip2 is one of the integer benchmarks. The tools also distinguish the fact that the input was a "test" input by putting that in the file name as well.
CPU2006.003.log has the log from running 401.bzip2 with the "ref" input. Once again, the various outputs and the configuration file (.cfg) all start with CINT2006.
So let's look at our reference input results, in the .txt file:
# cat CINT2006.003.ref.txt
##############################################################################
# INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN #
# #
# 'reportable' flag not set during run #
# 471.omnetpp base did not have enough runs! #
# 456.hmmer base did not have enough runs! #
# 445.gobmk base did not have enough runs! #
# 458.sjeng base did not have enough runs! #
# 429.mcf base did not have enough runs! #
# 473.astar base did not have enough runs! #
# 483.xalancbmk base did not have enough runs! #
# 400.perlbench base did not have enough runs! #
# 464.h264ref base did not have enough runs! #
# 462.libquantum base did not have enough runs! #
# 401.bzip2 base did not have enough runs! #
# 403.gcc base did not have enough runs! #
# Unknown flags were used! See #
# http://www.spec.org/auto/cpu2006/Docs/runspec.html#flagsurl #
# for information about how to get rid of this error. #
# #
# INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN #
##############################################################################
SPEC(R) CINT2006 Summary
Our Favorite Company, Inc Sample
Fri Oct 12 09:32:00 2007
CPU2006 License: 999 Test date: Oct-2007
Test sponsor: Our Favorite Company, Inc Hardware availability: Aug-2006
Tested by: Our Favorite Company, Inc Software availability: Apr-2007
Estimated Estimated
Base Base Base Peak Peak Peak
Benchmarks Ref. Run Time Ratio Ref. Run Time Ratio
-------------- ------ --------- --------- ------ --------- ---------
400.perlbench NR
401.bzip2 9650 1485 6.50 *
403.gcc NR
429.mcf NR
445.gobmk NR
456.hmmer NR
458.sjeng NR
462.libquantum NR
464.h264ref NR
471.omnetpp NR
473.astar NR
483.xalancbmk NR
==============================================================================
400.perlbench NR
401.bzip2 9650 1485 6.50 *
403.gcc NR
429.mcf NR
445.gobmk NR
456.hmmer NR
458.sjeng NR
462.libquantum NR
464.h264ref NR
471.omnetpp NR
473.astar NR
483.xalancbmk NR
Est. SPECint(R)_base2006 --
Est. SPECint2006 Not Run
HARDWARE
--------
CPU Name: SuperFast Processor
CPU Characteristics:
CPU MHz: 1600
FPU: Integrated
CPU(s) enabled: 32 cores, 16 chips, 2 cores/chip
CPU(s) orderable: 1-16 chips
Primary Cache: 16 KB I + 16 KB D on chip per core
Secondary Cache: 1 MB I + 256 KB D on chip per core
L3 Cache: 12 MB I+D on chip per core
Other Cache: None
Memory: 16 GB
Disk Subsystem: --
Other Hardware: None
SOFTWARE
--------
Operating System: Red Hat Enterprise Linux 5
Compiler: gcc
Auto Parallel: No
File System: ext2
System State: Multi-user
Base Pointers: 64-bit
Peak Pointers: 32/64-bit
Other Software: None
Base Unknown Flags
------------------
401.bzip2: "gcc" (in CC) "gcc" (in LD)
"-O3 -funroll-loops -fno-inline-functions" (in COPTIMIZE)
Base Portability Flags
----------------------
401.bzip2: -DSPEC_CPU_LP64
SPEC and SPECint are registered trademarks of the Standard Performance
Evaluation Corporation. All other brand and product names appearing
in this result are trademarks or registered trademarks of their
respective holders.
##############################################################################
# INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN #
# #
# 'reportable' flag not set during run #
# 471.omnetpp base did not have enough runs! #
# 456.hmmer base did not have enough runs! #
# 445.gobmk base did not have enough runs! #
# 458.sjeng base did not have enough runs! #
# 429.mcf base did not have enough runs! #
# 473.astar base did not have enough runs! #
# 483.xalancbmk base did not have enough runs! #
# 400.perlbench base did not have enough runs! #
# 464.h264ref base did not have enough runs! #
# 462.libquantum base did not have enough runs! #
# 401.bzip2 base did not have enough runs! #
# 403.gcc base did not have enough runs! #
# Unknown flags were used! See #
# http://www.spec.org/auto/cpu2006/Docs/runspec.html#flagsurl #
# for information about how to get rid of this error. #
# #
# INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN -- INVALID RUN #
##############################################################################
-----------------------------------------------------------------------------
For questions about this result, please contact the tester.
For other inquiries, please contact webmaster@spec.org.
Copyright 2007 Standard Performance Evaluation Corporation
Tested with SPEC CPU2006 v102.
Report generated on Fri Oct 5 12:03:27 2007 by CPU2006 ASCII formatter v5493.
Done. The suite is installed, and we can run at least one benchmark for real (see the report of the time spent in 401.bzip2 above).
If the title of this section describes your situation, you basically have two choices.
You might be able to mount the DVD on one system and use network services to make it available on other systems.
Please note that the SPEC CPU2006 license agreement does not allow you to post the DVD on any public server. If your institution has a SPEC CPU2006 license, then it's fine to post it on an internal server that is accessible only to members of your institution.
Whether you attempt a network mount will probably depend on:
If your network environment allows easy cross-system mounting, or if you feel brave about reading manpages, you can use a network mount for the installation. Otherwise, you can fall back on the tar file.
Network mount, easy:
for example, System A Solaris/Opteron + System B Solaris/SPARC
Your operating system may be configured to automatically mount the drive and automatically make it visible to other network systems, or may make it visible with minimal user intervention. During one set of testing, system A (with the DVD drive) was an Opteron-based system running Solaris 10. The SPEC CPU2006 DVD was inserted. The operating system mounted it automatically, and from a terminal window, a (non-privileged) user entered the Solaris share command to make it visible to other hosts.
On System B, a Solaris SPARC system, a non-privileged user typed:
cd /net/systemA/cdrom/spec_cpu2006 ./install.sh
and the installation proceeded normally, picking up from step 5, above.
Network mount, medium difficulty:
for example, System A Solaris/Opteron + System B Tru64 Unix/Alpha
Subsequent to the tests of the previous paragraphs, the DVD drive on System A (Solaris/Opteron) was also visible to a system running Compaq Tru64 UNIX V5.1A. But in this case, a little assistance was needed from the privileged (root) account on system B:
echo "systemA.domain.com:/cdrom/spec_cpu2006 /systemA nfs ro,bg,soft 0 0" >> /etc/fstab mkdir /systemA /usr/sbin/mount /systemA
Then, the non-privileged user was able to say:
cd /systemA ./install.sh
and once again the installation proceeded normally, picking up from step 5, above.
Network mount, a bit harder:
for example, System A SuSE/x86 + System B Mac OS X/PowerPC
The SPEC CPU2006 DVD was also inserted into a system running SuSE Linux 9.0, and used from a Mac OS X PowerBook. On both these systems, there are probably automatic tools that would have accomplished the following more quickly, but the tester happened to read the manpages in the particular order that he happened to read them in. The following succeeded:
On System A, root added
/dev/cdrom /cd iso9660 ro,user,noauto,unhide
to /etc/fstab as suggested by man mount; the DVD was inserted; and the user typed mount /cd. On System A, root also added:
/cd 192.168.0.0/24(ro,insecure,no_root_squash,sync)
to /etc/exports, and then typed:
exportfs -r rpc.nfsd -p 8 rpc.mountd cat /var/lib/nfs/etab
On System B, root typed:
mkdir /remote mount -t nfs 192.168.0.106:/cd /remote
Finally, the user typed
cd /remote ./install.sh
and installation continued as normal, with step 5.
If the DVD drive is on a system other than the one where you wish to do the installation, and if you do not wish to try to get a network mount working, then the final fallback is to use the compressed tarfile. If you choose this option, please carefully observe the warnings.
Go to the system with the DVD drive ("System A"). Insert the SPEC CPU2006 DVD, and, if required, issue a mount command.
From a terminal window (aka command window), cd to the top level directory on the DVD.
You are going to retrieve five things from the DVD. First, find the large tarfile and its corresponding md5 file:
cd install_archives ls -l cpu2006.tar.bz*
or, if System A is a Windows system, then:
cd install_archives dir cpu2006.tar.bz*
In either case, you should see one moderately large file > 500MB, cpu2006.tar.bz2, and a small file associated with it that contains a checksum, cpu2006.tar.bz2.md5.
If you don't see the above files, try looking for cpu*tar*. The name might change if, for example, a maintenance update of CPU2006 changes the name slightly to indicate an updated version.
Do whatever is required in order to transfer both files intact to the system where you wish to do the installation ("System B"). If you use ftp, do not forget to use image (binary) mode. For example:
$ ftp
ftp> op systemB
Name: imauser
Password:
ftp> cd /kits
ftp> bin <-------- important
200 Type set to I.
ftp> put cpu2006.tar.bz2
ftp> put cpu2006.tar.bz2.md5
Please note that the SPEC CPU2006 license agreement does not allow you to post the above file on any public ftp server. If your institution has a SPEC CPU2006 license, then it's fine to post it on an internal server that is accessible only to members of your institution.
Next, you are going to look on the DVD for versions of specbzip2, specmd5sum, and spectar that are compatible with system B. Please do not use the tar supplied by your operating system unless you are sure that it can handle long path names. Many commonly-supplied tar utilities cannnot.
Please do not use Windows Zip utilities, as these will not preserve line endings.
If you have GNU tar and the genuine bzip2, then you can use those; otherwise, please hunt around on the DVD to find prebuilt versions that are compatible with your environment, like so:
$ cd /dvdrom
$ cd tools
$ cd bin
$ ls
aix5L-ppc linux-rhas4r4-ia64 openbsd38-ia32
freebsd54-ia32 linux-suse101-AMD64 sles9-glibc23-ia64
freebsd60-ia32 linux-suse101-i386 solaris-sparc
hpux-11iv1-parisc linux-ydl23-ppc solaris-x86
hpux-11iv2-ipf macosx tru64-alpha
irix6.5-mips macosx-ppc windows-i386
linux-redhat62-ia32 netbsd21-ia32
$ cd aix5L-ppc
$ cat description
For PowerPC systems running AIX 5L V5.1 or later
Built on AIX 5L V5.1 with the
IBM XL C/C++ for AIX Version 8 compiler
$ ls -l spec*
-r-xr-xr-x 1 root root 100596 Dec 20 2005 specbzip2
-r-xr-xr-x 1 root root 26642 Dec 20 2005 specmd5sum
-r-xr-xr-x 1 root root 285259 Dec 20 2005 spectar
$
Once you've found the right versions of specbzip2, specmd5sum, and spectar for the system where you intend to install (system B), transfer them to system B using the same methods that you used for the big tarfile.
On system B, use specmd5sum to check that the file transfer worked correctly. In this example, we assume that you have placed all 5 of the files mentioned above in the /kits directory:
$ cd /kits $ chmod +x spec* $ specmd5sum -c cpu2006.tar.bz2.md5 cpu2006.tar.bz2: OK
Unpack the tarfile, like so:
$ cd /mybigdisk $ mkdir cpu2006 $ cd cpu2006 $ /kits/specbzip2 -dc /kits/cpu2006.tar.bz2 | /kits/spectar -xf -
Be patient: it will take a bit of time to unpack! It might take 15 minutes, depending on the speed of your processor and disks. Go for a coffee break.
Now, at last, type ./install.sh and pick up with step 5, above. Your output will be similar, but not identical, to the output shown in step 5 above: you won't see the "Unpacking xxxx" messages, because you already did the unpacking.
Note that the directory where you unpack the tarfile will be the directory where you install FROM and the directory where you install TO. You will see a question similar to this:
Installing FROM /var/tmp/cpu2006 Installing TO /var/tmp/cpu2006 Is this correct? (Please enter 'yes' or 'no') yes
If you enter "no", installation will stop. If you try to install TO another directory, using the -d flag, the installation will not succeed when using the tar file method.
Copyright (C) 1999-2008 Standard Performance Evaluation Corporation
All Rights Reserved