JuliaDynamics / Agents.jl

Agent-based modeling framework in Julia
https://juliadynamics.github.io/Agents.jl/stable/
MIT License
731 stars 118 forks source link

Distributed run! #279

Closed Jagirhussan closed 3 years ago

Jagirhussan commented 4 years ago

I have a fairly large model of 10^7 agents. While I am able to run this model on a large machine, it would be great to simulate such models on a cluster. Could you comment on how I solve models in a distributed manner?

Libbum commented 4 years ago

We used to have a distributed example, although our focus has been on other aspects of the framework recently. @kavir1698 has had success with large models before, so hopefully he can give you some pointers.

We track this issue in #243 and perhaps you can find some details in #96. From what I understand, this is possible at the moment, just not documented.

Libbum commented 4 years ago

Would be great if you could give us a MWE test case to work on if that's possible too!

kavir1698 commented 4 years ago

We currently implement pleasingly parallel computation, meaning that several simulations are run in parallel. But we do not have an API to run a single simulation on multiple cores. That would be problem specific, I guess. I have run simulations with about 6 million agents, but they were also on single machines.

Datseris commented 3 years ago

I'm closing this as this seems to be outside Agents.jl. A user can do anything distributed they want inside model_step!, it is system specific.