We present Selective Multi-Versioning (SMV), a new STM that reduces the number of aborts, especially those of long read-only transactions. SMV keeps old object versions as long as they might be useful for some transaction to read. It is able to do so while still allowing reading transactions to be invisible by relying on automatic garbage collection to dispose of obsolete versions.SMV is most suitable for read-dominated workloads, for which it achieves much better performance than previous solutions. It has an up to ×11 throughput improvement over a single-version STM and more than a two-fold improvement over an STM keeping a constant number of versions per object. We show that unlike STMs keeping a constant number of versions, SMV operates successfully even in systems with limited memory.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.