Journal article
Micro-transactions for concurrent data structures : MICRO-TRANSACTIONS FOR CONCURRENT DATA STRUCTURES
Transactional memory is a promising technique for enforcing disciplined access to shared data in a multiprocessor system. Transactional memory simplifies the implementation of a variety of concurrent data structures. In this paper, we study the benefits of a modest, real-time aware, hardware implementation of transactional memory that we call micro-transactions.
In particular, we argue that hardware support for micro-transactions allows us to efficiently implement certain data structures. Those data structures are difficult to realize with the atomic operations provided by stock hardware and provide real-time guarantees for those operations. Our main implementation platform is the Java Optimized Processor system, a field-programmable gate array (FPGA) implementation of the Java virtual machine, optimized for real-time Java.
We report on the performance of data structures implemented with locks, atomic instructions, and micro-transactions. Our results suggest that transactional memory is an interesting alternative to traditional concurrency control mechanisms.
Language: | English |
---|---|
Year: | 2013 |
Pages: | 2252-2268 |
ISSN: | 15320634 and 15320626 |
Types: | Journal article |
DOI: | 10.1002/cpe.2985 |
ORCIDs: | Schoeberl, Martin |