New Findings on Using Queue Occupancy to Integrate Runtime Power Saving Techniques Across the PipelineReport
This paper provides new insights on how to integrate power-saving techniques by using queue occupancies to dynamically match the power-saving modes of various pipeline stages with the current instruction throughput. (This paper focuses on fetch, decode, integer execution, and data cache.) Architects have proposed many runtime power-saving techniques, most of which reduce power dissipation in a single microarchitectural unit. But very little work has been done to integrate these disparate techniques to ensure that they cooperate rather than interfering with each other. We use both queuing theory and experimental results to justify the use of superscalar decoupling queues to guide dynamic control of power settings. This permits integrated power control for multiple units across the pipeline, with minimal negative interaction, by matching the throughput of each stage and the application's current instruction-level parallelism. Our findings verify but also improve upon those in previous work by Semerraro et al. In particular, our approach is robust in jumping out of the bad power modes configuration incurring radical performance degradation, and our approach allows the fetch stage (a significant source of power dissipation) to realize power savings, something that prior integrated, queue-based techniques have not been able to accomplish.
Note: Abstract extracted from PDF text
All rights reserved (no additional license for public reuse)
Li, Yingmin, Mircea Stan, and Kevin Skadron. "New Findings on Using Queue Occupancy to Integrate Runtime Power Saving Techniques Across the Pipeline." University of Virginia Dept. of Computer Science Tech Report (2003).
University of Virginia, Department of Computer Science