Performance potentials of compiler-directed data speculation

  • Authors:
  • Youfeng Wu;Li-Ling Chen;R. Ju;J. Fang

  • Affiliations:
  • Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA;Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA;Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA;Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA

  • Venue:
  • ISPASS '03 Proceedings of the 2003 IEEE International Symposium on Performance Analysis of Systems and Software
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Compiler-directed data speculation has been implemented on Itanium systems to allow for a compiler to move a load across a store even when the two operations are potentially aliased This not only breaks data dependency to reduce critical path length, but also allows a load to be scheduled far apart from its uses to hide cache miss latencies. However, the effectiveness of data speculation is affected by the sophistication of alias analysis technique as well as the aggressiveness of the instruction scheduler. In general, the more sophisticated is the alias analysis technique, the less performance gain is from data speculation, and the more aggressive is the instruction scheduler, the more opportunity is for data speculation. In this paper we evaluate in various scenarios the performance potentials of data speculation for SPEC2000C benchmarks. For each scenario, we determine the performance contributions of data speculation due to both critical path reduction and cache miss latency reduction. We also show interesting statistics about the effects of scheduling constraints, the percentage of critical dependencies, the impacts of cache miss latencies, and the distances between the load locations before and after data speculation.