Two Ways of Speeding Up Transactional Memory Algorithms
Speaker(s) : Vincent Gramoli
Multicore architecture is becoming the norm in manufactured chipsets, however, concurrent programming remains a difficult task. Transactional memory is a recent programming paradigm that aims at making concurrent programs almost as simple as sequential ones. More precisely, it acts as a black box by hiding all synchronizations from the programmer's standpoint. Although numerous Software Transactional Memories (STMs) have been proposed this past few years, they are multiple research directions that need to be explored to enhance their efficiency. This talk will discuss two possible directions.
First, we present the Input Acceptance of STMs as their ability to commit transactions. Interestingly, existing STMs delay or abort a transaction as soon as it presents a risk to violate consistency. Both alternatives are costly and should be avoided if consistency is actually preserved. We upper-bound the input acceptance of six existing STMs and propose, SSTM, a new serializable STM with higher input acceptance.
Second, we present elastic transactions a variant of the transactional model that improves concurrency. Upon conflict detection, an elastic transaction might drop what it did so far within a separate transaction that immediately commits, and initiate a new transaction which might itself be elastic. Our experiments on four common micro-benchmarks indicate that elastic transactions are particularly efficient when implementing search structures.
Vincent Gramoli is a postdoc at EPFL in the LPD laboratory, and at University of Neuchâtel, in Switzerland. His research interests span areas of distributed algorithms and distributed systems. He graduated from Université Paris 7 and Université Paris 11 before obtaining his PhD from Université Rennes 1 on the topic of large-scale dynamic systems. Prior to joining EPFL and UniNE, he has been affiliated with University of Connecticut, IRISA, INRIA Saclay, and Cornell University. His recent research achievements are related to Software Transactional Memory.
Lamia.Benmouffok (at) null