Performance evaluation of memory consistency models for shared-memory multiprocessors
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
The SPARC architecture manual (version 9)
The SPARC architecture manual (version 9)
An evaluation of memory consistency models for shared-memory systems with ILP processors
Proceedings of the seventh international conference on Architectural support for programming languages and operating systems
Pattern languages of program design 3
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Improving the Java memory model using CRF
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Java consistency: nonoperational characterizations for Java memory behavior
ACM Transactions on Computer Systems (TOCS)
Core semantics of multithreaded Java
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande
Parallel Computer Architecture: A Hardware/Software Approach
Parallel Computer Architecture: A Hardware/Software Approach
The Java Language Specification
The Java Language Specification
Specifying multithreaded Java semantics for program verification
Proceedings of the 24th International Conference on Software Engineering
Specifying Java thread semantics using a uniform memory model
JGI '02 Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande
Concurrency and Computation: Practice & Experience - 2002 ACM Java Grande—ISCOPE Conference Part I
Hi-index | 0.00 |
The semantics of Java multithreading dictates all possible behaviors that a multithreaded Java program can exhibit on any platform. This is called the Java Memory Model (JMM) and describes the allowed reorderings among the memory operations in a thread. However, multiprocessor platforms traditionally have memory consistency models of their own. In this paper, we study the interaction between the JMM and the multiprocessor memory consistency models. In particular, memory barriers may have to be inserted to ensure that the multiprocessor execution of a multi-threaded Java program respects the JMM. We study the impact of these additional memory barriers on program performance. Our experimental results indicate that the performance gain achieved by relaxed hardware memory consistency models far exceeds the performance degradation due to the introduction of JMM.