Installing SPEC CPU2000 Under UnixLast updated: 30 Oct 2001 jh |
(To check for possible updates to this document, please see http://www.spec.org/cpu2000/docs/ )
The SPEC CPU2000 suite has been tested under both Unix and NT systems. Your CD can be installed under either type of operating system.
The installation procedure for Unix is as follows:
Note: links to SPEC CPU2000 documents on this web page assume that you are reading the page from a directory that also contains the other SPEC CPU2000 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: |
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 CD.) |
Linux: | mount -t iso9660 -o ro,exec /dev/cdrom /mnt/cdrom |
Solaris: | If Volume Management is running, you should find that the CD is
automatically mounted, as /cdrom/label_of_volume/ If not,
you should be able to mount it with a command similar to this: mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom |
Tru64 Unix: | mount -t cdfs -o rrip /dev/rz20c /cdrom |
Note that you may need root privileges to mount the CD.
The installation procedure will attempt to determine your current architecture. If a possible match is found, you will see a message such as this one:
These appear to be valid architectures:Note that you MUST type in the architecture that you wish to use, even if only one choice is offered. Type the name exactly as it appears (or use your mouse cut and paste).
If the installation procedure is unable to determine your system architecture, you will see a message such as this one:
We do not appear to have vendor supplied binaries for your architecture.If you see that message, please stop here, and examine the file tools_build.txt =
START A BOURNE-COMPATIBLE SHELL (if you are not already in one) That is, you need to use a command interpreter that supports the syntax used by shrc, which tries to be highly portable by avoiding proprietary or uncommon shell features. Many shells -- such as ash, bash, ksh, and zsh -- provide some degree of compatibility with the Bourne shell. The C shell (csh) definitely is NOT compatible with Bourne shell syntax. If you are in doubt, or if you see unexpected error messages from shrc, you can usually start a Bourne shell by typing 'sh'. |
Then, source the file shrc. If you prefer some other shell, you can probably spawn it after sourcing shrc; when you do so, please be sure that your new shell does not clear the path variables set up by shrc!
For example:
% cd /usr/john/cpu2000 % sh $ . ./shrc <- that's dot-space-dot-slash-shrc $ csh %The effect of the above commands is to set up environment variables and paths for SPEC. Remember, you must be in a Bourne-compatible shell when you source shrc.
% runspec --config=Tru64_Unix --action=build --tune=base gzipThe above command assumes that you can tell what config file (in the directory $SPEC/config) is appropriate for you simply from the filename. 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.
% runspec --config=Tru64_Unix --size=test \ --noreportable --iterations=1 gzipThe "\" 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.
% runspec --config=Tru64_Unix --size=ref \ --noreportable --iterations=1 gzipCheck the results in $SPEC/result.
Here is a complete Unix installation, with comments in asterisks. This example follows the steps listed above. We assume that Steps 1 and 2 are already complete (from the list above).
************************************************************ Step 3: Mount the CD. ************************************************************ % su Password: # mount -t cdfs -o rrip /dev/rz20c /cdrom # exit ************************************************************ Step 4: Set the current working directory to the CD: ************************************************************ % cd /cdrom ************************************************************ Step 5: Invoke install.sh. When prompted, we enter the destination directory, and the desired architecture: ************************************************************ % install.sh Top of SPEC tree is '/cdrom' Enter the directory you wish to install to (i.e. /usr/cpu2000) /cpu2000 These appear to be valid architectures: Tru64_UNIX-alpha Enter the architecture you are using: Tru64_UNIX-alpha ./ result/ result/images/ result/images/basebar.gif result/images/invalid.gif result/images/peakbar.gif . . ****************************************************** . The SPEC tools create many files on your destination . disk, listing the name of each one. (Over 7000 lines . deleted here, in the interest of brevity.) . ****************************************************** . bin/lib/site_perl/5.005/Font/Metrics/CourierBold.pm bin/lib/site_perl/5.005/Font/Metrics/CourierOblique.pm bin/lib/site_perl/5.005/Font/Metrics/CourierBoldOblique.pm bin/lib/site_perl/5.005/Font/Metrics/TimesRoman.pm Top of SPEC tree is '/cpu2000' Everything looks ok, source the shrc file and have at it! % ************************************************************ Step 7: Now, we set the current working directory to the DESTINATION device, start a Bourne-compatible shell, and source the shrc. After that, it is ok to spawn some other shell. ************************************************************ % cd /cpu2000 % sh $ . ./shrc *** that's dot-space-dot-slash-shrc **** $ csh ************************************************************ Step 8: Use runspec to do a test build: ************************************************************ % runspec --config=Tru64_Unix --action=build --tune=base gzip runspec v2.00 - Copyright (C) 1999 Standard Performance Evaluation Corporation Loading standard modules.............. Loading runspec modules............. Identifying output formats...asc...html...pdf...ps...raw... We will use: 164.gzip Compiling Binaries Building 164.gzip ref base none default Training 164.gzip Build Complete ************************************************************ Just above, various compile and link commands may or may not be echoed to your screen, depending on the settings in your config file. For the sake of brevity, they are omitted in this example. 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 9: Now try running the first 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=Tru64_Unix --size=test \ --noreportable --iterations=1 gzip runspec v2.00 - Copyright (C) 1999 Standard Performance Evaluation Corporation Loading standard modules.............. Loading runspec modules............. Identifying output formats...asc...html...pdf...ps...raw... We will use: 164.gzip Compiling Binaries Up to date 164.gzip test base none default Setting Up Run Directories Setting up 164.gzip test base none default: created Running Benchmarks Running 164.gzip test base none default Success: 1x164.gzip Producing Reports mach: default ext: none size: test set: int format: raw -> /cpu2000/result/CINT2000.002.raw format: pdf -> /cpu2000/result/CINT2000.002.pdf format: PostScript -> /cpu2000/result/CINT2000.002.ps format: HTML -> /cpu2000/result/CINT2000.002.html, images/scale.005.gif format: ASCII -> /cpu2000/result/CINT2000.002.asc set: fp runspec finished ************************************************************ Notice 15 lines up the notation "Success: 1x164.gzip". That is what we want to see. ************************************************************ ************************************************************ Step 10: let's try running gzip with the real workload. This will take a while - about 8 minutes on the 667 MHz Alpha used for the sample installation. ************************************************************ % runspec --config=Tru64_Unix --size=ref \ --noreportable --iterations=1 gzip runspec v2.00 - Copyright (C) 1999 Standard Performance Evaluation Corporation Loading standard modules.............. Loading runspec modules............. Identifying output formats...asc...html...pdf...ps...raw... We will use: 164.gzip Compiling Binaries Up to date 164.gzip ref base none default Setting Up Run Directories Setting up 164.gzip ref base none default: created Running Benchmarks Running 164.gzip ref base none default Success: 1x164.gzip Producing Reports mach: default ext: none size: ref set: int format: raw -> /cpu2000/result/CINT2000.003.raw format: pdf -> /cpu2000/result/CINT2000.003.pdf format: PostScript -> /cpu2000/result/CINT2000.003.ps format: HTML -> /cpu2000/result/CINT2000.003.html, images/scale.350.gif format: ASCII -> /cpu2000/result/CINT2000.003.asc set: fp runspec finished ************************************************************ Success with the real workload! So now let's look in the result directory and see what we find: ************************************************************ % cd result % ls CINT2000.002.asc CINT2000.002.raw CINT2000.003.ps log.002 CINT2000.002.html CINT2000.003.asc CINT2000.003.raw log.003 CINT2000.002.pdf CINT2000.003.html images log.lock CINT2000.002.ps CINT2000.003.pdf log.001 ************************************************************ Notice the three log files from our three runspec commands. Those runspec commands are easily extracted with "grep": ************************************************************ % grep /runspec log* log.001:/cpu2000/bin/runspec -c Tru64_Unix -a build -T base gzip log.002:/cpu2000/bin/runspec -c Tru64_Unix -i test -n 1 gzip log.003:/cpu2000/bin/runspec -c Tru64_Unix -i ref -n 1 gzip ************************************************************ So let's look at our results, in the ".asc" file: ************************************************************ % cat *3.asc ############################################################################## # INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN # # # # 'reportable' flag not set during run # # 254.gap base did not have enough runs! # # 256.bzip2 base did not have enough runs! # # 255.vortex base did not have enough runs! # # 175.vpr base did not have enough runs! # # 164.gzip base did not have enough runs! # # 253.perlbmk base did not have enough runs! # # 186.crafty base did not have enough runs! # # 176.gcc base did not have enough runs! # # 252.eon base did not have enough runs! # # 197.parser base did not have enough runs! # # 300.twolf base did not have enough runs! # # 181.mcf base did not have enough runs! # # # # INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN # ############################################################################## SPEC CINT2000 Summary -- -- Wed Dec 1 12:08:47 1999 SPEC License #0 Test date: -- Hardware availability: -- Tester: -- Software availability: -- Estimated Estimated Base Base Base Peak Peak Peak Benchmarks Ref Time Run Time Ratio Ref Time Run Time Ratio ------------ -------- -------- -------- -------- -------- -------- 164.gzip 1400 437 321* 175.vpr X 176.gcc X 181.mcf X 186.crafty X 197.parser X 252.eon X 253.perlbmk X 254.gap X 255.vortex X 256.bzip2 X 300.twolf X ======================================================================== 164.gzip 1400 437 321* 175.vpr X 176.gcc X 181.mcf X 186.crafty X 197.parser X 252.eon X 253.perlbmk X 254.gap X 255.vortex X 256.bzip2 X 300.twolf X Est. SPECint_base2000 -- Est. SPECint2000 -- ************************************************************ In the table above, most of the results are blank, because we only ran 1 of the 12 integer benchmarks. Notice that the values for SPECint_base2000 and SPECint2000 are dashes ("--"); these would be filled in if we did a "reportable" run, as described in runspec.html There are also lots of dashes for the various portions of the system description, both at the top of the page and in the section that follows. These dashes indicate that we have not filled in the fields that describe the hardware and software that we are testing. For information on how to fill in these fields, please see: config.html ************************************************************ HARDWARE -------- Hardware Vendor: -- Model Name: -- CPU: -- CPU MHz: -- FPU: -- CPU(s) enabled: -- CPU(s) orderable: -- Parallel: -- Primary Cache: -- Secondary Cache: -- L3 Cache: -- Other Cache: -- Memory: -- Disk Subsystem: -- Other Hardware: -- SOFTWARE -------- Operating System: -- Compiler: -- File System: -- System State: -- NOTES ----- -- ############################################################################## # INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN INVALID RUN # # # # 'reportable' flag not set during run # # 254.gap base did not have enough runs! # # 256.bzip2 base did not have enough runs! # # 255.vortex base did not have enough runs! # # 175.vpr base did not have enough runs! # # 164.gzip base did not have enough runs! # # 253.perlbmk base did not have enough runs! # # 186.crafty base did not have enough runs! # # 176.gcc base did not have enough runs! # # 252.eon base did not have enough runs! # # 197.parser base did not have enough runs! # # 300.twolf base did not have enough runs! # # 181.mcf base did not have enough runs! # # # # INVALID RUN 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 1999 Standard Performance Evaluation Corporation Generated on Wed Dec 1 12:16:24 1999 by SPEC CPU2000 ASCII formatter v2.1 % ************************************************************ Done. The suite is installed, and we can run at least one benchmark for real. ************************************************************Copyright (C) 1999-2001 Standard Performance Evaluation Corporation. All Rights Reserved