Augmenting Transactional Memory with the Future Abstraction
Time: Thu 2020-10-22 09.00
Location: zoom link for online defence (English)
Subject area: Computer Science
Doctoral student: Jingna Zeng , Programvaruteknik och datorsystem, SCS
Opponent: Professor Keijo Heljanko, Department of Computer Science, Helsinki Institute for Information Technology
Supervisor: Professor Seif Haridi, Programvaruteknik och datorsystem, SCS; Associate Professor Paolo Romano, Instituto Superior Técnico, Universidade Técnica de Lisboa; Professor Vladimir Vlassov, Programvaruteknik och datorsystem, SCS
The advent of multicore systems spurred great interest in Transactional Memory (TM). TM is a parallel programming paradigm that coordinates concurrent threads by incorporating transactions into programming languages. TM shifts the burden of coordinating and synchronizing concurrent threads from programmers to the compiler, run-time environment, or even hardware.
This dissertation aims at filling precisely this relevant gap in the literature by investigating how to reconcile the TM and the future abstractions.
This limitation is tackled by introducing a novel abstraction, called transactional futures,i.e., transactions that execute wrapped within futures and that are spawned and evaluated by other transactions or transactional futures.
The semantics of transactional futures describes the allowed behaviors with regards to properties such as atomicity and isolation. Multiple semantics are defined, and the trade-offs between ease of use and efficiency are explored for each. Based on these semantics, this dissertation presents two novel TM implementations. The efficiency of the proposed transactional futures abstraction is evaluated in a real system using the TM implementations.
Finally, this dissertation addresses the problem of self-tuning the parallelism degree in TM systems that support intra-transaction parallelism. This goal is achieved by presenting an online learning system that combines model-driven (Sequential Based Bayesian Optimization) and local searches techniques, as well as adaptive performance monitoring techniques.