Efficient runahead threads

  • Authors:
  • Tanausú Ramirez;Alex Pajuelo;Oliverio Jesus Santana;Onur Mutlu;Mateo Valero

  • Affiliations:
  • Universitat Politecnica de Catalunya (UPC), Barcelona, Spain;Universitat Politecnica de Catalunya (UPC), Barcelona, Spain;Universidad de Las Palmas de Gran Canaria (ULPGC), Las Palmas de Gran Canaria, Spain;Carnegie Mellon University (CMU), Pittsburgh, PA, USA;Universitat Politecnica de Catalunya (UPC), Barcelona, Spain

  • Venue:
  • Proceedings of the 19th international conference on Parallel architectures and compilation techniques
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Runahead Threads (RaT) is a promising solution that enables a thread to speculatively run ahead and prefetch data instead of stalling for a long-latency load in a simultaneous multithreading processor. With this capability, RaT can reduces resource monopolization due to memory-intensive threads and exploits memory-level parallelism, improving both system performance and single-thread performance. Unfortunately, the benefits of RaT come at the expense of increasing the number of executed instructions, which adversely affects its energy efficiency. In this paper, we propose Runahead Distance Prediction (RDP), a simple technique to improve the efficiency of Runahead Threads. The main idea of the RDP mechanism is to predict how far a thread should run ahead speculatively such that speculative execution is useful. By limiting the runahead distance of a thread, we generate efficient runahead threads that avoid unnecessary speculative execution and enhance RaT energy efficiency. By reducing runahead-based speculation when it is predicted to be not useful, RDP also allows shared resources to be efficiently used by non-speculative threads. Our results show that RDP significantly reduces power consumption while maintaining the performance of RaT, providing better performance and energy balance than previous proposals in the field.