Transactional memory (TM) is expected to become a widely used parallel programming paradigm for multi-core architectures. To reach this goal, we need tools that do not only help develop TMs, but also test them and evaluate them on a wide range of workloads. In this paper, we introduce a novel tool, TMunit, to assist researchers in designing and optimizing TMs. TMunit provides a domain-specific language for specifying workloads, and tests the performance and semantics of TMs. TMunit is freely available online. It comes with a test suite that compares the performance of TMs and explain their differences using semantics tests that outlines behavioral characteristics.
David Atienza Alonso, Marina Zapater Sancho, Luis Maria Costero Valero, Darong Huang, Ali Pahlevan
David Atienza Alonso, Giovanni Ansaloni, Alireza Amirshahi