Traditionally, non-blocking data structures provide linearizable operations, but these operations are not composable. Transactional data structures can perform a sequence of operations that appears to execute atomically, which facilitates modular design and software reuse. TLDS encompasses: 1) A scalable methodology for transforming non-blocking data structures into transactional containers; 2) A library of transactional data structures, and 3) A tool to validate their correctness.
Funding
SI2-SSE: TLDS: Transactional Lock-Free Data Structures
Directorate for Computer & Information Science & Engineering