Managing multi-configuration hardware via dynamic working set analysis
Top Cited Papers
- 1 January 2002
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Microprocessors are designed to provide good average performance over a variety of workloads. This can lead to inefficiencies both in power and performance for individual programs and during individual phases within the same program. Microarchitectures with multi-configuration units (e.g. caches, predictors, instruction windows) are able to adapt dynamically to program behavior and enable/disable resources as needed. A key element of existing configuration algorithms is adjusting to program phase changes. This is typically done by "tuning" when a phase change is detected --- i.e. sequencing through a series of trial configurations and selecting the best.Algorithms that dynamically collect and analyze program working set information are studied. To make this practical, we propose working set signatures --- highly compressed working set representations (e.g. 32-128 bytes total). Algorithms use working set signatures to 1) detect working set changes and trigger re-tuning; 2) identify, recurring working sets and re-install saved optimal reconfigurations, thus avoiding the time-consuming tuning process; 3) estimate working set sizes to configure caches directly to the proper size, also avoiding the tuning process. Multi-configuration instruction caches are used to demonstrate the performance of the proposed algorithms. When applied to reconfigurable instruction caches, an algorithm that identifies recurring phases achieves power savings and performance similar to the best algorithm reported to date, but with orders-of-magnitude savings in the number of re-tunings.Keywords
This publication has 15 references indexed in Scilit:
- An integrated circuit/architecture approach to reducing leakage in deep-submicron high-performance I-cachesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Power and energy reduction via pipeline balancingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Instruction path coprocessorsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- An architectural framework for runtime optimizationIEEE Transactions on Computers, 2001
- DynamoPublished by Association for Computing Machinery (ACM) ,2000
- Reconfigurable caches and their application to media processingPublished by Association for Computing Machinery (ACM) ,2000
- Runtime reconfiguration techniques for efficient general-purpose computationIEEE Design & Test of Computers, 2000
- Adapting cache line size to application behaviorPublished by Association for Computing Machinery (ACM) ,1999
- The SimpleScalar tool set, version 2.0ACM SIGARCH Computer Architecture News, 1997
- Measurements of major locality phases in symbolic reference stringsPublished by Association for Computing Machinery (ACM) ,1976