Dynamic schemes for speculative execution of code

  • Authors:
  • Prabhakar Raghavan;Hadas Shachnai;Mira Yaniv

  • Affiliations:
  • Verity, Inc., 892 Ross Drive, Sunnyvale, CA;Department of Computer Science, Technion, Haifa 32000, Israel;Department of Computer Science, Technion, Haifa 32000, Israel

  • Venue:
  • Performance Evaluation
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Speculative execution of code is becoming a key technique for enhancing the performance of pipeline processors. In this work we study schemes that predict the execution path of a program based on the history of branch executions. Building on previous work, we present a model for analyzing the effective speedup from pipelining, when speculative execution is employed. We follow this with stochastic analyses of several schemes for speculative execution.A main result of our study is that if we can predict branch resolution with high probability (as in the Pentium Pro processor, e.g.) the Single Path scheme commonly used on modern processors is within factor of 2 from the optimal. We conclude with simulations covering several of the settings that we study.