• Sheng Y, Hassan A and Spear M. (2023). Separating Mechanism from Policy in STM 2023 32nd International Conference on Parallel Architectures and Compilation Techniques (PACT). 10.1109/PACT58117.2023.00031. 979-8-3503-4254-3. (279-296).

    https://ieeexplore.ieee.org/document/10364574/

  • Siek K and Wojciechowski P. (2022). Last-use opacity: a strong safety property for transactional memory with prerelease support. Distributed Computing. 10.1007/s00446-022-00420-2. 35:3. (265-301). Online publication date: 1-Jun-2022.

    https://link.springer.com/10.1007/s00446-022-00420-2

  • Li C, Guan L, Lin J, Luo B, Cai Q, Jing J and Wang J. Mimosa: Protecting Private Keys Against Memory Disclosure Attacks Using Hardware Transactional Memory. IEEE Transactions on Dependable and Secure Computing. 10.1109/TDSC.2019.2897666. 18:3. (1196-1213).

    https://ieeexplore.ieee.org/document/8634944/

  • Zardoshti P, Zhou T, Balaji P, Scott M and Spear M. (2019). Simplifying Transactional Memory Support in C++. ACM Transactions on Architecture and Code Optimization. 16:3. (1-24). Online publication date: 30-Sep-2019.

    https://doi.org/10.1145/3328796

  • Zardoshti P, Zhou T, Liu Y and Spear M. Optimizing Persistent Memory Transactions. Proceedings of the International Conference on Parallel Architectures and Compilation Techniques. (219-231).

    https://doi.org/10.1109/PACT.2019.00025

  • Li C, Lin J, Cai Q and Luo B. (2018). Peapods: OS-Independent Memory Confidentiality for Cryptographic Engines 2018 IEEE Intl Conf on Parallel & Distributed Processing with Applications, Ubiquitous Computing & Communications, Big Data & Cloud Computing, Social Computing & Networking, Sustainable Computing & Communications (ISPA/IUCC/BDCloud/SocialCom/SustainCom). 10.1109/BDCloud.2018.00128. 978-1-7281-1141-4. (862-869).

    https://ieeexplore.ieee.org/document/8672308/

  • Dice D, Herlihy M and Kogan A. (2018). Improving Parallelism in Hardware Transactional Memory. ACM Transactions on Architecture and Code Optimization. 15:1. (1-24). Online publication date: 31-Mar-2018.

    https://doi.org/10.1145/3177962

  • Dongol B, Jagadeesan R and Riely J. (2017). Transactions in relaxed memory architectures. Proceedings of the ACM on Programming Languages. 2:POPL. (1-29). Online publication date: 1-Jan-2018.

    https://doi.org/10.1145/3158106

  • Diegues N, Romano P and Garbatov S. (2017). Seer. ACM Transactions on Computer Systems. 35:3. (1-41). Online publication date: 31-Aug-2017.

    https://doi.org/10.1145/3132036

  • Zhou T, Zardoshti P and Spear M. (2017). Practical Experience with Transactional Lock Elision 2017 46th International Conference on Parallel Processing (ICPP). 10.1109/ICPP.2017.17. 978-1-5386-1042-8. (81-90).

    http://ieeexplore.ieee.org/document/8025282/

  • Zhou T, Luchangco V and Spear M. Brief Announcement. Proceedings of the 29th ACM Symposium on Parallelism in Algorithms and Architectures. (371-373).

    https://doi.org/10.1145/3087556.3087600

  • Cao M, Zhang M, Sengupta A, Biswas S and Bond M. (2017). Hybridizing and Relaxing Dependence Tracking for Efficient Parallel Runtime Support. ACM Transactions on Parallel Computing. 4:2. (1-42). Online publication date: 30-Jun-2017.

    https://doi.org/10.1145/3108138

  • Nguyen D and Pingali K. (2017). What Scalable Programs Need from Transactional Memory. ACM SIGPLAN Notices. 52:4. (105-118). Online publication date: 12-May-2017.

    https://doi.org/10.1145/3093336.3037750

  • Nguyen D and Pingali K. (2017). What Scalable Programs Need from Transactional Memory. ACM SIGARCH Computer Architecture News. 45:1. (105-118). Online publication date: 11-May-2017.

    https://doi.org/10.1145/3093337.3037750

  • Nguyen D and Pingali K. What Scalable Programs Need from Transactional Memory. Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems. (105-118).

    https://doi.org/10.1145/3037697.3037750

  • Wang C and Spear M. Practical condition synchronization for transactional memory. Proceedings of the Eleventh European Conference on Computer Systems. (1-16).

    https://doi.org/10.1145/2901318.2901342

  • Wang G, Wang S, Luo B, Shi W, Zhu Y, Yang W, Hu D, Huang L, Jin X and Xu W. Increasing large-scale data center capacity by statistical power control. Proceedings of the Eleventh European Conference on Computer Systems. (1-15).

    https://doi.org/10.1145/2901318.2901338

  • Carpen-Amarie M, Dice D, Thomas G and Felber P. (2016). Transactional Pointers: Experiences with HTM-Based Reference Counting in C++. Networked Systems. 10.1007/978-3-319-46140-3_8. (102-116).

    http://link.springer.com/10.1007/978-3-319-46140-3_8

  • Maldonado W, Marlier P, Felber P, Lawall J, Muller G and Rivière E. (2015). Supporting Time-Based QoS Requirements in Software Transactional Memory. ACM Transactions on Parallel Computing. 2:2. (1-30). Online publication date: 8-Jul-2015.

    https://doi.org/10.1145/2779621

  • Guan L, Lin J, Luo B, Jing J and Wang J. Protecting Private Keys against Memory Disclosure Attacks Using Hardware Transactional Memory. Proceedings of the 2015 IEEE Symposium on Security and Privacy. (3-19).

    https://doi.org/10.1109/SP.2015.8

  • Porter D, Bond M, Roy I, Mckinley K and Witchel E. (2014). Practical Fine-Grained Information Flow Control Using Laminar. ACM Transactions on Programming Languages and Systems. 37:1. (1-51). Online publication date: 20-Jan-2015.

    https://doi.org/10.1145/2638548

  • Ruan W, Liu Y and Spear M. (2015). Transactional Read-Modify-Write Without Aborts. ACM Transactions on Architecture and Code Optimization. 11:4. (1-24). Online publication date: 9-Jan-2015.

    https://doi.org/10.1145/2688904

  • Spear M, Ruan W, Liu Y and Vyas T. (2015). Case Study: Using Transactions in Memcached. Transactional Memory. Foundations, Algorithms, Tools, and Applications. 10.1007/978-3-319-14720-8_20. (449-467).

    http://link.springer.com/10.1007/978-3-319-14720-8_20

  • Yang X, Zhang Y, Fu M and Feng X. (2014). A temporal programming model with atomic blocks based on projection temporal logic. Frontiers of Computer Science: Selected Publications from Chinese Universities. 8:6. (958-976). Online publication date: 1-Dec-2014.

    https://doi.org/10.1007/s11704-014-3342-0

  • Carvalho F and Cachopo J. Lightweight Identification of Captured Memory for Software Transactional Memory. Proceedings of the 13th International Conference on Algorithms and Architectures for Parallel Processing - Volume 8285. (15-29).

    https://doi.org/10.1007/978-3-319-03859-9_2

  • Feng M, Gupta R and Neamtiu I. Programming Support for Speculative Execution with Software Transactional Memory. Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing Workshops and PhD Forum. (394-403).

    https://doi.org/10.1109/IPDPSW.2013.194

  • Spear M, Wang C, Liu Y and Ruan W. On the platform specificity of STM instrumentation mechanisms. Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO). (1-10).

    https://doi.org/10.1109/CGO.2013.6495000

  • Barnett G and Qin S. A composable mixed mode concurrency control semantics for transactional programs. Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering. (38-53).

    https://doi.org/10.1007/978-3-642-34281-3_6

  • Yang X, Zhang Y, Fu M and Feng X. A concurrent temporal programming model with atomic blocks. Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering. (22-37).

    https://doi.org/10.1007/978-3-642-34281-3_5

  • Johnson N, Kim H, Prabhu P, Zaks A and August D. (2012). Speculative separation for privatization and reductions. ACM SIGPLAN Notices. 47:6. (359-370). Online publication date: 6-Aug-2012.

    https://doi.org/10.1145/2345156.2254107

  • Johnson N, Kim H, Prabhu P, Zaks A and August D. Speculative separation for privatization and reductions. Proceedings of the 33rd ACM SIGPLAN Conference on Programming Language Design and Implementation. (359-370).

    https://doi.org/10.1145/2254064.2254107

  • Volos H, Tack A, Swift M and Lu S. (2012). Applying transactional memory to concurrency bugs. ACM SIGPLAN Notices. 47:4. (211-222). Online publication date: 1-Jun-2012.

    https://doi.org/10.1145/2248487.2150999

  • Volos H, Tack A, Swift M and Lu S. (2012). Applying transactional memory to concurrency bugs. ACM SIGARCH Computer Architecture News. 40:1. (211-222). Online publication date: 18-Apr-2012.

    https://doi.org/10.1145/2189750.2150999

  • Volos H, Tack A, Swift M and Lu S. Applying transactional memory to concurrency bugs. Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems. (211-222).

    https://doi.org/10.1145/2150976.2150999

  • Zyulkyarov F, Stipic S, Harris T, Unsal O, Cristal A, Hur I and Valero M. (2011). Profiling and Optimizing Transactional Memory Applications. International Journal of Parallel Programming. 10.1007/s10766-011-0177-2. 40:1. (25-56). Online publication date: 1-Feb-2012.

    http://link.springer.com/10.1007/s10766-011-0177-2

  • Wang Q, Kulkarni S, Cavazos J and Spear M. (2012). A transactional memory with automatic performance tuning. ACM Transactions on Architecture and Code Optimization. 8:4. (1-23). Online publication date: 1-Jan-2012.

    https://doi.org/10.1145/2086696.2086733

  • Pankratius V and Adl-Tabatabai A. A study of transactional memory vs. locks in practice. Proceedings of the twenty-third annual ACM symposium on Parallelism in algorithms and architectures. (43-52).

    https://doi.org/10.1145/1989493.1989500

  • Mannarswamy S and Govindarajan R. Variable Granularity Access Tracking Scheme for Improving the Performance of Software Transactional Memory. Proceedings of the 2011 IEEE International Parallel & Distributed Processing Symposium. (455-466).

    https://doi.org/10.1109/IPDPS.2011.51

  • Chakrabarti D, Banerjee P, Boehm H, Joisha P and Schreiber R. The runtime abort graph and its application to software transactional memory optimization. Proceedings of the 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization. (42-53).

    /doi/10.5555/2190025.2190052

  • Dragojević A, Felber P, Gramoli V and Guerraoui R. (2011). Why STM can be more than a research toy. Communications of the ACM. 54:4. (70-77). Online publication date: 1-Apr-2011.

    https://doi.org/10.1145/1924421.1924440

  • Chakrabarti D, Banerjee P, Boehm H, Joisha P and Schreiber R. (2011). The runtime abort graph and its application to software transactional memory optimization 2011 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization (CGO). 10.1109/CGO.2011.5764673. 978-1-61284-356-8. (42-53).

    http://ieeexplore.ieee.org/document/5764673/

  • Volos H, Tack A and Swift M. (2011). Mnemosyne. ACM SIGPLAN Notices. 46:3. (91-104). Online publication date: 17-Mar-2011.

    https://doi.org/10.1145/1961296.1950379

  • Volos H, Tack A and Swift M. (2011). Mnemosyne. ACM SIGARCH Computer Architecture News. 39:1. (91-104). Online publication date: 17-Mar-2011.

    https://doi.org/10.1145/1961295.1950379

  • Volos H, Tack A and Swift M. Mnemosyne. Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems. (91-104).

    https://doi.org/10.1145/1950365.1950379

  • Afek Y, Korland G and Zilberstein A. (2011). Lowering STM Overhead with Static Analysis. Languages and Compilers for Parallel Computing. 10.1007/978-3-642-19595-2_3. (31-45).

    http://link.springer.com/10.1007/978-3-642-19595-2_3

  • Chung J, Chakrabarti D and Cao Minh C. Analysis on semantic transactional memory footprint for hardware transactional memory. Proceedings of the IEEE International Symposium on Workload Characterization (IISWC'10). (1-11).

    https://doi.org/10.1109/IISWC.2010.5649529

  • Felber P, Fetzer C, Marlier P and Riegel T. (2010). Time-Based Software Transactional Memory. IEEE Transactions on Parallel and Distributed Systems. 21:12. (1793-1807). Online publication date: 1-Dec-2010.

    https://doi.org/10.1109/TPDS.2010.49

  • Afek Y, Korland G and Zilberstein A. Lowering STM overhead with static analysis. Proceedings of the 23rd international conference on Languages and compilers for parallel computing. (31-45).

    /doi/10.5555/1964536.1964539

  • Carouge F and Spear M. A scalable lock-free universal construction with best effort transactional hardware. Proceedings of the 24th international conference on Distributed computing. (50-63).

    /doi/10.5555/1888781.1888790

  • Mannarswamy S and Govindarajan R. Handling Conflicts with Compiler's Help in Software Transactional Memory Systems. Proceedings of the 2010 39th International Conference on Parallel Processing. (482-491).

    https://doi.org/10.1109/ICPP.2010.56

  • Zyulkyarov F, Stipic S, Harris T, Unsal O, Cristal A, Hur I and Valero M. Discovering and understanding performance bottlenecks in transactional applications. Proceedings of the 19th international conference on Parallel architectures and compilation techniques. (285-294).

    https://doi.org/10.1145/1854273.1854311

  • Pyla H and Varadarajan S. Avoiding deadlock avoidance. Proceedings of the 19th international conference on Parallel architectures and compilation techniques. (75-86).

    https://doi.org/10.1145/1854273.1854288

  • Negi A, Waliullah M and Stenstrom P. (2010). LV<sup>&#x2217;</sup>: A low complexity lazy versioning HTM infrastructure 2010 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS X). 10.1109/ICSAMOS.2010.5642062. 978-1-4244-7936-8. (231-240).

    http://ieeexplore.ieee.org/document/5642062/

  • Negi A, Waliullah M and Stenstrom P. LV*. Proceedings of the Second International Forum on Next-Generation Multicore/Manycore Technologies. (1-10).

    https://doi.org/10.1145/1882453.1882460

  • Spear M. Lightweight, robust adaptivity for software transactional memory. Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures. (273-283).

    https://doi.org/10.1145/1810479.1810530

  • Rossbach C, Hofmann O and Witchel E. (2010). Is transactional programming actually easier?. ACM SIGPLAN Notices. 45:5. (47-56). Online publication date: 1-May-2010.

    https://doi.org/10.1145/1837853.1693462

  • Luchangco V and Marathe V. You are not alone. Proceedings of the 3rd International Workshop on Multicore Software Engineering. (50-53).

    https://doi.org/10.1145/1808954.1808967

  • Lupei D, Simion B, Pinto D, Misler M, Burcea M, Krick W and Amza C. Transactional memory support for scalable and transparent parallelization of multiplayer games. Proceedings of the 5th European conference on Computer systems. (41-54).

    https://doi.org/10.1145/1755913.1755919

  • Rossbach C, Hofmann O and Witchel E. Is transactional programming actually easier?. Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming. (47-56).

    https://doi.org/10.1145/1693453.1693462

  • Carouge F and Spear M. (2010). A Scalable Lock-Free Universal Construction with Best Effort Transactional Hardware. Distributed Computing. 10.1007/978-3-642-15763-9_6. (50-63).

    http://link.springer.com/10.1007/978-3-642-15763-9_6

  • Berger E, Yang T, Liu T and Novark G. Grace. Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications. (81-96).

    https://doi.org/10.1145/1640089.1640096

  • Berger E, Yang T, Liu T and Novark G. (2009). Grace. ACM SIGPLAN Notices. 44:10. (81-96). Online publication date: 25-Oct-2009.

    https://doi.org/10.1145/1639949.1640096

  • Dragojevic A, Ni Y and Adl-Tabatabai A. Optimizing transactions for captured memory. Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures. (214-222).

    https://doi.org/10.1145/1583991.1584049

  • Shpeisman T, Adl-Tabatabai A, Geva R, Ni Y and Welc A. Towards transactional memory semantics for C++. Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures. (49-58).

    https://doi.org/10.1145/1583991.1584012

  • Volos H, Welc A, Adl-Tabatabai A, Shpeisman T, Tian X and Narayanaswamy R. NePaLTM. Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming. (123-147).

    https://doi.org/10.1007/978-3-642-03013-0_7

  • Dragojević A, Guerraoui R and Kapalka M. Stretching transactional memory. Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation. (155-165).

    https://doi.org/10.1145/1542476.1542494

  • Roy I, Porter D, Bond M, McKinley K and Witchel E. Laminar. Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation. (63-74).

    https://doi.org/10.1145/1542476.1542484

  • Gajinov V, Zyulkyarov F, Unsal O, Cristal A, Ayguade E, Harris T and Valero M. QuakeTM. Proceedings of the 23rd international conference on Supercomputing. (126-135).

    https://doi.org/10.1145/1542275.1542298

  • Heindl A and Pokam G. (2009). An analytic framework for performance modeling of software transactional memory. Computer Networks: The International Journal of Computer and Telecommunications Networking. 53:8. (1202-1214). Online publication date: 1-Jun-2009.

    https://doi.org/10.1016/j.comnet.2009.02.006

  • Dragojević A, Guerraoui R and Kapalka M. (2009). Stretching transactional memory. ACM SIGPLAN Notices. 44:6. (155-165). Online publication date: 28-May-2009.

    https://doi.org/10.1145/1543135.1542494

  • Roy I, Porter D, Bond M, McKinley K and Witchel E. (2009). Laminar. ACM SIGPLAN Notices. 44:6. (63-74). Online publication date: 28-May-2009.

    https://doi.org/10.1145/1543135.1542484

  • Sonmez N, Harris T, Cristal A, Unsal O and Valero M. Taking the heat off transactions. Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing. (1-10).

    https://doi.org/10.1109/IPDPS.2009.5161032

  • Eran H, Lutzky O, Guz Z and Keidar I. Transactifying Apache's cache module. Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference. (1-9).

    https://doi.org/10.1145/1534530.1534533

  • Volos H, Tack A, Goyal N, Swift M and Welc A. xCalls. Proceedings of the 4th ACM European conference on Computer systems. (247-260).

    https://doi.org/10.1145/1519065.1519093

  • Heindl A and Pokam G. Modeling software transactional memory with AnyLogic. Proceedings of the 2nd International Conference on Simulation Tools and Techniques. (1-10).

    https://doi.org/10.4108/ICST.SIMUTOOLS2009.5581

  • Volos H, Welc A, Adl-Tabatabai A, Shpeisman T, Tian X and Narayanaswamy R. (2009). NePalTM. ACM SIGPLAN Notices. 44:4. (291-292). Online publication date: 14-Feb-2009.

    https://doi.org/10.1145/1594835.1504220

  • Zyulkyarov F, Gajinov V, Unsal O, Cristal A, Ayguadé E, Harris T and Valero M. (2009). Atomic quake. ACM SIGPLAN Notices. 44:4. (25-34). Online publication date: 14-Feb-2009.

    https://doi.org/10.1145/1594835.1504183

  • Volos H, Welc A, Adl-Tabatabai A, Shpeisman T, Tian X and Narayanaswamy R. NePalTM. Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming. (291-292).

    https://doi.org/10.1145/1504176.1504220

  • Zyulkyarov F, Gajinov V, Unsal O, Cristal A, Ayguadé E, Harris T and Valero M. Atomic quake. Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming. (25-34).

    https://doi.org/10.1145/1504176.1504183

  • Adl-Tabatabai A, Kozyrakis C and Saha B. (2009). Optimizing Memory Transactions for Multicore Systems. Multicore Processors and Systems. 10.1007/978-1-4419-0263-4_5. (145-172).

    https://link.springer.com/10.1007/978-1-4419-0263-4_5

  • Wang Y, Kelly T, Kudlur M, Lafortune S and Mahlke S. Gadara. Proceedings of the 8th USENIX conference on Operating systems design and implementation. (281-294).

    /doi/10.5555/1855741.1855761

  • Zyulkyarov F, Cristal A, Cvijic S, Ayguade E, Valero M, Unsal O and Harris T. WormBench. Proceedings of the 9th workshop on MEmory performance: DEaling with Applications, systems and architecture. (61-68).

    https://doi.org/10.1145/1509084.1509093

  • Dongol B, Jagadeesan R and Riely J. Modular transactions. Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming. (82-93).

    https://doi.org/10.1145/3293883.3295708

  • Nguyen D and Pingali K. (2017). What Scalable Programs Need from Transactional Memory. ACM SIGOPS Operating Systems Review. 10.1145/3093315.3037750. 51:2. (105-118). Online publication date: 4-Apr-2017.

    http://dl.acm.org/citation.cfm?doid=3093315.3037750

  • Adir A, Goodman D, Hershcovich D, Hershkovitz O, Hickerson B, Holtz K, Kadry W, Koyfman A, Ludden J, Meissner C, Nahir A, Pratt R, Schiffli M, St. Onge B, Thompto B, Tsanko E and Ziv A. Verification of Transactional Memory in POWER8. Proceedings of the 51st Annual Design Automation Conference. (1-6).

    https://doi.org/10.1145/2593069.2593241

  • Stipić S, Karakostas V, Smiljković V, Gajinov V, Unsal O, Cristal A and Valero M. Dynamic transaction coalescing. Proceedings of the 11th ACM Conference on Computing Frontiers. (1-10).

    https://doi.org/10.1145/2597917.2597930

  • Yang X, Zhang Y, Fu M and Feng X. A concurrent temporal programming model with atomic blocks. Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering. (22-37).

    https://doi.org/10.1007/978-3-642-34281-3_5

  • Dias R and Lourenço J. Unifying Memory and Database Transactions. Proceedings of the 15th International Euro-Par Conference on Parallel Processing. (349-360).

    https://doi.org/10.1007/978-3-642-03869-3_35