Abstract
We extend an existing analytic framework for modeling software transactional memory (STM) to an optimistic STM variant in which write locks are acquired lazily. Lazy locking requires a different calculation of the transition probabilities of the underlying discrete-time Markov chain (DTMC).
Based on few relevant input parameters, like the number of concurrent transactions, the transaction lengths, the share of writing operations and the number of accessible transactional data ojects, a fixed-point iteration over closed-form analytic expressions delivers key STM performance measures, e.g., the mean number of transaction restarts and the mean number of processed steps of a transaction.
In particular, the analytic model helps to predict STM performance trends as the number of cores on multi-processors increases, but other performance trends provide additional insight into system behavior.
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
Herlihy, M., Moss, J.E.B.: Transactional memory: Architectural support for lock-free data structures. In: Proc. 20th Annual Int. Symposium on Computer Architecture (ISCA 1993), pp. 289–300. ACM Press, New York (1993)
Larus, J., Rajwar, R.: Transactional Memory. Morgan & Claypool Publishers, San Francisco (2007)
Herlihy, M., Luchangco, V., Moir, M., Scherer, W.N.: Software transactional memory for dynamic-sized data structures. In: Proc. 22nd ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC 2003), Boston, MA, USA, pp. 92–101 (2003)
Shavit, N., Touitou, D.: Software transactional memory. In: Proc. 14th ACM/SIGACT-SIGOPTS Symposium on Principles of Distributed Computing (PODC 1995), Ottawa, Canada, pp. 204–213 (1995)
Saha, B., Adl-Tabatabai, A.R., Hudson, R., Minh, C.C., Hertzberg, B.: McRT-STM: A high-performance software transactional memory system for a multi-core runtime. In: Proc. 11th ACM SIGPLAN Symposium of Principles and Practice of Parallel Programming (PPoPP 2006), New York, NY, USA, pp. 187–197 (2006)
Hammond, L., Carlstrom, B.D., Wong, V., Hertzberg, B., Chen, M., Kozyrakis, C., Olukotun, K.: Programming with transactional coherence and consistency (TCC). In: Proc. 11th Int. Conf. on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2004), pp. 1–13. ACM Press, New York (2004)
Chuang, W., Narayanasamy, S., Venkatesh, G., Sampson, J., Biesbrouck, M.V., Pokam, G., Colavin, O., Calder, B.: Unbounded page-based transactional memory. In: Proc. 12th Int. Conf. on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2006), Boston, MA, USA, pp. 347–358 (2006)
Ananian, C.S., Asanovic, K., Kuszmaul, B.C., Leiserson, C.E., Lie, S.: Unbounded transactional memory. In: Proc. 11th Int. Symposium on High-Performance Computer Architecture (HPCA 2005), Washington, DC, USA, pp. 316–327. IEEE Computer Society, Los Alamitos (2005)
Moore, K.E., Bobba, J., Moravan, M.J., Hill, M.D., Wood, D.A.: LogTM: Log-based transactional memory. In: Proc. 12th Int. Symposium on High-Performance Computer Architecture (HPCA 2006), Washington, DC, USA, pp. 254–265. IEEE Computer Society, Los Alamitos (2006)
Damron, P., Fedorova, A., Lev, Y., Luchangco, V., Moir, M., Nussbaum, D.: Hybrid transactional memory. In: Proc. 12th Int. Conf. on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2006), Boston, MA, USA, pp. 336–346 (2006)
Heindl, A., Pokam, G., Adl-Tabatabai, A.R.: An analytical performance model of software transactional memory. In: Proc. IEEE Int. Symposium on Performance Analysis of Systems and Software (ISPASS 2009), Boston, MA, USA (2009)
Heindl, A., Pokam, G.: An analytic framework for performance modeling of software transactional memory. Journal of Computer Networks (accepted for publication 2009)
von Praun, C., Bordawekar, R., Cascaval, C.: Modeling optimistic concurrency using quantitative dependence analysis. In: Proc. 13th ACM SIGPLAN Symposium of Principles and Practice of Parallel Programming (PPoPP 2008), Salt Lake City, Utah, USA, pp. 185–196 (2008)
Zilles, C., Rajwar, R.: Implications of false conflict rate trends for robust software transactional memory. In: Proc. IEEE Int. Symposium on Workload Characterization (IISWC 2007), Boston, MA, USA (2007)
Marathe, V.J., Spear, M.F., Heriot, C., Acharya, A., Eisenstat, D., Scherer, W.N., Scott, M.L.: Lowering the overhead of nonblocking software transactional memory. In: Proc. 1st ACM SIGPLAN Workshop on Languages, Compilers, and Hardware Support for Transactional Computing (TRANSACT 2006), Ottawa, Canada (2006)
McKinney, E.: Generalized birthday problem. American Mathematical Monthly 73, 385–387 (1966)
Kemeny, J.G., Snell, J.L.: Finite Markov Chains. Springer, Heidelberg (1976)
Maplesoft: Maple 12. Tool for mathematics and modeling, Waterloo, Ontario, Canada (2009), http://www.maplesoft.com/
Heindl, A., Pokam, G.: Modeling software transactional memory with AnyLogic. In: Proc. 2nd Int. Conf. on Simulation Tools and Techniques (SIMUTools 2009), Rome, Italy (2009)
XJ-Technologies: Anylogic 6.2.2. Multi-method simulation software, Petersburg, Russian Federation (2009), http://www.xjtek.com/
Minh, C.C., Chung, J.W., Kozyrakis, C., Olukotun, K.: STAMP: Stanford Transactional Applications for Multi-Processing. In: Proc. IEEE Int. Symposium on Workload Characterization (IISWC 2008), Seattle, WA, USA, pp. 35–46 (2008)
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
Heindl, A., Pokam, G. (2009). An Analytic Model for Optimistic STM with Lazy Locking. In: Al-Begain, K., Fiems, D., Horváth, G. (eds) Analytical and Stochastic Modeling Techniques and Applications. ASMTA 2009. Lecture Notes in Computer Science, vol 5513. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02205-0_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-02205-0_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02204-3
Online ISBN: 978-3-642-02205-0
eBook Packages: Computer ScienceComputer Science (R0)