Dynamic schemes for speculative execution of code

被引:0
|
作者
Raghavan, P
Shachnai, H
Yaniv, M
机构
[1] Ver Inc, Sunnyvale, CA 94089 USA
[2] Technion Israel Inst Technol, Dept Comp Sci, IL-32000 Haifa, Israel
关键词
pipeline processors; speculative execution; branch prediction; on-line algorithms;
D O I
10.1016/S0166-5316(02)00229-8
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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 modem processors is within factor of 2 from the optimal. We conclude with simulations covering several of the settings that we study. (C) 2002 Elsevier Science B.V. All rights reserved.
引用
收藏
页码:125 / 142
页数:18
相关论文
共 50 条
  • [1] Dynamic schemes for speculative execution of code
    Raghavan, P
    Shachnai, H
    Yaniv, M
    SIXTH INTERNATIONAL SYMPOSIUM ON MODELING, ANALYSIS AND SIMULATION OF COMPUTER AND TELECOMMUNICATION SYSTEMS, PROCEEDINGS, 1998, : 309 - 314
  • [2] RETBLEED: Arbitrary Speculative Code Execution with Return Instructions
    Wikner, Johannes
    Razavi, Kaveh
    PROCEEDINGS OF THE 31ST USENIX SECURITY SYMPOSIUM, 2022, : 3825 - 3842
  • [3] Compiler support for dynamic speculative pre-execution
    Ro, WW
    Gaudiot, JL
    INTERACT-7 2003: SEVENTH WORKSHOP ON INTERACTION BETWEEN COMPILERS AND COMPUTER ARCHITECTURES, PROCEEDINGS, 2003, : 14 - 23
  • [4] Pulse: a dynamic deadlock detection mechanism using speculative execution
    Li, T
    Ellis, CS
    Lebeck, AR
    Sorin, DJ
    USENIX ASSOCIATION PROCEEDINGS OF THE GENERAL TRACK: 2005 UNENIX ANNUAL TECHNICAL CONFERENCE, 2005, : 31 - 44
  • [5] Code Bones: Fast and Flexible Code Generation for Dynamic and Speculative Polyhedral Optimization
    Caamano, Juan Manuel Martinez
    Wolff, Willy
    Clauss, Philippe
    EURO-PAR 2016: PARALLEL PROCESSING, 2016, 9833 : 225 - 237
  • [6] Dynamic Reverse Code Generation for Backward Execution
    Lee, Jooyong
    ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2007, 174 (04) : 37 - 54
  • [7] Dynamic Scheduling for Speculative Execution to Improve MapReduce Performance in Heterogeneous Environment
    Jung, Hyungjae
    Nakazato, Hidenori
    2014 IEEE 34TH INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS WORKSHOPS (ICDCSW), 2014, : 119 - 124
  • [8] An SSA-based Algorithm for Optimal Speculative Code Motion under an Execution Profile
    Zhou, Hucheng
    Chen, Wenguang
    Chow, Fred
    PLDI 11: PROCEEDINGS OF THE 2011 ACM CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2011, : 98 - 108
  • [9] An SSA-based Algorithm for Optimal Speculative Code Motion under an Execution Profile
    Zhou, Hucheng
    Chen, Wenguang
    Chow, Fred
    ACM SIGPLAN NOTICES, 2011, 46 (06) : 98 - 108
  • [10] A theory of nested speculative execution
    Tapus, Cristian
    Hickey, Jason
    COORDINATION MODELS AND LANGUAGES, PROCEEDINGS, 2007, 4467 : 151 - +