TY - GEN
T1 - A uniform transactional execution environment for Java
AU - Ziarek, Lukasz
AU - Welc, Adam
AU - Adl-Tabatabai, Ali Reza
AU - Menon, Vijay
AU - Shpeisman, Tatiana
AU - Jagannathan, Suresh
PY - 2008
Y1 - 2008
N2 - Transactional memory (TM) has recently emerged as an effective tool for extracting fine-grain parallelism from declarative critical sections. In order to make STM systems practical, significant effort has been made to integrate transactions into existing programming languages. Unfortunately, existing approaches fail to provide a simple implementation that permits lock-based and transaction-based abstractions to coexist seamlessly. Because of the fundamental semantic differences between locks and transactions, legacy applications or libraries written using locks can not be transparently used within atomic regions. To address these shortcomings, we implement a uniform transactional execution environment for Java programs in which transactions can be integrated with more traditional concurrency control constructs. Programmers can run arbitrary programs that utilize traditional mutual-exclusion-based programming techniques, execute new programs written with explicit transactional constructs, and freely combine abstractions that use both coding styles.
AB - Transactional memory (TM) has recently emerged as an effective tool for extracting fine-grain parallelism from declarative critical sections. In order to make STM systems practical, significant effort has been made to integrate transactions into existing programming languages. Unfortunately, existing approaches fail to provide a simple implementation that permits lock-based and transaction-based abstractions to coexist seamlessly. Because of the fundamental semantic differences between locks and transactions, legacy applications or libraries written using locks can not be transparently used within atomic regions. To address these shortcomings, we implement a uniform transactional execution environment for Java programs in which transactions can be integrated with more traditional concurrency control constructs. Programmers can run arbitrary programs that utilize traditional mutual-exclusion-based programming techniques, execute new programs written with explicit transactional constructs, and freely combine abstractions that use both coding styles.
UR - https://www.scopus.com/pages/publications/49049089777
U2 - 10.1007/978-3-540-70592-5_7
DO - 10.1007/978-3-540-70592-5_7
M3 - Conference contribution
SN - 3540705910
SN - 9783540705918
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 129
EP - 154
BT - ECOOP 2008 - Object-Oriented Programming - 22nd European Conference, Proceedings
T2 - 22nd European Conference on Object-Oriented Programming, ECOOP 2008
Y2 - 7 July 2008 through 11 July 2008
ER -