Differences

This shows you the differences between two versions of the page.

Link to this comparison view

education:elastic [2009/11/02 13:47] (current)
Line 1: Line 1:
 +====== Concurrent Applications using Elastic Transactions ======
 +
 +**Master project**
 +
 +In an attempt to make the programming abstraction as general as possible, Software Transactional Memory (STM) often hampers performance. In contrast with STMs, synchronization techniques at the core of a concurrent program that targets a single specific application can be genuinely tuned to enhance concurrency and to 
 +limit contention. ​
 +
 +Elastic transactions is a variant of the transactional model.
 +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. Elastic transactions are a complementary alternative to traditional ​
 +transactions,​ particularly appealing when implementing search structures. Both forms of transactions can
 +safely be combined within the same application.
 +
 +The goal of the project is to implement a real concurrent application using [[http://​lpd.epfl.ch/​gramoli/​php/​estm.php|E-STM]],​ an STM implementing elastic and regular transactions,​ to enhance concurrency. The task is 
 +  * to propose some applications, ​
 +  * to implement some of them using the transaction API, 
 +  * to extend [[http://​lpd.epfl.ch/​gramoli/​php/​estm.php|E-STM]] with nesting of elastic transactions inside normal ones, and
 +  * to experiment them on a multicore machine.
 +
 +
 +
 +**Language:​** C
 +
 +**Responsible:​** [[http://​lpd.epfl.ch/​gramoli|Vincent Gramoli]]
 +
 +**Project intended for 1 student**