{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,29]],"date-time":"2026-05-29T11:17:37Z","timestamp":1780053457146,"version":"3.54.0"},"reference-count":25,"publisher":"Association for Computing Machinery (ACM)","issue":"5","license":[{"start":{"date-parts":[[2012,5,1]],"date-time":"2012-05-01T00:00:00Z","timestamp":1335830400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000006","name":"Office of Naval Research","doi-asserted-by":"publisher","award":["N00014-09-10757"],"award-info":[{"award-number":["N00014-09-10757"]}],"id":[{"id":"10.13039\/100000006","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/100000144","name":"Division of Computer and Network Systems","doi-asserted-by":"publisher","award":["CNS-1017206"],"award-info":[{"award-number":["CNS-1017206"]}],"id":[{"id":"10.13039\/100000144","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Commun. ACM"],"published-print":{"date-parts":[[2012,5]]},"abstract":"<jats:p>\n            Deterministic execution offers many benefits for debugging, fault tolerance, and security. Current methods of executing\n            <jats:italic>parallel<\/jats:italic>\n            programs deterministically, however, often incur high costs, allow misbehaved software to defeat repeatability, and transform time-dependent races into input-or path-dependent races without eliminating them. We introduce a new parallel programming model addressing these issues, and use Determinator, a proof-of-concept OS, to demonstrate the model's practicality. Determinator's microkernel application programming interface (API) provides only \"shared-nothing\" address spaces and deterministic interprocess communication primitives to make execution of all unprivileged code---well-behaved or not---precisely repeatable. Atop this microkernel, Determinator's user-level runtime offers a\n            <jats:italic>private workspace<\/jats:italic>\n            model for both thread-level and process-level parallel programming. This model avoids the introduction of read\/write data races, and converts write\/write races into reliably detected conflicts. Coarse-grained parallel benchmarks perform and scale comparably to non-deterministic systems, both on multicore PCs and across nodes in a distributed cluster.\n          <\/jats:p>","DOI":"10.1145\/2160718.2160742","type":"journal-article","created":{"date-parts":[[2012,4,24]],"date-time":"2012-04-24T18:41:10Z","timestamp":1335292870000},"page":"111-119","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":26,"title":["Efficient system-enforced deterministic parallelism"],"prefix":"10.1145","volume":"55","author":[{"given":"Amittai","family":"Aviram","sequence":"first","affiliation":[{"name":"Yale University, New Haven, CT"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Shu-Chun","family":"Weng","sequence":"additional","affiliation":[{"name":"Yale University, New Haven, CT"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sen","family":"Hu","sequence":"additional","affiliation":[{"name":"Yale University, New Haven, CT"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Bryan","family":"Ford","sequence":"additional","affiliation":[{"name":"Yale University, New Haven, CT"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2012,5]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.485843"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1002\/stvr.281"},{"key":"e_1_2_1_3_1","volume-title":"2nd Workshop on Determinism and Correctness in Parallel Programming (WoDet) (Mar.","author":"Aviram A.","year":"2011","unstructured":"Aviram , A. , Ford , B. , Zhang , Y. Workspace consistency : A programming model for shared memory parallelism . In 2nd Workshop on Determinism and Correctness in Parallel Programming (WoDet) (Mar. 2011 ). Aviram, A., Ford, B., Zhang, Y. Workspace consistency: A programming model for shared memory parallelism. In 2nd Workshop on Determinism and Correctness in Parallel Programming (WoDet) (Mar. 2011)."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1866835.1866854"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.5555\/1247360.1247401"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/54331.54333"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/223784.223785"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1736020.1736029"},{"key":"e_1_2_1_9_1","volume-title":"9th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Oct.","author":"Bergan T.","year":"2010","unstructured":"Bergan , T. et al. Deterministic process groups in dOS . In 9th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Oct. 2010 ). Bergan, T. et al. Deterministic process groups in dOS. In 9th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Oct. 2010)."},{"key":"e_1_2_1_10_1","volume-title":"8th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Dec.","author":"Boyd-Wickizer S.","year":"2008","unstructured":"Boyd-Wickizer , S. et al. Corey: An operating system for many cores . In 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Dec. 2008 ). Boyd-Wickizer, S. et al. Corey: An operating system for many cores. In 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Dec. 2008)."},{"key":"e_1_2_1_11_1","volume-title":"3rd USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Feb.","author":"Castro M.","year":"1999","unstructured":"Castro , M. , Liskov , B. Practical byzantine fault tolerance . In 3rd USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Feb. 1999 ), 173--186. Castro, M., Liskov, B. Practical byzantine fault tolerance. In 3rd USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Feb. 1999), 173--186."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1060289.1060309"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1346256.1346273"},{"key":"e_1_2_1_14_1","volume-title":"PIOS: Parallel instructional operating system","author":"Ford B.","year":"2010","unstructured":"Ford , B. PIOS: Parallel instructional operating system , 2010 . http:\/\/zoo.cs.yale.edu\/classes\/cs422\/pios. Ford, B. PIOS: Parallel instructional operating system, 2010. http:\/\/zoo.cs.yale.edu\/classes\/cs422\/pios."},{"key":"e_1_2_1_15_1","unstructured":"git: the fast version control system. http:\/\/git-scm.com\/.  git: the fast version control system. http:\/\/git-scm.com\/."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1294261.1294279"},{"key":"e_1_2_1_17_1","unstructured":"Kaashoek F. et al. 6.828: Operating system engineering. http:\/\/pdos.csail.mit.edu\/6.828\/.  Kaashoek F. et al. 6.828: Operating system engineering. http:\/\/pdos.csail.mit.edu\/6.828\/."},{"key":"e_1_2_1_18_1","first-page":"471","volume-title":"Information Processing '74: Proceedings of the IFIP Congress","author":"Kahn G.","year":"1974","unstructured":"Kahn , G. The Semantics of a Simple Language for Parallel Programming \", In Information Processing '74: Proceedings of the IFIP Congress ( 1974 ), pp. 471 -- 475 . Kahn, G. The Semantics of a Simple Language for Parallel Programming\", In Information Processing '74: Proceedings of the IFIP Congress (1974), pp. 471--475."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/TC.1987.1676929"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2006.180"},{"key":"e_1_2_1_21_1","volume-title":"8th USENIX Symposium on Operating Systems Design and Implementation (OSDI)","author":"Musuvathi M.","year":"2008","unstructured":"Musuvathi , M. et al. Finding and reproducing heisenbugs in concurrent programs . In 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI) ( Berkeley, California, USA , 2008 ), USENIX Association. Musuvathi, M. et al. Finding and reproducing heisenbugs in concurrent programs. In 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI) (Berkeley, California, USA, 2008), USENIX Association."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508244.1508256"},{"key":"e_1_2_1_23_1","volume-title":"May","author":"Open MP","year":"2008","unstructured":"Open MP Architecture Review Board . OpenMP application program interface version 3.0 , May 2008 . OpenMP Architecture Review Board. OpenMP application program interface version 3.0, May 2008."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1983.236733"},{"key":"e_1_2_1_25_1","volume-title":"4th USENIX Conference on File and Storage Technologies (FAST) (Dec.","author":"Wei J.","year":"2005","unstructured":"Wei , J. , Pu , C. TOCTTOU vulnerabilities in UNIX-style file systems: An anatomical study . In 4th USENIX Conference on File and Storage Technologies (FAST) (Dec. 2005 ). Wei, J., Pu, C. TOCTTOU vulnerabilities in UNIX-style file systems: An anatomical study. In 4th USENIX Conference on File and Storage Technologies (FAST) (Dec. 2005)."}],"container-title":["Communications of the ACM"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2160718.2160742","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2160718.2160742","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:06:40Z","timestamp":1750241200000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2160718.2160742"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,5]]},"references-count":25,"journal-issue":{"issue":"5","published-print":{"date-parts":[[2012,5]]}},"alternative-id":["10.1145\/2160718.2160742"],"URL":"https:\/\/doi.org\/10.1145\/2160718.2160742","relation":{},"ISSN":["0001-0782","1557-7317"],"issn-type":[{"value":"0001-0782","type":"print"},{"value":"1557-7317","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012,5]]},"assertion":[{"value":"2012-05-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}