These benchmarks are installed and built for Solaris/SPARC in /cs/systems/Benchmarks/SPECCPU2000-Sol-SPARC and for Solaris/x86 in /cs/systems/Benchmarks/SPECCPU2000-Sol-x86

Documentation describing how to build and run this benchmark suite can be found at the SPEC web site.

To run a particular benchmarks, follow these steps.

  1. First which SPEC installation you want to use. If you are running on coolthreads, use /cs/systems/Benchmarks/SPECCPU2000-Sol-SPARC as the base directory. If you are running on quad, use /cs/systems/Benchmarks/SPECCPU2000-Sol-x86. Later in the text we will refer to base directory as ${SPEC_DIR}
  2. Find the benchmark you want to run. Integer benchmarks are in ${SPEC_DIR}/benchspec/CINT2000, and floating-point benchmarks are in ${SPEC_DIR}/benchspec/CFP2000
  3. Find the right sub-directory. Suppose you decided to run 164.gzip. You would go into its run directory: ${SPEC_DIR}/benchspec/CINT2000/164.gzip/run. The run directory contains several directories: one where the benchmark was built, one set up to run it with the test input set, one set up to run it with the reference input set. You need the one with the reference input set. To find out which one it is, type
    grep ref list
    The output will contain the name of the directory. Suppose this was directory 000000001.
  4. Next you go into the directory 000000001. Now you need to find out how to run the benchmark. You do the following:
    cd ${SPEC_DIR} % source ${SPEC_DIR}/cshrc
    if you are in C-shell, or
    % . ${SPEC_DIR}/shrc
    if you are in bash shell. Then you go in your target directory:
    % cd ${SPEC_DIR}/benchspec/CINT2000/164.gzip/ run/000000001
    and type:
    % specinvoke -n
  5. The output contains the command that you use to launch that benchmark. If there is more than one, pick any of them.
  6. To run the benchmark you must copy the entire directory 164.gzip/run/000000001 into a place in your home directory, and run it from there. You cannot run the benchmarks in the same directory where they are installed.

Documentation on the SPEC website contains more information describing this process. contains an article how to execute the benchmarks without SPEC tool, i.e., "by hand".

This link courtesy of Ken Barr gives you commands for running all SPEC CPU2000 benchmarks with reference inputs by hand. VJ from Harvard has posted commands for SPEC CPU2006.


TPC-C is a popular database benchmark. Our group has its own implementation on top of Berkeley DB. It is called TpccOverBkDB and currenlty runs only on 64-bit Solaris/SPARC platforms. It can be easily ported to other Unix platforms. Download the benchmark and documentation here.

Parallel Benchmarks from UCSD

Brad Calder's research group at UCSD has shared with us their fine-grained parallel benchmarks. (Thanks to John Sampson for packaging the code). Talk to Sasha Fedorova if you'd like to use these benchmarks.

Olden parallel benchmarks

These are benchmarks with fine-grained parallelism. Learn more here.

© Copyright 2007 Simon Fraser University