DocumentCode :
2906553
Title :
SAW: Java Synchronization Selection from Lock or Software Transactional Memory
Author :
Yamada, Yuji ; Iwasaki, Hideya ; Ugawa, Tomoharu
Author_Institution :
Dept. of Comput. Sci., Univ. of Electro-Commun., Tokyo, Japan
fYear :
2011
fDate :
7-9 Dec. 2011
Firstpage :
104
Lastpage :
111
Abstract :
To rewrite a sequential program into a concurrent one, the programmer has to enforce atomic execution of a sequence of accesses to shared memory to avoid unexpected inconsistency. There are two means of enforcing this atomicity: one is the use of lock-based synchronization and the other is the use of software transactional memory (STM). However, it is difficult to predict which one is more suitable for an application than the other without trying both mechanisms because their performance heavily depends on the application. We have developed a system named SAW that decouples the synchronization mechanism from the application logic of a Java program and enables the programmer to statically select a suitable synchronization mechanism from a lock or an STM. We introduce annotations to specify critical sections and shared objects. In accordance with the annotated source program and the programmer´s choice of a synchronization mechanism, SAW generates aspects representing the synchronization processing. By comparing the rewriting cost using SAW and that using individual synchronization mechanism directly, we show that SAW relieves the programmer´s burden. Through several benchmarks, we demonstrate that SAW is an effective way of switching synchronization mechanisms according to the characteristics of each application.
Keywords :
Java; shared memory systems; synchronisation; transaction processing; Java synchronization selection; atomic execution; lock-based synchronization; sequential program rewriting; shared memory; software transactional memory; synchronization aspect weaving; unexpected inconsistency avoidance; Cloning; Java; Libraries; Software; Surface acoustic waves; Synchronization; Weaving; Java; aspect; lock; software transactional memory; synchronization;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Systems (ICPADS), 2011 IEEE 17th International Conference on
Conference_Location :
Tainan
ISSN :
1521-9097
Print_ISBN :
978-1-4577-1875-5
Type :
conf
DOI :
10.1109/ICPADS.2011.112
Filename :
6121266
Link To Document :
بازگشت