{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,14]],"date-time":"2026-03-14T09:53:38Z","timestamp":1773482018071,"version":"3.50.1"},"reference-count":72,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2023,6,13]],"date-time":"2023-06-13T00:00:00Z","timestamp":1686614400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. ACM Manag. Data"],"published-print":{"date-parts":[[2023,6,13]]},"abstract":"<jats:p>We generalize the bulk-synchronous parallel (BSP) processing model to make it better support agent-based simulations. Such simulations frequently exhibit hierarchical structure in their communication patterns which can be exploited to improve performance. We allow for the creation of temporary artificial network partitions during which agents synchronize only locally within their group in a way that does not compromise the correctness of a simulation. We have built a distributed engine, CloudCity, which uses this idea to improve the locality of computation, communication, and synchronization in such simulations. We experimentally evaluate the performance of our system on a benchmark of simulation workloads and compare it against other popular BSP-like systems, obtaining insights into the impact of various system design choices and optimization on simulation engine performance.<\/jats:p>","DOI":"10.1145\/3589296","type":"journal-article","created":{"date-parts":[[2023,6,20]],"date-time":"2023-06-20T20:26:45Z","timestamp":1687292805000},"page":"1-28","source":"Crossref","is-referenced-by-count":4,"title":["Generalizing Bulk-Synchronous Parallel Processing for Data Science: From Data to Threads and Agent-Based Simulations"],"prefix":"10.1145","volume":"1","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-4339-1876","authenticated-orcid":false,"given":"Zilu","family":"Tian","sequence":"first","affiliation":[{"name":"EPFL, Lausanne, Switzerland"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2041-7201","authenticated-orcid":false,"given":"Peter","family":"Lindner","sequence":"additional","affiliation":[{"name":"EPFL, Lausanne, Switzerland"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8196-5688","authenticated-orcid":false,"given":"Markus","family":"Nissl","sequence":"additional","affiliation":[{"name":"TU Wien, Vienna, Austria"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9130-7205","authenticated-orcid":false,"given":"Christoph","family":"Koch","sequence":"additional","affiliation":[{"name":"EPFL, Lausanne, Switzerland"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-6847-7274","authenticated-orcid":false,"given":"Val","family":"Tannen","sequence":"additional","affiliation":[{"name":"University of Pennsylvania, Philadelphia, PA, USA"}]}],"member":"320","published-online":{"date-parts":[[2023,6,20]]},"reference":[{"key":"e_1_2_2_1_1","unstructured":"David Adam. 2020. Special report: The simulations driving the world's response to COVID-19. https:\/\/www.nature.com\/articles\/d41586-020-01003--6"},{"key":"e_1_2_2_2_1","unstructured":"Akka Developers. 2011. Akka Documentation. https:\/\/akka.io\/"},{"key":"e_1_2_2_3_1","unstructured":"Apache Giraph Developers. 2011. Apache Giraph. https:\/\/giraph.apache.org\/"},{"key":"e_1_2_2_4_1","unstructured":"Apache Spark Developers. 2018. Apache Spark. https:\/\/spark.apache.org"},{"key":"e_1_2_2_5_1","volume-title":"Agent-based modeling meets gaming simulation","author":"Arai Kiyoshi","unstructured":"Kiyoshi Arai, Hiroshi Deguchi, and Hiroyuki Matsui. 2006. Agent-based modeling meets gaming simulation. Vol. 2. Springer Science & Business Media, Kisarazu, Chiba, Japan."},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1073\/pnas.072081299"},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1007\/3--540--47849--3_22"},{"key":"e_1_2_2_8_1","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511814068"},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/IPPS.1999.760442"},{"key":"e_1_2_2_10_1","volume-title":"Economics: Meltdown modelling. Nature 460, 7256","author":"Buchanan Mark","year":"2009","unstructured":"Mark Buchanan. 2009. Economics: Meltdown modelling. Nature 460, 7256 (2009), 680--682."},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1038\/ncomms9091"},{"key":"e_1_2_2_12_1","first-page":"28","article-title":"Apache Flink: Stream and Batch Processing in a Single Engine","volume":"36","author":"Carbone Paris","year":"2015","unstructured":"Paris Carbone, Asterios Katsifodimos, Stephan Ewen, Volker Markl, Seif Haridi, and Kostas Tzoumas. 2015. Apache Flink: Stream and Batch Processing in a Single Engine. Bulletin of the IEEE Computer Society Technical Committee on Data Engineering 36, 4 (2015), 28--38.","journal-title":"Bulletin of the IEEE Computer Society Technical Committee on Data Engineering"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1008113017444"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41467-020-20201-4"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1038\/srep08399"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.14778\/2824032.2824077"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCC.2012.79"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1177\/0037549712462620"},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/PyHPC51966.2020.00006"},{"key":"e_1_2_2_20_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41893-020-00649--4"},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41559-021-01517-w"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1462166.1462167"},{"key":"e_1_2_2_23_1","volume-title":"MapReduce: Simplified Data Processing on Large Clusters. In 6th Symposium on Operating System Design and Implementation (OSDI 2004","author":"Dean Jeffrey","year":"2004","unstructured":"Jeffrey Dean and Sanjay Ghemawat. 2004. MapReduce: Simplified Data Processing on Large Clusters. In 6th Symposium on Operating System Design and Implementation (OSDI 2004), San Francisco, California, USA, December 6--8, 2004, Eric A. Brewer and Peter Chen (Eds.). USENIX Association, San Francisco, California, USA, 137--150. http:\/\/www.usenix.org\/events\/osdi04\/tech\/dean.html"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1038\/srep00532"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.5751\/ES-11842-250403"},{"key":"e_1_2_2_26_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41562-019-0768-2"},{"key":"e_1_2_2_27_1","volume-title":"Axtell","author":"Epstein Joshua M.","year":"1996","unstructured":"Joshua M. Epstein and Robert L. Axtell. 1996. Growing Artificial Societies: Social Science from Bottom Up. The MIT Press, USA."},{"key":"e_1_2_2_28_1","first-page":"17","article-title":"On the evolution of random graphs","volume":"5","author":"Erd's Paul","year":"1960","unstructured":"Paul Erd's and Alfr\u00e9d R\u00e9nyi. 1960. On the evolution of random graphs. Publ. Math. Inst. Hung. Acad. Sci 5, 1 (1960), 17--60.","journal-title":"Publ. Math. Inst. Hung. Acad. Sci"},{"key":"e_1_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.1038\/460685a"},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1038\/nature04017"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1038\/nature04795"},{"key":"e_1_2_2_32_1","unstructured":"FLAME developers. 2012. FLAME Overview. http:\/\/flame.ac.uk\/docs\/overview.html Accessed: 2021-02-09."},{"key":"e_1_2_2_33_1","unstructured":"Flink Gelly Tutorial. 2015. Flink Gelly. https:\/\/flink.apache.org\/2015\/08\/24\/introducing-gelly-graph-processing-with-apache-flink\/#what-is-gelly"},{"key":"e_1_2_2_34_1","doi-asserted-by":"publisher","DOI":"10.15439\/2017F172"},{"key":"e_1_2_2_35_1","doi-asserted-by":"crossref","unstructured":"Martin Gardner. 1970. The fanstastic combinations of John Conway's new solitaire game \"life\". 120--123 pages.","DOI":"10.1038\/scientificamerican1070-120"},{"key":"e_1_2_2_36_1","volume-title":"Simulation for the Social Scientist","author":"Gilbert Nigel","unstructured":"Nigel Gilbert and Klaus G Troitzsch. 2005. Simulation for the Social Scientist. Open University Press, USA."},{"key":"e_1_2_2_37_1","volume-title":"11th USENIX Symposium on Operating Systems Design and Implementation, OSDI '14","author":"Gonzalez Joseph E.","year":"2014","unstructured":"Joseph E. Gonzalez, Reynold S. Xin, Ankur Dave, Daniel Crankshaw, Michael J. Franklin, and Ion Stoica. 2014. GraphX: Graph Processing in a Distributed Dataflow Framework. In 11th USENIX Symposium on Operating Systems Design and Implementation, OSDI '14, Broomfield, CO, USA, October 6--8, 2014, Jason Flinn and Hank Levy (Eds.). USENIX Association, USA, 599--613. https:\/\/www.usenix.org\/conference\/osdi14\/technical-sessions\/presentation\/gonzalez"},{"key":"e_1_2_2_38_1","doi-asserted-by":"publisher","DOI":"10.1126\/science.1254421"},{"key":"e_1_2_2_39_1","volume-title":"Kathryn Blackmond Laskey, and Samuel Leinhardt","author":"Holland Paul W","year":"1983","unstructured":"Paul W Holland, Kathryn Blackmond Laskey, and Samuel Leinhardt. 1983. Stochastic blockmodels: First steps. Social networks 5, 2 (1983), 109--137."},{"key":"e_1_2_2_41_1","volume-title":"Conflict resolution: Wars without end. Nature 519, 7542","author":"Jones Dan","year":"2015","unstructured":"Dan Jones. 2015. Conflict resolution: Wars without end. Nature 519, 7542 (2015), 148--150."},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1109\/EMS.2009.53"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1057\/s41599-021-00830-w"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1126\/science.1142734"},{"key":"e_1_2_2_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/1807167.1807184"},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41560-021-00934--2"},{"key":"e_1_2_2_47_1","first-page":"1","article-title":"Agent-based modeling on a national scale--Experiences from SWISSland","volume":"30","author":"M\u00f6hring A","year":"2016","unstructured":"A M\u00f6hring, G Mack, A Zimmermann, A Ferjani, A Schmidt, and S Mann. 2016. Agent-based modeling on a national scale--Experiences from SWISSland. Agroscope Science 30, 2016 (2016), 1--56.","journal-title":"Agroscope Science"},{"key":"e_1_2_2_48_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11227-018--2688--8"},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41598-021--84192-y"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10584-019-02566-8"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1186\/2194--3206--1--3"},{"key":"e_1_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41562-020-0885-y"},{"key":"e_1_2_2_53_1","volume-title":"A Review of Platforms for the Development of Agent Systems. CoRR abs\/2007.08961","author":"Pal Constantin-Valentin","year":"2020","unstructured":"Constantin-Valentin Pal, Florin Leon, Marcin Paprzycki, and Maria Ganzha. 2020. A Review of Platforms for the Development of Agent Systems. CoRR abs\/2007.08961 (2020), 1--40. arXiv:2007.08961 https:\/\/arxiv.org\/abs\/2007.08961"},{"key":"e_1_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1016\/0167--2789(94)90287--9"},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/3425898.3426961"},{"key":"e_1_2_2_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/3136000.3136005"},{"key":"e_1_2_2_57_1","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0024723"},{"key":"e_1_2_2_58_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0378--4371(01)00312-0"},{"key":"e_1_2_2_59_1","doi-asserted-by":"publisher","DOI":"10.1038\/nclimate2967"},{"key":"e_1_2_2_60_1","unstructured":"Sara Reardon. 2018. How digital drug users could help to halt the US opioid epidemic. https:\/\/www.nature.com\/articles\/d41586-018-05939--8"},{"key":"e_1_2_2_61_1","unstructured":"Repast HPC developers. 2013. Repast HPC Reference Manual. https:\/\/repast.github.io\/hpc_ tutorial\/RepastHPC_Demo_01_Step_07.html"},{"key":"e_1_2_2_62_1","unstructured":"Repast HPC developers. 2023. Repast HPC API. https:\/\/repast.github.io\/docs\/api\/hpc\/repast_ hpc\/classrepast_1_1_schedule.html#details Accessed: 2023-03-02."},{"key":"e_1_2_2_63_1","doi-asserted-by":"publisher","DOI":"10.1080\/0022250X.1971.9989794"},{"key":"e_1_2_2_64_1","volume-title":"Article 10","author":"Silverman Eric","year":"2021","unstructured":"Eric Silverman, Umberto Gostoli, Stefano Picascia, Jonatan Almagor, Marc McCann, Richard Shawm, and Claudio Angione. 2021. Situating agent-based modelling in population health research. Emerging Themes in Epidemiology 18, Article 10 (2021), 15 pages."},{"key":"e_1_2_2_65_1","volume-title":"International conference on complex systems","volume":"21","author":"Tisue Seth","year":"2004","unstructured":"Seth Tisue and Uri Wilensky. 2004. Netlogo: A simple environment for modeling complexity. In International conference on complex systems, Vol. 21. Citeseer, Boston, MA, 16--21."},{"key":"e_1_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41467-021--26558--4"},{"key":"e_1_2_2_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/79173.79181"},{"key":"e_1_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1007\/3--540--19027--9_23"},{"key":"e_1_2_2_69_1","unstructured":"M. Mitchell Waldrop. 2018. What if a nuke goes off in Washington D.C.? https:\/\/www.science.org\/content\/article\/what-if-nuke-goes-washington-dc-simulations-artificial-societies-help-planners-cope"},{"key":"e_1_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jhg.2010.03.006"},{"key":"e_1_2_2_71_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41598-019-48668-2"},{"key":"e_1_2_2_72_1","volume-title":"Proceedings of the 9th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2012","author":"Zaharia Matei","year":"2012","unstructured":"Matei Zaharia, Mosharaf Chowdhury, Tathagata Das, Ankur Dave, Justin Ma, Murphy McCauly, Michael J. Franklin, Scott Shenker, and Ion Stoica. 2012. Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing. In Proceedings of the 9th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2012, San Jose, CA, USA, April 25--27, 2012, Steven D. Gribble and Dina Katabi (Eds.). USENIX Association, San Jose, 15--28. https:\/\/www.usenix.org\/conference\/nsdi12\/technical-sessions\/presentation\/zaharia"},{"key":"e_1_2_2_73_1","doi-asserted-by":"publisher","DOI":"10.1038\/s41598-018-36654-z"}],"container-title":["Proceedings of the ACM on Management of Data"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3589296","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3589296","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T16:46:13Z","timestamp":1750178773000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3589296"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,6,13]]},"references-count":72,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2023,6,13]]}},"alternative-id":["10.1145\/3589296"],"URL":"https:\/\/doi.org\/10.1145\/3589296","relation":{},"ISSN":["2836-6573"],"issn-type":[{"value":"2836-6573","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,6,13]]}}}