PPoPP 2008 START Conference Manager    

Practical Experiences with Java Software Transactional Memory (poster presentation)

Evgueni Brevnov, Yuri Dolgov, Boris Kuznetsov, Dmitry Yershov, Vyacheslav Shakin, Dong-Yuan Chen, Vijay Menon and Suresh Srinivas

The 13th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP 2008)
Salt Lake City, Utah, February 20-23, 2008


Within a managed runtime system such as Java, there are various approaches to concurrency control ranging from coarse grain transactional parallelism to fine grain data-structure parallelism. Within the context of fine grain parallelism, transactional memory (both hardware and software) is emerging as an important concurrency control mechanism for controlling access to shared memory. To the developer these are exposed through some basic extension to Java. In this paper we evaluate the emerging transactional memory area by developing a set of Java transactional memory workloads and Java Software Transactional Memory system to execute them. This is one of the first papers to provide a scientific comparison of lock based and transactional memory based approaches while performing identical work for a variety of Java workloads ranging from micro-benchmarks to larger workloads. Another contribution is the detailed performance analysis of the overheads of software transactional memory and workload optimizations within a production quality open source Java Runtime system. Additionally we detail the impact of the various performance optimizations in both workloads and the underlying runtime system to improving the single thread performance and scalability.

START Conference Manager (V2.54.5)