RIMP: runtime implicit predication

  • Authors:
  • YuXing Tang;Kun Deng;XiaoDong Wang;Yong Dou;XingMing Zhou

  • Affiliations:
  • National Lab for Parallel and distributed Processing, China;National Lab for Parallel and distributed Processing, China;National Lab for Parallel and distributed Processing, China;National Lab for Parallel and distributed Processing, China;National Lab for Parallel and distributed Processing, China

  • Venue:
  • APPT'05 Proceedings of the 6th international conference on Advanced Parallel Processing Technologies
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

If-conversion and predicated execution are widely adopted to eliminate branch misprediction penalty. Previous predication execution depends on compiler to generate explicit predicated instructions. In this paper, a trace-based predicate mechanism named RIMP (Runtime IMplicit Predication) is discussed. The candidates of if-conversion will be identified during dynamic execution. Conventional trace cache has been modified to store RIMP traces, which include instructions both from fall-through and target block following the conditional branch. Hardware extension will add predication to RIMP trace automatically. With the help of RIMP, legacy applications can benefit from predication mechanism without recompiling source code. Simulation of RIMP implementation under diverse microarchitecture configurations is presented in the paper. Results have shown promising performance improvement. In general, RIMP with 64kB trace storage delivers an average 10.3% IPC improvement while actually speeding up the execution time by over 7%.