Chip Multiprocessors (CMPs) have become the dominant form of general purpose processors. This transition created a disruptive change: For the first time in many years, substantial performance gains for applications can no longer be achieved without modifying the underlying source code. Future applications must be radically different - they must be parallel. So far, software developers have been hesitant to burden themselves with the tedious and error-prone task of parallelizing their programs. This leaves computer architects and chip designers in a precarious situation: How can future processors be built with little information about future applications?
The goal of PARSEC is to solve this dependency and make tomorrow's applications available today.
PARSEC differs from other benchmark suites in the following ways:
- Multithreaded: While serial programs are abundant, they are of limited use for evaluation of multiprocessor machines. PARSEC is one of few benchmark suites that are parallel.
- Emerging Workloads: The suite includes emerging workloads which are likely to become important applications in the near future but which are currently not commonly used. Our goal was to provide a collection of applications as might be typical in a few years.
- Diverse: PARSEC does not try to explore a single application domain in detail, as was done by several previous benchmark suites. The selection of included programs is wide and tries to be as representative as possible.
- Not HPC-Focused: Computationally intensive, parallel programs are very common in the domain of High-Performance Computing (HPC), but HPC programs are just a small subset of the whole application space. In the future, parallelization techniques will become increasingly popular in other areas as well. The PARSEC suite anticipates this devlopment and tries to avoid a program selection which is skewed towards HPC. It focuses on programs from all domains, such as desktop and server applications.
- Research: The suite is primarily intended for research. It can also be used for performance measurements of real machines, but its original purpose is insight, not numbers. Benchmark suites intended for research usually go beyond pure scoring systems and provide infrastructure to instrument and manipulate included programs in an efficient manner.
The current version of the suite contains the following 13 programs from many different areas such as computer vision, video encoding, financial analytics, animation physics and image processing:
- blackscholes - Option pricing with Black-Scholes Partial Differential Equation (PDE)
- bodytrack - Body tracking of a person
- canneal - Simulated cache-aware annealing to optimize routing cost of a chip design
- dedup - Next-generation compression with data deduplication
- facesim - Simulates the motions of a human face
- ferret - Content similarity search server
- fluidanimate - Fluid dynamics for animation purposes with Smoothed Particle Hydrodynamics (SPH) method
- freqmine - Frequent itemset mining
- raytrace - Real-time raytracing
- streamcluster - Online clustering of an input stream
- swaptions - Pricing of a portfolio of swaptions
- vips - Image processing (Project Website)
- x264 - H.264 video encoding (Project Website)
The following table compares PARSEC with several other benchmark suites:
We would like to acknowledge the hard work of the authors of the benchmark programs. Without them PARSEC would not exist. The institutions who contributed the most workloads are Intel and Princeton University. Stanford University allowed us to include their face simulation code.