skip to main content
10.1145/2967938.2971466acmconferencesArticle/Chapter ViewAbstractPublication PagespactConference Proceedingsconference-collections
abstract

Student Research Poster: Software Out-of-Order Execution for In-Order Architectures

Published:11 September 2016Publication History

ABSTRACT

Processor cores are divided into two categories: fast and power-hungry out-of-order processors, and efficient, but slower in-order processors. To achieve high performance with low-energy budgets, this proposal aims to deliver out-of-order processing by software (SWOOP) on in-order architectures.

Problem: A primary cause for slowdown in in-order processors is last-level cache misses (caused by difficult to predict data-dependent loads), resulting in cores stalling.

Solution: As loads are non-blocking operations, independent instructions are scheduled to run before the loads return. We execute critical load instructions earlier in the program for a three-fold benefit: increasing memory and instruction level parallelism, and hiding memory latency.

Related work: Some instruction scheduling policies attempt to hide memory latency, but scheduling is confined by basic block limits and register pressure. Software pipelining is restricted by dependencies between instructions and decoupled access-execute (DAE) suffers from address re-computation. Unlike EPIC (evolved from VLIW), SWOOP does not require hardware support for predicated execution, speculative loads and their verification, delayed exception handling, memory disambiguation etc.

References

  1. A. Jimborean et al. Fix the code. don't tweak the hardware: A new compiler approach to voltage-frequency scaling. In CGO, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. J. L. Hennessy and D. A. Patterson. Computer Architecture: A Quantitative Approach, Appendix H. Morgan Kaufmann Publishers Inc., 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Lam. Software pipelining: An effective scheduling technique for VLIW machines. In PLDI, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Student Research Poster: Software Out-of-Order Execution for In-Order Architectures

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        PACT '16: Proceedings of the 2016 International Conference on Parallel Architectures and Compilation
        September 2016
        474 pages
        ISBN:9781450341219
        DOI:10.1145/2967938

        Copyright © 2016 Owner/Author

        Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 11 September 2016

        Check for updates

        Qualifiers

        • abstract

        Acceptance Rates

        PACT '16 Paper Acceptance Rate31of119submissions,26%Overall Acceptance Rate121of471submissions,26%

        Upcoming Conference

        PACT '24
        International Conference on Parallel Architectures and Compilation Techniques
        October 14 - 16, 2024
        Southern California , CA , USA
      • Article Metrics

        • Downloads (Last 12 months)2
        • Downloads (Last 6 weeks)0

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader