2003 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS'03)
Performance potentials of compiler-directed data speculation
Austin, TX, USA
March 06-March 08
ISBN: 0-7803-7756-7
Youfeng Wu, Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA
Li-Ling Chen, Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA
R. Ju, Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA
J. Fang, Programming Syst. Res. Lab., Intel Labs., Santa Clara, CA, USA
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.
Citation:
Youfeng Wu, Li-Ling Chen, R. Ju, J. Fang, "Performance potentials of compiler-directed data speculation," ispass, pp.22-31, 2003 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS'03), 2003