Improving the java memory model using CRF

4Citations
Citations of this article
11Readers
Mendeley users who have this article in their library.

Abstract

This paper describes alternative memory semantics for Java programs using an enriched version of the Commit/Reconcile/Fence (CRF) memory model [16]. It outlines a set of reasonable practices for safe multithreaded programming in Java. Our semantics allow a number of optimizations such as load reordering that are currently prohibited. Simple thread-local algebraic rules express the effects of optimizations at the source or bytecode level. The rules focus on reordering source-level operations; they yield a simple dependency analysis algorithm for Java. An instruction-by-instruction translation of Java memory operations into CRF operations captures thread interactions precisely. The fine-grained synchronization of CRF means the algebraic rules are easily derived from the translation. CRF can be mapped directly to a modern architecture, and is thus a suitable target for optimizing memory coherence during code generation. © 2000 ACM.

Cite

CITATION STYLE

APA

Maessen, J. W., Arvind, & Shen, X. (2000). Improving the java memory model using CRF. SIGPLAN Notices (ACM Special Interest Group on Programming Languages), 35(10), 1–12. https://doi.org/10.1145/354222.353172

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free