Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/517554.825770acmconferencesArticle/Chapter ViewAbstractPublication PagespactConference Proceedingsconference-collections
Article

A Unified Compiler Framework for Control and Data Speculation

Published: 15 October 2000 Publication History

Abstract

Control speculation refers to the execution of instructions before it has been determined that they would be executed in the normal flow of execution. Data speculation refers to the execution of instructions with potentially incorrect operand values, and a typical example is to execute a load before its preceding aliasing stores. Both types of speculation are effective techniques to enrich instruction level parallelism, but the research work for these two types of speculation have remained largely independent so far and the required compiler support has not been well studied. This paper proposes a unified compiler framework to exploit both control and data speculation and provides an in-depth discussion of various compilation issues. The adopted recovery mechanism guarantees the original program semantics including exceptions fully recoverable from a mis-speculation. Cascaded speculation and predication are also addressed. We demonstrate the effectiveness of the compiler optimization techniques for control and data speculation in terms of run-time performance improvements and code size increases through experimental results.

Cited By

View all
  • (2013)Vectorization past dependent branches through speculationProceedings of the 22nd international conference on Parallel architectures and compilation techniques10.5555/2523721.2523769(353-362)Online publication date: 7-Oct-2013
  • (2009)Techniques for Region-Based Register AllocationProceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO.2009.31(147-156)Online publication date: 22-Mar-2009
  • (2009)A Practical Approach to Hardware Performance Monitoring Based Dynamic Optimizations in a Production JVMProceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO.2009.13(190-199)Online publication date: 22-Mar-2009
  • Show More Cited By
  1. A Unified Compiler Framework for Control and Data Speculation

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    PACT '00: Proceedings of the 2000 International Conference on Parallel Architectures and Compilation Techniques
    October 2000
    ISBN:0769506224

    Sponsors

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 15 October 2000

    Check for updates

    Qualifiers

    • Article

    Conference

    PACT00
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 121 of 471 submissions, 26%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 15 Oct 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2013)Vectorization past dependent branches through speculationProceedings of the 22nd international conference on Parallel architectures and compilation techniques10.5555/2523721.2523769(353-362)Online publication date: 7-Oct-2013
    • (2009)Techniques for Region-Based Register AllocationProceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO.2009.31(147-156)Online publication date: 22-Mar-2009
    • (2009)A Practical Approach to Hardware Performance Monitoring Based Dynamic Optimizations in a Production JVMProceedings of the 7th annual IEEE/ACM International Symposium on Code Generation and Optimization10.1109/CGO.2009.13(190-199)Online publication date: 22-Mar-2009
    • (2005)Sentinel PREProceedings of the international symposium on Code generation and optimization10.1109/CGO.2005.32(328-338)Online publication date: 20-Mar-2005
    • (2005)A General Compiler Framework for Speculative Optimizations Using Data Speculative Code MotionProceedings of the international symposium on Code generation and optimization10.1109/CGO.2005.1(280-290)Online publication date: 20-Mar-2005
    • (2004)A Compiler Framework for Recovery Code Generation in General Speculative OptimizationsProceedings of the 13th International Conference on Parallel Architectures and Compilation Techniques10.5555/1025127.1025993(17-28)Online publication date: 29-Sep-2004
    • (2004)An overview of the open research compilerProceedings of the 17th international conference on Languages and Compilers for High Performance Computing10.1007/11532378_3(17-31)Online publication date: 22-Sep-2004
    • (2003)Speculative register promotion using Advanced Load Address Table (ALAT)Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization10.5555/776261.776275(125-134)Online publication date: 23-Mar-2003
    • (2003)A compiler framework for speculative analysis and optimizationsProceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation10.1145/781131.781164(289-299)Online publication date: 9-Jun-2003
    • (2003)A compiler framework for speculative analysis and optimizationsACM SIGPLAN Notices10.1145/780822.78116438:5(289-299)Online publication date: 9-May-2003
    • Show More Cited By

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media