{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,1]],"date-time":"2026-01-01T10:10:03Z","timestamp":1767262203605,"version":"3.41.0"},"reference-count":41,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2015,11,16]],"date-time":"2015-11-16T00:00:00Z","timestamp":1447632000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100007602","name":"University of California Riverside","doi-asserted-by":"crossref","id":[{"id":"10.13039\/100007602","id-type":"DOI","asserted-by":"crossref"}]},{"name":"National Science Foundation","award":["CCF-1157377, CCF-0963996, CCF-0905509 and CSR-0912850"],"award-info":[{"award-number":["CCF-1157377, CCF-0963996, CCF-0905509 and CSR-0912850"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2016,1,7]]},"abstract":"<jats:p>\n            Schedulers used by modern OSs (e.g., Oracle Solaris 11\u2122 and GNU\/Linux) balance load by balancing the number of threads in run queues of different cores. While this approach is effective for a single CPU multicore system, we show that it can lead to a significant load imbalance across CPUs of a multi-CPU multicore system. Because different threads of a multithreaded application often exhibit different levels of CPU utilization, load cannot be measured in terms of the number of threads alone. We propose\n            <jats:italic>Tumbler<\/jats:italic>\n            that migrates the threads of a multithreaded program across multiple CPUs to balance the load across the CPUs. While Tumbler distributes the threads equally across the CPUs, its assignment of threads to CPUs is aimed at minimizing the variation in utilization of different CPUs to achieve load balance. We evaluated Tumbler using a wide variety of 35 multithreaded applications, and our experimental results show that Tumbler outperforms both Oracle Solaris 11\u2122 and GNU\/Linux.\n          <\/jats:p>","DOI":"10.1145\/2827698","type":"journal-article","created":{"date-parts":[[2015,11,18]],"date-time":"2015-11-18T13:42:28Z","timestamp":1447854148000},"page":"1-24","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":5,"title":["Tumbler"],"prefix":"10.1145","volume":"12","author":[{"given":"Kishore Kumar","family":"Pusukuri","sequence":"first","affiliation":[{"name":"University of California, Riverside"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Rajiv","family":"Gupta","sequence":"additional","affiliation":[{"name":"University of California, Riverside"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Laxmi N.","family":"Bhuyan","sequence":"additional","affiliation":[{"name":"University of California, Riverside"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2015,11,16]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1454115.1454128"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.5555\/2002181.2002182"},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI\u201908)","author":"Boyd-Wickizer Silas","year":"2008","unstructured":"Silas Boyd-Wickizer , Haibo Chen , Rong Chen , Yandong Mao , Frans Kaashoek , Robert Morris , Aleksey Pesterev , Lex Stein , Ming Wu , Yuehua Dai , Yang Zhang , and Zheng Zhang . 2008 . Corey: An operating system for many cores . In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI\u201908) . USENIX Association, Berkeley, CA, 43--57. http:\/\/dl.acm.org\/citation.cfm?id&equals; 1855741.1855745 Silas Boyd-Wickizer, Haibo Chen, Rong Chen, Yandong Mao, Frans Kaashoek, Robert Morris, Aleksey Pesterev, Lex Stein, Ming Wu, Yuehua Dai, Yang Zhang, and Zheng Zhang. 2008. Corey: An operating system for many cores. In Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation (OSDI\u201908). USENIX Association, Berkeley, CA, 43--57. http:\/\/dl.acm.org\/citation.cfm?id&equals;1855741.1855745"},{"volume-title":"USENIX Systems on USENIX Experiences with Distributed and Multiprocessor Systems -","author":"Brecht Timothy","key":"e_1_2_1_4_1","unstructured":"Timothy Brecht . 1993. On the importance of parallel application placement in NUMA multiprocessors . In USENIX Systems on USENIX Experiences with Distributed and Multiprocessor Systems - Volume 4 (Sedms\u201993). USENIX Association , Berkeley, CA, 1--1. Timothy Brecht. 1993. On the importance of parallel application placement in NUMA multiprocessors. In USENIX Systems on USENIX Experiences with Distributed and Multiprocessor Systems - Volume 4 (Sedms\u201993). USENIX Association, Berkeley, CA, 1--1."},{"volume-title":"Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC\u201904)","author":"Cantrill Bryan M.","key":"e_1_2_1_5_1","unstructured":"Bryan M. Cantrill , Michael W. Shapiro , and Adam H. Leventhal . 2004. Dynamic instrumentation of production systems . In Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC\u201904) . USENIX Association, Berkeley, CA, 2--2. Bryan M. Cantrill, Michael W. Shapiro, and Adam H. Leventhal. 2004. Dynamic instrumentation of production systems. In Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC\u201904). USENIX Association, Berkeley, CA, 2--2."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/195473.195485"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2451116.2451141"},{"key":"e_1_2_1_8_1","unstructured":"datacache. 2012. Data Cache Benchmark. http:\/\/parsa.epfl.ch\/cloudsuite\/memcached.html.  datacache. 2012. Data Cache Benchmark. http:\/\/parsa.epfl.ch\/cloudsuite\/memcached.html."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2686884"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/2150976.2150982"},{"key":"e_1_2_1_11_1","first-page":"1012894","article-title":"Distributed caching with memcached","volume":"1012889","author":"Fitzpatrick Brad","year":"2004","unstructured":"Brad Fitzpatrick . 2004 . Distributed caching with memcached . Linux J. 2004, 124 (Aug. 2004), 5. http:\/\/dl.acm.org\/citation.cfm?id&equals; 1012889 . 1012894 Brad Fitzpatrick. 2004. Distributed caching with memcached. Linux J. 2004, 124 (Aug. 2004), 5. http:\/\/dl.acm.org\/citation.cfm?id&equals;1012889.1012894","journal-title":"Linux"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/107972.107985"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2592798.2592807"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/1996130.1996134"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2150976.2151001"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1736020.1736035"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2008.48"},{"key":"e_1_2_1_18_1","volume-title":"Proceedings of the 2012 USENIX Conference on Annual Technical Conference (USENIX ATC\u201912)","author":"Lozi Jean-Pierre","year":"2012","unstructured":"Jean-Pierre Lozi , Florian David , Ga\u00ebl Thomas , Julia Lawall , and Gilles Muller . 2012 . Remote core locking: Migrating critical-section execution to improve the performance of multithreaded applications . In Proceedings of the 2012 USENIX Conference on Annual Technical Conference (USENIX ATC\u201912) . USENIX Association, Berkeley, CA, 6--6. Jean-Pierre Lozi, Florian David, Ga\u00ebl Thomas, Julia Lawall, and Gilles Muller. 2012. Remote core locking: Migrating critical-section execution to improve the performance of multithreaded applications. In Proceedings of the 2012 USENIX Conference on Annual Technical Conference (USENIX ATC\u201912). USENIX Association, Berkeley, CA, 6--6."},{"key":"e_1_2_1_19_1","volume-title":"Solaris Internals","author":"McDougall Richard","unstructured":"Richard McDougall and Jim Mauro . 2006. Solaris Internals , 2 nd ed. Prentice Hall . Richard McDougall and Jim Mauro. 2006. Solaris Internals, 2nd ed. Prentice Hall.","edition":"2"},{"key":"e_1_2_1_20_1","unstructured":"R. McDougall J. Mauro and B. Gregg. 2006. Solaris Performance and Tools: DTrace and MDB Techniques for Solaris 10 and OpenSolaris. Prentice Hall.   R. McDougall J. Mauro and B. Gregg. 2006. Solaris Performance and Tools: DTrace and MDB Techniques for Solaris 10 and OpenSolaris. Prentice Hall."},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/377769.377780"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1755913.1755930"},{"key":"e_1_2_1_23_1","unstructured":"pbzip2. 2001. PBZIP2. http:\/\/compression.ca\/pbzip2\/.  pbzip2. 2001. PBZIP2. http:\/\/compression.ca\/pbzip2\/."},{"key":"e_1_2_1_24_1","volume-title":"Proceedings of the 2nd USENIX Conference on Hot Topics in Parallelism (HotPar\u201910)","author":"Peter Simon","year":"2010","unstructured":"Simon Peter , Adrian Sch\u00fcpbach , Paul Barham , Andrew Baumann , Rebecca Isaacs , Tim Harris , and Timothy Roscoe . 2010 . Design principles for end-to-end multicore schedulers . In Proceedings of the 2nd USENIX Conference on Hot Topics in Parallelism (HotPar\u201910) . USENIX Association, Berkeley, CA, 10--10. Simon Peter, Adrian Sch\u00fcpbach, Paul Barham, Andrew Baumann, Rebecca Isaacs, Tim Harris, and Timothy Roscoe. 2010. Design principles for end-to-end multicore schedulers. In Proceedings of the 2nd USENIX Conference on Hot Topics in Parallelism (HotPar\u201910). USENIX Association, Berkeley, CA, 10--10."},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2011.8"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2011.6114208"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/2400682.2400704"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2628071.2628074"},{"key":"e_1_2_1_29_1","unstructured":"SPECOMP. 2001. http:\/\/www.spec.org\/omp.  SPECOMP. 2001. http:\/\/www.spec.org\/omp."},{"volume-title":"Workshop on Operating System Interference in High Performance Applications.","author":"Sridharan Srinivas","key":"e_1_2_1_30_1","unstructured":"Srinivas Sridharan , Brett Keck , Richard C. Murphy , Surendar Chandra , and Peter M. Kogge . 2006. Thread migration to improve synchronization performance . In Workshop on Operating System Interference in High Performance Applications. Srinivas Sridharan, Brett Keck, Richard C. Murphy, Surendar Chandra, and Peter M. Kogge. 2006. Thread migration to improve synchronization performance. In Workshop on Operating System Interference in High Performance Applications."},{"volume-title":"Revised Papers from the 7th International Workshop on Job Scheduling Strategies for Parallel Processing (JSSPP\u201901)","author":"Suh G. Edward","key":"e_1_2_1_31_1","unstructured":"G. Edward Suh , Larry Rudolph , and Srinivas Devadas . 2001. Effects of memory performance on parallel job scheduling . In Revised Papers from the 7th International Workshop on Job Scheduling Strategies for Parallel Processing (JSSPP\u201901) . Springer-Verlag , London , 116--132. http:\/\/dl.acm.org\/citation.cfm?id&equals;646382.689689 G. Edward Suh, Larry Rudolph, and Srinivas Devadas. 2001. Effects of memory performance on parallel job scheduling. In Revised Papers from the 7th International Workshop on Job Scheduling Strategies for Parallel Processing (JSSPP\u201901). Springer-Verlag, London, 116--132. http:\/\/dl.acm.org\/citation.cfm?id&equals;646382.689689"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1272996.1273004"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/191995.192027"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/237090.237205"},{"key":"e_1_2_1_35_1","unstructured":"VMware. 2005. VMware ESX Server 2 NUMA Support. White Paper. Retrieved from http:\/\/www.vmware.com\/pdf\/esx2_NUMA.pdf.  VMware. 2005. VMware ESX Server 2 NUMA Support. White Paper. Retrieved from http:\/\/www.vmware.com\/pdf\/esx2_NUMA.pdf."},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/1531793.1531805"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/223982.223990"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/1449764.1449778"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2009.5306783"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1693453.1693482"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1736020.1736036"}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2827698","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2827698","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T05:43:23Z","timestamp":1750225403000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2827698"}},"subtitle":["An Effective Load-Balancing Technique for Multi-CPU Multicore Systems"],"short-title":[],"issued":{"date-parts":[[2015,11,16]]},"references-count":41,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2016,1,7]]}},"alternative-id":["10.1145\/2827698"],"URL":"https:\/\/doi.org\/10.1145\/2827698","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"type":"print","value":"1544-3566"},{"type":"electronic","value":"1544-3973"}],"subject":[],"published":{"date-parts":[[2015,11,16]]},"assertion":[{"value":"2015-06-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-09-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-11-16","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}