Abstract
We present two new algorithms for contention management in transactional memory, the deterministic algorithm CommitRounds and the randomized algorithm RandomizedRounds. Our randomized algorithm is efficient: in some notorious problem instances (e.g., dining philosophers) it is exponentially faster than prior work from a worst case perspective. Both algorithms are (i) local and (ii) starvation-free. Our algorithms are local because they do not use global synchronization data structures (e.g., a shared counter), hence they do not introduce additional resource conflicts which eventually might limit scalability. Our algorithms are starvation-free because each transaction is guaranteed to complete. Prior work sometimes features either (i) or (ii), but not both. To analyze our algorithms (from a worst case perspective) we introduce a new measure of complexity that depends on the number of actual conflicts only. In addition, we show that even a non-constant approximation of the length of an optimal (shortest) schedule of a set of transactions is NP-hard – even if all transactions are known in advance and do not alter their resource requirements. Furthermore, in case the needed resources of a transaction varies over time, such that for a transaction the number of conflicting transactions increases by a factor k , the competitive ratio of any contention manager is Ω(k) for \(k<\sqrt{m}\), where m denotes the number of cores.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Attiya, H., Epstein, L., Shachnai, H., Tamir, T.: Transactional contention management as a non-clairvoyant scheduling problem. In: PODC (2006)
Damron, P., Fedorova, A., Lev, Y., Luchangco, V., Moir, M., Nussbaum, D.: Hybrid transactional memory. In: ASPLOS (2006)
Dice, D., Shavit, N.: Understanding Tradeoffs in Software Transactional Memory. Symp. on Code Generation and Optimization (2007)
Eidenbenz, R., Wattenhofer, R.: Good Programming in Transactional Memory: Game Theory Meets Multicore Architecture. In: ISAAC (2009)
Guerraoui, R., Herlihy, M., Pochon, B.: Toward a theory of transactional contention managers. In: PODC (2005)
Harris, T., Fraser, K.: Language support for lightweight transactions. In: OOPSLA Conference (2003)
Herlihy, M., Luchangco, V., Moir, M., Scherer, W.: Software transactional memory for dynamic-sized data structures. In: PODC (2003)
Herlihy, M., Moss, J.: Transactional Memory: Architectural Support For Lock-free Data Structures. In: Symp. on Computer Architecture (1993)
Kuhn, F.: Weak Graph Coloring: Distributed Algorithms and Applications. In: SPAA (2009)
Ramadan, H., Rossbach, C., Porter, D., Hofmann, O., Bhandari, A., Witchel, E.: MetaTM/TxLinux: transactional memory for an operating system. In: Symp. on Computer Architecture (2007)
Riegel, T., Fetzer, C., Felber, P.: Time-based Transactional Memory with Scalable Time Bases. In: Parallel Algorithms and Architectures (2007)
Scherer, W., Scott, M.: Advanced contention management for dynamic software transactional memory. In: PODC (2005)
Schneider, J., Wattenhofer, R.: A Log-Star Distributed Maximal Independent Set Algorithm for Growth-Bounded Graphs. In: PODC (2008)
Schneider, J., Wattenhofer, R.: Bounds On Contention Management Algorithms. TIK Technical Report 311 (2009), ftp://ftp.tik.ee.ethz.ch/pub/publications/TIK-Report-311.pdf
Schneider, J., Wattenhofer, R.: Coloring Unstructured Wireless Multi-Hop Networks. In: PODC (2009)
Shavit, N., Touitou, D.: Software transactional memory. Distributed Computing 10 (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Schneider, J., Wattenhofer, R. (2009). Bounds on Contention Management Algorithms. In: Dong, Y., Du, DZ., Ibarra, O. (eds) Algorithms and Computation. ISAAC 2009. Lecture Notes in Computer Science, vol 5878. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10631-6_46
Download citation
DOI: https://doi.org/10.1007/978-3-642-10631-6_46
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-10630-9
Online ISBN: 978-3-642-10631-6
eBook Packages: Computer ScienceComputer Science (R0)