Computer architecture research has largely benefited from, and
continues to be driven by ad-hoc benchmarking. Often the
benchmarks are selected to represent workloads that architecture
engineers believe should run on the computational platforms they
design. For example, benchmark suites such as SPEC have driven computer
architecture innovation for the last decade.Versatility and VersaBench: A New Metric and a Benchmark Suite for Flexible Architectures.
Recently, advances in VLSI technology have created an increasing
interest within the computer architecture community to build a
new kind of processor that is more versatile than extant general
purpose processors. Such new processor architectures are
designed to efficiently support a broad class of applications
including graphics, networking, and signal processing in
additional to the traditional desktop workloads.
Because of the new focus on and demand for architectural
versatility, we have assembled VersaBench, a new
benchmark suite that is specifically geared toward accurately
reflecting the goals of the versatile-minded architecture
community. In addition, we introduce a Versatility
measure to quantify the ability of a versatile-architecture to
effectively execute a broad set of applications. The VersaBench
suite is composed of applications drawn from several domains
including desktops, servers, and embedded systems.
The Versatility of an architecture is a single scalar measure
that is inspired by the SPECmark metric.
The SPECmark of an architecture is the geometric mean
of the speedups of that architecture relative to a reference
machine (e.g., the VAX 11/780) for each of the
applications in a SPEC suite (e.g., SPEC CINT 89). Computing the
Versatility of an architecture is purposefully designed to
mirror that of a SPECmark.
Accordingly, Versatility is the geometric mean of
the speedups of an architecture for each of the applications in
the VersaBench suite. Unlike a SPECmark however, the speedup
of each application is not measured relative to a single
reference machine, but rather relative to the architecture which
provides the best performance for that application (from known
results in the 2004 time frame).
For more information, see