Composability of transactions using closed nesting in software transactional memory

Kumar, Ranjeet (2016) Composability of transactions using closed nesting in software transactional memory. Masters thesis, Memorial University of Newfoundland.

[img] [English] PDF - Accepted Version
Available under License - The author retains copyright ownership and moral rights in this thesis. Neither the thesis nor substantial extracts from it may be printed or otherwise reproduced without the author's permission.

Download (1057Kb)

Abstract

With the boom in the development of multi-core machines and the development of multi-threaded applications as such, concurrent programming has gained increasingly more significance than ever before. However, concurrent programming using traditional methods such as locks, mutex and monitors is not easy, as they require a programmer to predetermine the lock management scheme for each case. This approach is error-prone. Besides, it is very difficult to trace the bugs in such programs. Software transactional memory (STM) is a new technology that solves this problem by offering automatic management of locks. As such, in recent years STM has gained a lot of attention in both industry and academia. However, most of the work in STM is restricted to non-nested transactions, while the domain of nested transactions remains largely unexplored. One of the striking features of STM is its ability to support composability of transactions through three types of nesting, namely at nesting, closed nesting and open nesting. In this thesis, we study the complexities involved in designing STM protocols for closed nested transactions. To this end, we extend Imbs and Raynal's STM protocol [1], which is designed for non-nested transactions, to closed nested transactions. We propose several extensions, employing different modes of concurrency for subtransactions in the transaction tree : (i) serial execution (no concurrency) of subtransactions at each level; (ii) pessimistic concurrency control at all nodes; (iii) optimistic concurrency control at all nodes; and (iv) a mixture of optimistic concurrency control at some nodes while pessimistic concurrency control at other nodes in the same transaction tree.

Item Type: Thesis (Masters)
URI: http://research.library.mun.ca/id/eprint/12417
Item ID: 12417
Additional Information: Includes bibliographical references (pages 178-180).
Keywords: Transactions, Composability, Closed nesting, Software transactional memory, Concurrent programming
Department(s): Science, Faculty of > Computer Science
Date: August 2016
Date Type: Submission
Library of Congress Subject Heading: Parallel programming; Transaction systems (Computer systems); Computer multitasking

Actions (login required)

View Item View Item

Downloads

Downloads per month over the past year

View more statistics