{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,25]],"date-time":"2026-07-25T17:43:47Z","timestamp":1785001427562,"version":"3.55.0"},"reference-count":44,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2012,1,1]],"date-time":"2012-01-01T00:00:00Z","timestamp":1325376000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000144","name":"Division of Computer and Network Systems","doi-asserted-by":"publisher","award":["CNS-1016828"],"award-info":[{"award-number":["CNS-1016828"]}],"id":[{"id":"10.13039\/100000144","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["953667"],"award-info":[{"award-number":["953667"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100000185","name":"Defense Advanced Research Projects Agency","doi-asserted-by":"publisher","award":["953667"],"award-info":[{"award-number":["953667"]}],"id":[{"id":"10.13039\/100000185","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2012,1]]},"abstract":"<jats:p>A significant obstacle to the acceptance of transactional memory (TM) in real-world parallel programs is the abundance of substantially different TM algorithms. Each TM algorithm appears well-suited to certain workload characteristics, but the best choice of algorithm is sensitive to program inputs, available cores, and program phases. Furthermore, operating system and hardware characteristics can affect which algorithm is best, with tradeoffs changing across iterations of a single ISA.<\/jats:p>\n          <jats:p>This paper introduces methods for constructing policies to dynamically select the most appropriate TM algorithm based on static and dynamic information. We leverage intraprocedural static analysis to create a static profile of the application. We also introduce a low-overhead framework for dynamic profiling of a running transactional application. Armed with these complementary descriptions of a program's behavior, we present novel expert adaptivity policies as well as machine learning policies that are trained off-line using simple microbenchmarks. In our evaluation, we find that both the expert and learned policies provide better performance than any single TM algorithm across the entire STAMP benchmark suite. In addition, policies that combine expert and learned policies offer the best combination of performance, maintainability, and flexibility.<\/jats:p>","DOI":"10.1145\/2086696.2086733","type":"journal-article","created":{"date-parts":[[2012,1,24]],"date-time":"2012-01-24T16:47:14Z","timestamp":1327423634000},"page":"1-23","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":22,"title":["A transactional memory with automatic performance tuning"],"prefix":"10.1145","volume":"8","author":[{"given":"Qingping","family":"Wang","sequence":"first","affiliation":[{"name":"Lehigh University"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sameer","family":"Kulkarni","sequence":"additional","affiliation":[{"name":"University of Delaware"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"John","family":"Cavazos","sequence":"additional","affiliation":[{"name":"University of Delaware"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Michael","family":"Spear","sequence":"additional","affiliation":[{"name":"Lehigh University"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2012,1,26]]},"reference":[{"key":"e_1_2_1_1_1","first-page":"39","article-title":"Case-based reasoning: Foundational issues, methodological variations, and system approaches","volume":"7","author":"Aamodt A.","year":"1994","unstructured":"Aamodt , A. and Plaza , E. 1994 . Case-based reasoning: Foundational issues, methodological variations, and system approaches . Artif. Intell. Comm. 7 , 1, 39 -- 59 . Aamodt, A. and Plaza, E. 1994. Case-based reasoning: Foundational issues, methodological variations, and system approaches. Artif. Intell. Comm. 7, 1, 39--59.","journal-title":"Artif. Intell. Comm."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2006.37"},{"key":"e_1_2_1_3_1","unstructured":"Anji Home. 2005--2010. ANJI: Another NEAT Java Implementation. http:\/\/anji.sourceforge.net\/.  Anji Home. 2005--2010. ANJI: Another NEAT Java Implementation. http:\/\/anji.sourceforge.net\/."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-69501-1_21"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/SC.2005.14"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1167473.1167492"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1016\/B978-1-55860-377-6.50023-2"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065910.1065921"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950373"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1693453.1693464"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/11864219_14"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/1810479.1810531"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1345206.1345241"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the GCC Developers' Summit.","author":"Fursin G.","year":"2008","unstructured":"Fursin , G. , Miranda , C. , Temam , O. , Namolaru , M. , Yom-Tov , E. , Zaks , A. , Mendelson , B. , Barnard , P. , Ashton , E. , Courtois , E. , Bodin , F. , Bonilla , E. , Thomson , J. , Leather , H. , Williams , C. , and O'Boyle , M. 2008 . MILEPOST GCC: Machine learning based research compiler . In Proceedings of the GCC Developers' Summit. Fursin, G., Miranda, C., Temam, O., Namolaru, M., Yom-Tov, E., Zaks, A., Mendelson, B., Barnard, P., Ashton, E., Courtois, E., Bodin, F., Bonilla, E., Thomson, J., Leather, H., Williams, C., and O'Boyle, M. 2008. MILEPOST GCC: Machine learning based research compiler. In Proceedings of the GCC Developers' Summit."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1772954.1772970"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/949305.949340"},{"key":"e_1_2_1_17_1","doi-asserted-by":"crossref","unstructured":"Harris T. Larus J. and Rajwar R. 2010. Transactional memory. 2nd Ed. Synthesis Lectures on Computer Architecture. Morgan & Claypool.   Harris T. Larus J. and Rajwar R. 2010. Transactional memory. 2nd Ed. Synthesis Lectures on Computer Architecture. Morgan & Claypool.","DOI":"10.1007\/978-3-031-01728-5"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1133984"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2010.5648812"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1504176.1504181"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/996841.996863"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2006.32"},{"key":"e_1_2_1_23_1","volume-title":"Proceedings of the 2nd ACM SIGPLAN Workshop on Transactional Computing.","author":"Lev Y.","unstructured":"Lev , Y. , Moir , M. , and Nussbaum , D . 2007. PhTM: Phased transactional memory . In Proceedings of the 2nd ACM SIGPLAN Workshop on Transactional Computing. Lev, Y., Moir, M., and Nussbaum, D. 2007. PhTM: Phased transactional memory. In Proceedings of the 2nd ACM SIGPLAN Workshop on Transactional Computing."},{"key":"e_1_2_1_24_1","volume-title":"Proceedings of the International Symposium on Code Generation and Optimization.","author":"Li X.","unstructured":"Li , X. , Garzar\u00e1n , M. J. , and Padua , D . 2004. A dynamically tuned sorting library . In Proceedings of the International Symposium on Code Generation and Optimization. Li, X., Garzar\u00e1n, M. J., and Padua, D. 2004. A dynamically tuned sorting library. In Proceedings of the International Symposium on Code Generation and Optimization."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2005.24"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1007\/11561927_26"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1378533.1378588"},{"key":"e_1_2_1_28_1","volume-title":"Proceedings of the IEEE International Symposium on Workload Characterization.","author":"Minh C. C.","unstructured":"Minh , C. C. , Chung , J. , Kozyrakis , C. , and Olukotun , K . 2008. STAMP: Stanford transactional applications for multi-processing . In Proceedings of the IEEE International Symposium on Workload Characterization. Minh, C. C., Chung, J., Kozyrakis, C., and Olukotun, K. 2008. STAMP: Stanford transactional applications for multi-processing. In Proceedings of the IEEE International Symposium on Workload Characterization."},{"key":"e_1_2_1_29_1","volume-title":"Proceedings of the 10th International Conference on Artificial Intelligence: Methodology, Systems, and Applications.","author":"Monsifrot A.","unstructured":"Monsifrot , A. , Bodin , F. , and Quiniou , R . 2002. A machine learning approach to automatic production of compiler heuristics . In Proceedings of the 10th International Conference on Artificial Intelligence: Methodology, Systems, and Applications. Monsifrot, A., Bodin, F., and Quiniou, R. 2002. A machine learning approach to automatic production of compiler heuristics. In Proceedings of the 10th International Conference on Artificial Intelligence: Methodology, Systems, and Applications."},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449764.1449780"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375581.1375594"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1989493.1989501"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1024393.1024414"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2009.5161032"},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1810479.1810530"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2009.30"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/1378533.1378583"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1162\/106365602320169811"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2005.29"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781141"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2009.20"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1378533.1378584"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1109\/5.784219"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781140"}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2086696.2086733","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2086696.2086733","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:06:43Z","timestamp":1750241203000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2086696.2086733"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,1]]},"references-count":44,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2012,1]]}},"alternative-id":["10.1145\/2086696.2086733"],"URL":"https:\/\/doi.org\/10.1145\/2086696.2086733","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"value":"1544-3566","type":"print"},{"value":"1544-3973","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012,1]]},"assertion":[{"value":"2011-07-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2011-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2012-01-26","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}