Maria Isabel Catarino Couceiro

Co-advisor: P. Romano

Autonomic Replicated Software Transactional Memory

Thesis submitted for the PhD in Computer Science and Engineering, Instituto Superior Técnico (IST), Universidade de Lisboa


Software Transactional Memory (STM) systems have emerged as a powerful paradigm to develop concurrent applications. By sparing the programmer from the burden of explicitly dealing with low-level concurrency mechanisms, STMs increase the code reliability and shorten the development time.

For scalability and fault-tolerance reasons, it is relevant to build distributed implementations of this paradigm allowing the deployment of transactional systems in environments such as the cloud. Replication clearly plays a role of paramount importance in these platforms, as it represents the key mechanism to ensure data durability in face of unavoidable node failures. However, there is a myriad of techniques to maintain the consistency of the replicated data, each performing differently according to the workload and there is no "one-size fits all" technique that achieves optimal performance in any scenario. In addition, due to the growing complexity of these systems and unpredictability of the workloads, manual management becomes a complex, tiresome and error-prone task.

To circumvent these issues, this thesis investigates an autonomic architecture for the replication of STMs that supports the change of its replica consistency protocol according to the workload, in order to provide the best throughput possible, using techniques that do not require human intervention. First, it studies the use of machine learning to support the autonomic management of the replica consistency protocols. Then, the thesis presents a solution that relies on two machine learning approaches to drive the adaptation in a distributed STM that is able to switch between certification-based protocols. Finally, it proposes a framework for autonomic distributed STMs that supports multiple replica consistency protocols and two switching mech- anisms: one forcing the system to stop processing transactions while the protocol switch is in progress, and another which allows the programmer to define how the two switching protocols can co-exist during the transition period.

Selected Publications

Autonomic Replicated Software Transactional Memory.
Maria Isabel Catarino Couceiro
PhD Thesis. Instituto Superior Técnico, Universidade de Lisboa.
July, 2015.
Available BibTeX, PhD Thesis.
Chasing the Optimum in Replicated In-memory Transactional Platforms via Protocol Adaptation.
M. Couceiro, P. Ruivo, P. Romano, L. Rodrigues.
In IEEE Transactions on Parallel and Distributed Systems
Digital Object Identifier no. 10.1109/TPDS.2014.2363460
Chasing the Optimum in Replicated In-memory Transactional Platforms via Protocol Adaptation.
M. Couceiro, P. Ruivo, P. Romano, L. Rodrigues.
Proceedings of the 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks, Budapest, Hungary, June 2013.
Available BibTeX, abstract (html).
PolyCert: Polymorphic Self-Optimizing Replication for In-Memory Transactional Grids.
M. Couceiro, P. Romano and L. Rodrigues.
In Proceedings of the ACM/IFIP/USENIX 12th International Middleware Conference, Lisboa, Portugal, December 2011.
Available BibTeX, abstract (html) and report (pdf).
A Machine Learning Approach to Performance Prediction of Total Order Broadcast Protocols.
M. Couceiro, Paolo Romano and L. Rodrigues.
In proceedings 4th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO), Budapest, Hungary, September 2010
Available BibTeX, abstract (html) and report (pdf).

Luís Rodrigues