Authors:
Sapana Kale
1
;
Shabbir Bawaji
1
;
Akshay Dewan
1
;
Meenakshi Dhanani
1
;
Kritika Gupta
1
;
Harshal Hayatnagarkar
1
;
Swapnil Khandekar
1
;
Jayanta Kshirsagar
1
;
Gautam Menon
2
and
Saurabh Mookherjee
1
Affiliations:
1
Engineering for Research (e4r), Thoughtworks Technologies, Yerwada, Pune, 411 006, India
;
2
Ashoka University, Sonipat, Haryana, 131029, India
Keyword(s):
Epidemiology, Epidemic Simulations, Agent-Based Simulations, Large-Scale Simulations, Agent-Based Modeling, Parallel Computing, Distributed Computing.
Abstract:
EpiRust is an open source, large-scale agent-based epidemiological simulation framework developed using
Rust language. It has been developed with three key factors in mind namely 1. Robustness, 2. Flexibility, and
3. Performance. We could demonstrate EpiRust scaling up to a few millions of agents, for example a COVID19 infection spreading through Pune city with its 3.2 million population. Our goal is to simulate larger cities
like Mumbai (with 12 million population) first, and then entire India with its 1+ billion population. However,
the current implementation is not scalable for this purpose, since it has a well-tuned serial implementation
at its core. In this paper, we share our ongoing journey of developing it as a highly scalable cloud ready
parallel and distributed implementation to simulate up to 100 million agents. We demonstrate performance
improvement for Pune and Mumbai cities with 3.2 and 12 million populations respectively. In addition, we
discuss challenges in s
imulating 100 million agents.
(More)