A real system evaluation of hardware atomicity for software speculation

Naveen Neelakantam, David R. Ditzel, Craig Zilles

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

In this paper we evaluate the atomic region compiler abstraction by incorporating it into a commercial system. We find that atomic regions are simple and intuitive to integrate into an x86 binary-translation system. Furthermore, doing so trivially enables additional optimization opportunities beyond that achievable by a high-performance dynamic optimizer, which already implements superblocks. We show that atomic regions can suffer from severe performance penalties if misspeculations are left uncontrolled, but that a simple software control mechanism is sufficient to reign in all detrimental side-effects. We evaluate using full reference runs of the SPEC CPU2000 integer benchmarks and find that atomic regions enable up to a 9% (3% on average) improvement beyond the performance of a tuned product. These performance improvements are achieved without any negative side effects. Performance side effects such as code bloat are absent with atomic regions; in fact, static code size is reduced. The hardware necessary is synergistic with other needs and was already available on the commercial product used in our evaluation. Finally, the software complexity is minimal as a single developer was able to incorporate atomic regions into a sophisticated 300,000 line code base in three months, despite never having seen the translator source code beforehand.

Original languageEnglish (US)
Title of host publicationASPLOS XV - 15th International Conference on Architectural Support for Programming Languages and Operating Systems
Pages29-38
Number of pages10
DOIs
StatePublished - May 19 2010
Event15th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS XV - Pittsburgh, PA, United States
Duration: Mar 13 2010Mar 17 2010

Publication series

NameInternational Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS

Other

Other15th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS XV
CountryUnited States
CityPittsburgh, PA
Period3/13/103/17/10

Keywords

  • Atomicity
  • Checkpoint
  • Dynamic translation
  • Optimization
  • Speculation

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Hardware and Architecture

Fingerprint Dive into the research topics of 'A real system evaluation of hardware atomicity for software speculation'. Together they form a unique fingerprint.

  • Cite this

    Neelakantam, N., Ditzel, D. R., & Zilles, C. (2010). A real system evaluation of hardware atomicity for software speculation. In ASPLOS XV - 15th International Conference on Architectural Support for Programming Languages and Operating Systems (pp. 29-38). (International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS). https://doi.org/10.1145/1736020.1736026