{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,9]],"date-time":"2026-01-09T20:04:32Z","timestamp":1767989072267,"version":"3.49.0"},"reference-count":26,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2018,9,30]],"date-time":"2018-09-30T00:00:00Z","timestamp":1538265600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Exascale Computing Project","award":["17-SC-20-SC"],"award-info":[{"award-number":["17-SC-20-SC"]}]},{"name":"Science Technology and Innovation Committee of Shenzhen Municipality","award":["JCYJ20160331190123578 and GJHZ20170314154722613"],"award-info":[{"award-number":["JCYJ20160331190123578 and GJHZ20170314154722613"]}]},{"name":"JSPS KAKENHI","award":["23220003"],"award-info":[{"award-number":["23220003"]}]},{"DOI":"10.13039\/100006132","name":"U.S. Department of Energy Office of Science","doi-asserted-by":"crossref","award":["DE-AC02-06CH11357"],"award-info":[{"award-number":["DE-AC02-06CH11357"]}],"id":[{"id":"10.13039\/100006132","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/100006168","name":"National Nuclear Security Administration","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100006168","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Parallel Comput."],"published-print":{"date-parts":[[2018,9,30]]},"abstract":"<jats:p>\n            In this article, we investigate\n            <jats:italic>contention management<\/jats:italic>\n            in lock-based thread-safe MPI libraries. Specifically, we make two assumptions: (1) locks are the only form of synchronization when protecting communication paths; and (2) contention occurs, and thus serialization is unavoidable. Our work distinguishes between lock acquisitions with respect to work being performed inside a critical section;\n            <jats:italic>productive<\/jats:italic>\n            vs.\n            <jats:italic>unproductive<\/jats:italic>\n            . Waiting for message reception without doing anything else inside a critical section is an example of unproductive lock acquisition. We show that the high-throughput nature of modern scalable locking protocols translates into better communication progress for throughput-intensive MPI communication but negatively impacts latency-sensitive communication because of overzealous unproductive lock acquisition. To reduce unproductive lock acquisitions, we devised a method that promotes threads with productive work using a generic two-level priority locking protocol. Our results show that using a high-throughput protocol for productive work and a fair protocol for less productive code paths ensures the best tradeoff for fine-grained communication, whereas a fair protocol is sufficient for more coarse-grained communication. Although these efforts have been rewarding, scalability degradation remains significant. We discuss techniques that diverge from the pure locking model and offer the potential to further improve scalability.\n          <\/jats:p>","DOI":"10.1145\/3275443","type":"journal-article","created":{"date-parts":[[2019,1,8]],"date-time":"2019-01-08T15:53:12Z","timestamp":1546962792000},"page":"1-21","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":9,"title":["Lock Contention Management in Multithreaded MPI"],"prefix":"10.1145","volume":"5","author":[{"given":"Abdelhalim","family":"Amer","sequence":"first","affiliation":[{"name":"Argonne National Laboratory, USA"}]},{"given":"Huiwei","family":"Lu","sequence":"additional","affiliation":[{"name":"Argonne National Laboratory, USA"}]},{"given":"Pavan","family":"Balaji","sequence":"additional","affiliation":[{"name":"Argonne National Laboratory, USA"}]},{"given":"Milind","family":"Chabbi","sequence":"additional","affiliation":[{"name":"Hewlett-Packard Labs, USA"}]},{"given":"Yanjie","family":"Wei","sequence":"additional","affiliation":[{"name":"Shenzhen Institute of Advanced Technologies, Chinese Academy of Sciences, China"}]},{"given":"Jeff","family":"Hammond","sequence":"additional","affiliation":[{"name":"Intel, USA"}]},{"given":"Satoshi","family":"Matsuoka","sequence":"additional","affiliation":[{"name":"Tokyo Institute of Technology, Japan"}]}],"member":"320","published-online":{"date-parts":[[2019,1,8]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2686884"},{"key":"e_1_2_1_2_1","unstructured":"Abdelhalim Amer Pavan Balaji Wesley Bland William Gropp Rob Latham Huiwei Lu Lena Oden Antonio Pena Ken Raffenetti Sangmin Seo etal 2015. MPICH User\u2019s Guide.  Abdelhalim Amer Pavan Balaji Wesley Bland William Gropp Rob Latham Huiwei Lu Lena Oden Antonio Pena Ken Raffenetti Sangmin Seo et al. 2015. MPICH User\u2019s Guide."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/CCGrid.2015.93"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2688500.2688522"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.13182\/NSE98-1"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1177\/1094342009360206"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/PDP.2010.67"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2442516.2442532"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/3018743.3018768"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2688500.2688503"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2851141.2851166"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1109\/CCGRID.2017.65"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/3064176.3064203"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2686884"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/2488551.2488553"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.5555\/1894122.1894125"},{"key":"e_1_2_1_18_1","volume-title":"Retrieved","author":"Drepper Ulrich","year":"2009","unstructured":"Ulrich Drepper . 2009 . Futexes are tricky . Retrieved October 18, 2016 from https:\/\/www.akkadia.org\/drepper\/futex.pdf. Red Hat Inc. (2009). Ulrich Drepper. 2009. Futexes are tricky. Retrieved October 18, 2016 from https:\/\/www.akkadia.org\/drepper\/futex.pdf. Red Hat Inc. (2009)."},{"key":"e_1_2_1_19_1","volume-title":"Retrieved","author":"Drepper Ulrich","year":"2005","unstructured":"Ulrich Drepper and Ingo Molnar . 2005 . The native POSIX thread library for Linux . Retrieved October 18, 2016 from https:\/\/www.akkadia.org\/drepper\/nptl-design.pdf. White Paper, Red Hat Inc. (2005). Ulrich Drepper and Ingo Molnar. 2005. The native POSIX thread library for Linux. Retrieved October 18, 2016 from https:\/\/www.akkadia.org\/drepper\/nptl-design.pdf. White Paper, Red Hat Inc. (2005)."},{"key":"e_1_2_1_20_1","volume-title":"AUUG Conference Proceedings.","author":"Franke Hubertus","unstructured":"Hubertus Franke , Rusty Russell , and Matthew Kirkwood . {n.d.}. Fuss, futexes and furwocks: Fast userlevel locking in linux . In AUUG Conference Proceedings. Hubertus Franke, Rusty Russell, and Matthew Kirkwood. {n.d.}. Fuss, futexes and furwocks: Fast userlevel locking in linux. In AUUG Conference Proceedings."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/CLUSTER.2010.11"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.parco.2007.07.002"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.5555\/1894122.1894129"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00607-013-0324-2"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2851141.2851164"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/103727.103729"},{"key":"e_1_2_1_27_1","volume-title":"MPI: A Message-Passing Interface Standard Version 3.1. Technical Report.","author":"Interface Forum Message Passing","year":"2015","unstructured":"Message Passing Interface Forum . 2015 . MPI: A Message-Passing Interface Standard Version 3.1. Technical Report. Message Passing Interface Forum. 2015. MPI: A Message-Passing Interface Standard Version 3.1. Technical Report."}],"container-title":["ACM Transactions on Parallel Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3275443","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3275443","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3275443","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T00:44:39Z","timestamp":1750207479000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3275443"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,9,30]]},"references-count":26,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2018,9,30]]}},"alternative-id":["10.1145\/3275443"],"URL":"https:\/\/doi.org\/10.1145\/3275443","relation":{},"ISSN":["2329-4949","2329-4957"],"issn-type":[{"value":"2329-4949","type":"print"},{"value":"2329-4957","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,9,30]]},"assertion":[{"value":"2016-05-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-07-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2019-01-08","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}