{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:16:43Z","timestamp":1763468203736,"version":"3.41.0"},"reference-count":33,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2014,8,13]],"date-time":"2014-08-13T00:00:00Z","timestamp":1407888000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Spain with projects CICYT TIN2010-16144 and Consolider Ingenio 2010 CSD2007-00050"},{"name":"Autonomic Government of Andaluc&#237;a (JA TIC-4341)"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2014,10,27]]},"abstract":"<jats:p>\n            This article describes a transactional memory execution model intended to exploit maximum parallelism from sequential and multithreaded programs. A program code section is partitioned into chunks that will be mapped onto threads and executed transactionally. These transactions run concurrently and out of order, trying to exploit maximum parallelism but managed by a specific fully distributed commit control to meet data dependencies. To accomplish correct parallel execution, a partial precedence order relation is derived from the program code section and\/or defined by the programmer. When a conflict between chunks is eagerly detected, the precedence order relation is used to determine the best policy to solve the conflict that preserves the precedence order while maximizing concurrency. The model defines a new transactional state called\n            <jats:italic>executed but not committed<\/jats:italic>\n            . This state allows exploiting concurrency on two levels: intrathread and interthread. Intrathread concurrency is improved by having pending uncommitted transactions while executing a new one in the same thread. The new state improves interthread concurrency because it permits out-of-order transaction commits regarding the precedence order. Our model has been implemented in a lightweight software transactional memory system, TinySTM, and has been evaluated on a set of benchmarks obtaining an important performance improvement over the baseline TM system.\n          <\/jats:p>","DOI":"10.1145\/2633048","type":"journal-article","created":{"date-parts":[[2014,8,26]],"date-time":"2014-08-26T12:08:55Z","timestamp":1409054935000},"page":"1-27","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":13,"title":["Effective Transactional Memory Execution Management for Improved Concurrency"],"prefix":"10.1145","volume":"11","author":[{"given":"M. A.","family":"Gonzalez-Mesa","sequence":"first","affiliation":[{"name":"Dept. of Computer Architecture, University of M\u00e1laga, M\u00e1laga, Spain"}]},{"given":"Eladio","family":"Gutierrez","sequence":"additional","affiliation":[{"name":"Dept. of Computer Architecture, University of M\u00e1laga, M\u00e1laga, Spain"}]},{"given":"Emilio L.","family":"Zapata","sequence":"additional","affiliation":[{"name":"Dept. of Computer Architecture, University of M\u00e1laga, M\u00e1laga, Spain"}]},{"given":"Oscar","family":"Plata","sequence":"additional","affiliation":[{"name":"Dept. of Computer Architecture, University of M\u00e1laga, M\u00e1laga, Spain"}]}],"member":"320","published-online":{"date-parts":[[2014,8,13]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-85451-7_77"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2010.25"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.5555\/1299042.1299064"},{"key":"e_1_2_1_4_1","volume-title":"Unifying Thread-Level Speculation and Transactional Memory. In ACM\/IFIP\/USENIX 13th Int\u2019l. Middleware Conf. 187--207","author":"Barreto Joao","year":"2012","unstructured":"Joao Barreto , Aleksandar Dragojevic , Paulo Ferreira , Ricardo Filipe , and Rachid Guerraoui . 2012 . Unifying Thread-Level Speculation and Transactional Memory. In ACM\/IFIP\/USENIX 13th Int\u2019l. Middleware Conf. 187--207 . Joao Barreto, Aleksandar Dragojevic, Paulo Ferreira, Ricardo Filipe, and Rachid Guerraoui. 2012. Unifying Thread-Level Speculation and Transactional Memory. In ACM\/IFIP\/USENIX 13th Int\u2019l. Middleware Conf. 187--207."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454115.1454128"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10915-012-9643-2"},{"key":"e_1_2_1_7_1","volume-title":"Dongarra","author":"Boisvert Ronald F.","year":"1997","unstructured":"Ronald F. Boisvert , Roldan Pozo , Karin Remington , Richard F. Barrett , and Jack J . Dongarra . 1997 . Matrix Market : A Web Resource for Test Matrix Collections. In IFIP TC2\/WG2.5 Working Conf. on Quality of Numerical Software: Assessment and Enhancement . 125--137. Ronald F. Boisvert, Roldan Pozo, Karin Remington, Richard F. Barrett, and Jack J. Dongarra. 1997. Matrix Market: A Web Resource for Test Matrix Collections. In IFIP TC2\/WG2.5 Working Conf. on Quality of Numerical Software: Assessment and Enhancement. 125--137."},{"key":"e_1_2_1_8_1","volume-title":"STAMP: Stanford Transactional Applications for Multi-Processing. In IEEE Int\u2019l. Symp. on Workload Characterization (IISWC\u201908)","author":"Minh Chi Cao","year":"2008","unstructured":"Chi Cao Minh , JaeWoong Chung , Christos Kozyrakis , and Kunle Olukotun . 2008 . STAMP: Stanford Transactional Applications for Multi-Processing. In IEEE Int\u2019l. Symp. on Workload Characterization (IISWC\u201908) . Chi Cao Minh, JaeWoong Chung, Christos Kozyrakis, and Kunle Olukotun. 2008. STAMP: Stanford Transactional Applications for Multi-Processing. In IEEE Int\u2019l. Symp. on Workload Characterization (IISWC\u201908)."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00450-011-0160-6"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1944862.1944882"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1345206.1345241"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2039370.2039380"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2005.160"},{"key":"e_1_2_1_14_1","volume-title":"Automatic Loop Parallelization Using Transactional Memory Support. In 16th Workshop on Compilers for Parallel Computers (CPC\u201912)","author":"Gonzalez-Mesa M. Angel","year":"2012","unstructured":"M. Angel Gonzalez-Mesa , Ricardo Quislant , Eladio Gutierrez , and Oscar Plata . 2012 . Automatic Loop Parallelization Using Transactional Memory Support. In 16th Workshop on Compilers for Parallel Computers (CPC\u201912) . M. Angel Gonzalez-Mesa, Ricardo Quislant, Eladio Gutierrez, and Oscar Plata. 2012. Automatic Loop Parallelization Using Transactional Memory Support. In 16th Workshop on Compilers for Parallel Computers (CPC\u201912)."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/69624.357206"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/335231.335239"},{"key":"e_1_2_1_17_1","volume-title":"Transactional Memory Coherence and Consistency. In 31st Ann. Int\u2019l. Symp. on Computer Architecture (ISCA\u201904)","author":"Hammond Lance","year":"2004","unstructured":"Lance Hammond , Vicky Wong , Mike Chen , Brian D. Carlstrom , John D. Davis , Ben Hertzberg , Manohar K. Prabhu , Honggo Wijaya , Christos Kozyrakis , and Kunle Olukotun . 2004 . Transactional Memory Coherence and Consistency. In 31st Ann. Int\u2019l. Symp. on Computer Architecture (ISCA\u201904) . 102--113. Lance Hammond, Vicky Wong, Mike Chen, Brian D. Carlstrom, John D. Davis, Ben Hertzberg, Manohar K. Prabhu, Honggo Wijaya, Christos Kozyrakis, and Kunle Olukotun. 2004. Transactional Memory Coherence and Consistency. In 31st Ann. Int\u2019l. Symp. on Computer Architecture (ISCA\u201904). 102--113."},{"key":"e_1_2_1_18_1","volume-title":"Transactional Memory","author":"Harris Tim","unstructured":"Tim Harris , James R. Larus , and Ravi Rajwar . 2010. Transactional Memory ( 2 nd Ed.). Morgan & Claypool . Tim Harris, James R. Larus, and Ravi Rajwar. 2010. Transactional Memory (2nd Ed.). Morgan & Claypool.","edition":"2"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/114005.102808"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/165123.165164"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542495"},{"key":"e_1_2_1_22_1","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-031-01736-0","volume-title":"Automatic Parallelization: An Overview of Fundamental Compiler Techniques. Morgan & Claypool.","author":"Midkiff Samuel P.","year":"2012","unstructured":"Samuel P. Midkiff . 2012 . Automatic Parallelization: An Overview of Fundamental Compiler Techniques. Morgan & Claypool. Samuel P. Midkiff. 2012. Automatic Parallelization: An Overview of Fundamental Compiler Techniques. Morgan & Claypool."},{"volume-title":"Sparse Matrix Technology","author":"Pissanetzky S.","key":"e_1_2_1_23_1","unstructured":"S. Pissanetzky . 1984. Sparse Matrix Technology . Academic Press . S. Pissanetzky. 1984. Sparse Matrix Technology. Academic Press."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2009.37"},{"key":"e_1_2_1_25_1","unstructured":"Louis-Noel Pouchet. 2011. PolyBench: The Polyhedral Benchmark Suite. Available at http:\/\/www.cse.ohio-state.edu\/pouchet\/software\/polybench\/.  Louis-Noel Pouchet. 2011. PolyBench: The Polyhedral Benchmark Suite. Available at http:\/\/www.cse.ohio-state.edu\/pouchet\/software\/polybench\/."},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2012.6168952"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.5555\/1521747.1521799"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/1248377.1248415"},{"key":"e_1_2_1_29_1","volume-title":"4th USENIX Conf. on Hot Topics in Parallelism (HotPar\u201912)","author":"Saad Mohamed M.","year":"2012","unstructured":"Mohamed M. Saad , Mohamed Mohamedin , and Binoy Ravindran . 2012 . HydraVM: Extracting Parallelism from Legacy Sequential Code Using STM . In 4th USENIX Conf. on Hot Topics in Parallelism (HotPar\u201912) . Mohamed M. Saad, Mohamed Mohamedin, and Binoy Ravindran. 2012. HydraVM: Extracting Parallelism from Legacy Sequential Code Using STM. In 4th USENIX Conf. on Hot Topics in Parallelism (HotPar\u201912)."},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.5555\/2388996.2389118"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/223982.224451"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1498765.1498785"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/2503210.2503232"}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2633048","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2633048","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:56:11Z","timestamp":1750229771000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2633048"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2014,8,13]]},"references-count":33,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2014,10,27]]}},"alternative-id":["10.1145\/2633048"],"URL":"https:\/\/doi.org\/10.1145\/2633048","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"type":"print","value":"1544-3566"},{"type":"electronic","value":"1544-3973"}],"subject":[],"published":{"date-parts":[[2014,8,13]]},"assertion":[{"value":"2013-10-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-04-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-08-13","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}