PARSEC benchmarks

From gem5
Revision as of 12:52, 10 August 2014 by Hashken (talk | contribs) (Download Pre-built M5 Disk Image)
Jump to: navigation, search

PARSEC v2.1

The PARSEC benchmarks have been built to run in the gem5 full-system simulation mode. The following section details references and the process for building and running the suite.

Download Pre-built M5 Disk Image

PARSEC has been built to run on gem5 with the ALPHA ISA, and disk images are available at Running PARSEC 2.1 on M5 from The University of Texas. You can download a disk image there and unzip it.

The original system files that can be downloaded from http://www.m5sim.org/Download will have the following directory structure upon extracting:

system/
       binaries/
              console
              ts_osfpal
              vmlinux
       disks/
              linux-bigswap2.img
              linux-latest.img

Now, if you are going to run for the ALPHA ISA, then you need to swap the ts_osfpal, vmlinux, linux-latest.img files in the above directory structure with the ones provided at http://www.cs.utexas.edu/~parsec_m5/

After unzipping the file, you will need to specify where gem5 should look for the disk image. In the file ./configs/common/SysPaths.py, specify the path to your disk image in the line:

path = [ ’/dist/m5/system’, ’<complete path to your disks and binaries directory>’ ]

Next, in ./configs/common/Benchmarks.py, specify the name of your disk image. For example:

return env.get(’LINUX_IMAGE’, disk(’linux-parsec-2-1-m5.img’))

You should now be set up to run with benchmarks that are on the disk image. See the section below about running gem5 for more details on how to execute the simulation.

Running PARSEC in gem5

To run PARSEC in gem5, you can specify a run script to gem5 on the command line

./build/ALPHA_FS/m5.opt ./configs/example/fs.py --script=./path/to/runscript.rcS

Where the script, runscript.rcS is a shell script that contains commands to execute the benchmark. For example:

#!/bin/sh
# File to run the blackscholes benchmark
cd /parsec/install/bin
/sbin/m5 dumpresetstats
./blackscholes 64 /parsec/install/inputs/blackscholes/in_64K.txt /parsec/install/inputs/blackscholes/prices.txt
echo "Done :D"
/sbin/m5 exit

This example changes directories to the location where the binary exists on the disk image, resets the gem5 statistics, runs the blackscholes benchmark and exits.

References

For more details on the process for building and running PARSEC for the ALPHA ISA, see Running PARSEC 2.1 on M5 from The University of Texas.

PARSEC 3.0

ARM

With the New Full System Files (arm-system-2011-08.tar.bz2), the following 11 benchmarks of 13 can be natively compiled (after installing small packages needed):

  • Blackscholes;
  • Bodytrack;
  • Dedup;
  • Facesim;
  • Ferret;
  • Fluidanimate;
  • Freqmine;
  • Streamcluster;
  • Swaptions;
  • Vips;
  • x264;

Two benchs can not, because:

  • Canneal: does not support ARM yet (atomic.h need to be ported);
  • Raytrace: X11 development libraries are not available (to be tested);

The native compilation was performed in a Snowball SDK, but an ARM chroot in an x86 host machine may also work;