An axiomatic memory model for POWER multiprocessors

  • Authors:
  • Sela Mador-Haim;Luc Maranget;Susmit Sarkar;Kayvan Memarian;Jade Alglave;Scott Owens;Rajeev Alur;Milo M. K. Martin;Peter Sewell;Derek Williams

  • Affiliations:
  • University of Pennsylvania;INRIA Rocquencourt-Paris, France;University of Cambridge;University of Cambridge;University of Oxford;University of Cambridge;University of Pennsylvania;University of Pennsylvania;University of Cambridge;IBM, Austin

  • Venue:
  • CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The growing complexity of hardware optimizations employed by multiprocessors leads to subtle distinctions among allowed and disallowed behaviors, posing challenges in specifying their memory models formally and accurately, and in understanding and analyzing the behavior of concurrent software. This complexity is particularly evident in the IBM® Power Architecture®, for which a faithful specification was published only in 2011 using an operational style. In this paper we present an equivalent axiomatic specification, which is more abstract and concise. Although not officially sanctioned by the vendor, our results indicate that this axiomatic specification provides a reasonable basis for reasoning about current IBM® POWER® multiprocessors. We establish the equivalence of the axiomatic and operational specifications using both manual proof and extensive testing. To demonstrate that the constraint-based style of axiomatic specification is more amenable to computer-aided verification, we develop a SAT-based tool for evaluating possible outcomes of multi-threaded test programs, and we show that this tool is significantly more efficient than a tool based on an operational specification.