TAN Mingxing, LIU Xianhua, ZHANG Jiyu, TONG Dong, CHENG Xu. Compiler-Assisted Value Correlation for Indirect Branch Prediction[J]. Chinese Journal of Electronics, 2012, 21(3): 414-418.
Citation: TAN Mingxing, LIU Xianhua, ZHANG Jiyu, TONG Dong, CHENG Xu. Compiler-Assisted Value Correlation for Indirect Branch Prediction[J]. Chinese Journal of Electronics, 2012, 21(3): 414-418.

Compiler-Assisted Value Correlation for Indirect Branch Prediction

  • Received Date: 2010-11-01
  • Rev Recd Date: 2012-02-01
  • Publish Date: 2012-07-25
  • Indirect branch prediction is important to boost instruction-level parallelism in modern processors. Previous indirect branch predictions usually cannot achieve high performance for the ineffectiveness of correlated information. This paper proposes the Compilerassisted value correlation (CVC), a hardware/software cooperative indirect branch prediction scheme. The key is to identify effective value correlation based on program substructures. A compiler algorithm is introduced to identify the effective value correlation based on three program substructures: virtual function calls, switch-case statements and function pointer calls. The compiler-identified value correlation is transferred to the dynamic predictor by extending the instruction set architecture. At runtime, the processor relies on a low-complexity Correlated value buffer (CVB) to maintain the compiler-identified value correlation and to guide the target address prediction for those indirect branch instructions. Our evaluations show that CVC prediction can significantly improve the performance with little extra hardware support over the traditional BTB predictor and the state-of-the-art VBBI prediction.
  • loading
  • 加载中

Catalog

    通讯作者: 陈斌, bchen63@163.com
    • 1. 

      沈阳化工大学材料科学与工程学院 沈阳 110142

    1. 本站搜索
    2. 百度学术搜索
    3. 万方数据库搜索
    4. CNKI搜索

    Article Metrics

    Article views (369) PDF downloads(881) Cited by()
    Proportional views
    Related

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return