|
| United States Worldwide |
|
Finding representative workloads for computer system design
by Lodewijk "Bones" Bonebakker
December 11, 2007 - The designers of computer systems and processors must balance an enormous number of competing requirements, e.g. between cost and performance, during the design process. In order to decide between alternatives, the performance of each design alternative is evaluated using a simulator. Even with the advances in computer processing power, simulating a next generation processor remains slow. The increased computing power of the current generation is offset by the increased complexity of the next generation. Within the simulator, performance of the target design is evaluated for a small set of workloads. Workload selection is based on a variety of reasons marketing value, revenue dollars, and familiarity. However, the simulation effort required limits the number of workloads for which performance projections can be made. Thus the selected set of workloads must be representative of actual computer system usage, otherwise designs may be optimized for workloads that have little financial impact. This technical report investigates how we can extract current usage information and use it in the selection of representative workloads. Our goal is to provide a solid quantitative grounding for workload selection. To that end we introduce methods to capture and describe workloads on real computer systems for further analysis. Using these captured workloads we can cross-reference their behavior with a known set of standard benchmarks, for example from TPC and SPEC, to decide which subset of benchmarks best describes the behavioral space for the computer systems. This work will help Sun to build processors and computer systems that do what is needed, at the best performance, for the lowest cost and power. The work also illustrates that designing for industry standard benchmarks does not necessarily lead to systems that are optimal for the actual market requirements. The quantitative feedback loop described in this technical reports allows computer system and processor designers to keep a close watch on trends in the marketplace and how these trends impact the usage patterns of computer systems and processors. With this knowledge, the designs can be kept current relative to the marketplace instead of the state of the art in benchmarks. | |||||||||||||||||||||||