{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:20:08Z","timestamp":1750306808504,"version":"3.41.0"},"reference-count":24,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2013,12,1]],"date-time":"2013-12-01T00:00:00Z","timestamp":1385856000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2013,12]]},"abstract":"<jats:p>\n            Previous studies in software transactional memory mostly focused on reducing the overhead of transactional read and write operations. In this article, we introduce\n            <jats:italic>transaction coalescing<\/jats:italic>\n            , a profile-guided compiler optimization technique that attempts to reduce the overheads of starting and committing a transaction by merging two or more small transactions into one large transaction. We develop a profiling tool and a transaction coalescing heuristic to identify candidate transactions suitable for coalescing. We implement a compiler extension to automatically merge the candidate transactions at the compile time. We evaluate the effectiveness of our technique using the hash table micro-benchmark and the STAMP benchmark suite. Transaction coalescing improves the performance of the hash table significantly and the performance of Vacation and SSCA2 benchmarks by 19.4% and 36.4%, respectively, when running with 12 threads.\n          <\/jats:p>","DOI":"10.1145\/2541228.2555306","type":"journal-article","created":{"date-parts":[[2014,1,14]],"date-time":"2014-01-14T13:39:57Z","timestamp":1389706797000},"page":"1-18","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["Profile-guided transaction coalescing\u2014lowering transactional overheads by merging transactions"],"prefix":"10.1145","volume":"10","author":[{"given":"Sr\u0111an","family":"Stipi\u0107","sequence":"first","affiliation":[{"name":"Barcelona Supercomputing Center, Barcelona, Spain"}]},{"given":"Vesna","family":"Smiljkovi\u0107","sequence":"additional","affiliation":[{"name":"Barcelona Supercomputing Center, Barcelona, Spain"}]},{"given":"Osman","family":"Unsal","sequence":"additional","affiliation":[{"name":"Barcelona Supercomputing Center, Barcelona, Spain"}]},{"given":"Adri\u00e1n","family":"Cristal","sequence":"additional","affiliation":[{"name":"Barcelona Supercomputing Center, Barcelona, Spain"}]},{"given":"Mateo","family":"Valero","sequence":"additional","affiliation":[{"name":"Barcelona Supercomputing Center, Barcelona, Spain"}]}],"member":"320","published-online":{"date-parts":[[2013,12]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1133981.1133985"},{"volume-title":"Proceedings of the Workshop on Languages and Compilers for Parallel Computing. 31--45","author":"Afek Y.","key":"e_1_2_1_2_1","unstructured":"Afek , Y. , Korland , G. , and Zilberstein , A . 2011. Lowering STM overhead with static analysis . In Proceedings of the Workshop on Languages and Compilers for Parallel Computing. 31--45 . Afek, Y., Korland, G., and Zilberstein, A. 2011. Lowering STM overhead with static analysis. In Proceedings of the Workshop on Languages and Compilers for Parallel Computing. 31--45."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1007\/11602569_48"},{"volume-title":"Proceedings of the IEEE 14th International Symposium on High Performance Computer Architecture (HPCA\u201908)","author":"Chung J.","key":"e_1_2_1_4_1","unstructured":"Chung , J. , Dalton , M. , Kannan , H. , and Kozyrakis , C . 2008. Thread-safe dynamic binary translation using transactional memory . In Proceedings of the IEEE 14th International Symposium on High Performance Computer Architecture (HPCA\u201908) . IEEE, 279--289. Chung, J., Dalton, M., Kannan, H., and Kozyrakis, C. 2008. Thread-safe dynamic binary translation using transactional memory. In Proceedings of the IEEE 14th International Symposium on High Performance Computer Architecture (HPCA\u201908). IEEE, 279--289."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/263699.263718"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1006\/jpdc.1998.1441"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1583991.1584049"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1345206.1345241"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/1855056"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/MASCOTS.2010.39"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/165123.165164"},{"key":"e_1_2_1_12_1","unstructured":"GCC. 2013. GCC the GNU Compiler Collection. Retrieved from http:\/\/gcc.gnu.org\/.  GCC. 2013. GCC the GNU Compiler Collection. Retrieved from http:\/\/gcc.gnu.org\/."},{"volume-title":"Proceedings of the IEEE International Symposium on Workload Characterization (IISWC\u201908)","author":"Minh C.","key":"e_1_2_1_13_1","unstructured":"Minh , 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 (IISWC\u201908) . IEEE, 35--46. Minh, 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 (IISWC\u201908). IEEE, 35--46."},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250662.1250673"},{"key":"e_1_2_1_15_1","volume-title":"CIL: Intermediate language and tools for analysis and transformation of C programs. In Compiler Construction","author":"Necula G.","year":"2002","unstructured":"Necula , G. , McPeak , S. , Rahul , S. , and Weimer , W . 2002 . CIL: Intermediate language and tools for analysis and transformation of C programs. In Compiler Construction . Springer , 209--265. Necula, G., McPeak, S., Rahul, S., and Weimer, W. 2002. CIL: Intermediate language and tools for analysis and transformation of C programs. In Compiler Construction. Springer, 209--265."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2006.9"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250662.1250676"},{"volume-title":"Proceedings of the Design, Automation Test in Europe Conference Exhibition (DATE\u201912)","author":"Stipic S.","key":"e_1_2_1_18_1","unstructured":"Stipic , S. , Tomic , S. , Zyulkyarov , F. , Cristal , A. , Unsal , O. , and Valero , M . 2012. TagTM\u2014Accelerating STMs with hardware tags for fast meta-data access . In Proceedings of the Design, Automation Test in Europe Conference Exhibition (DATE\u201912) . 39--44. Stipic, S., Tomic, S., Zyulkyarov, F., Cristal, A., Unsal, O., and Valero, M. 2012. TagTM\u2014Accelerating STMs with hardware tags for fast meta-data access. In Proceedings of the Design, Automation Test in Europe Conference Exhibition (DATE\u201912). 39--44."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2370816.2370836"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2007.4"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.v21:1"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/SBAC-PAD.2010.29"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1854273.1854311"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10766-011-0177-2"}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2541228.2555306","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2541228.2555306","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T07:35:01Z","timestamp":1750232101000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2541228.2555306"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013,12]]},"references-count":24,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2013,12]]}},"alternative-id":["10.1145\/2541228.2555306"],"URL":"https:\/\/doi.org\/10.1145\/2541228.2555306","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"type":"print","value":"1544-3566"},{"type":"electronic","value":"1544-3973"}],"subject":[],"published":{"date-parts":[[2013,12]]},"assertion":[{"value":"2013-11-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2013-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2013-12-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}