Types for relaxed memory models

  • Authors:
  • Matthew Goto;Radha Jagadeesan;Corin Ptcher;James Riely

  • Affiliations:
  • DePaul University, Chicago, IL, USA;DePaul University, Chicago, IL, USA;DePaul University, Chicago, IL, USA;DePaul University, Chicago, IL, USA

  • Venue:
  • TLDI '12 Proceedings of the 8th ACM SIGPLAN workshop on Types in language design and implementation
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Multicore computers implementing weak memory models are mainstream, yet type-based analyses of these models remain rare. We help fill this gap. We not only prove the soundness of a type system for a weak execution model, but we also show that interesting properties of that model can be embedded in the types themselves. We argue that correspondence assertions can be used in a programming discipline that captures happens-before relationships, which are the basis for reasoning about weak memory in Java. This programming discipline is flexible and can be statically enforced. We present several examples from java.util.concurrent and prove the static semantics sound with respect to an execution model based on Java's memory model.