I'm the author of DVCompute Simulator. It allows creating and running discrete event simulation models for different modes: sequential simulation, nested simulation, optimistic distributed one and conservative distributed simulation. The same unified approach works everywhere. Earlier I wrote about my work at this Rust forum.
The sequential simulation and nested simulation modes are fully available in the source code, which I decided to license under the terms of the Mozilla Public License v2.0 (MPL v2.0). The sequential simulation mode is the main use case that covers 95% of applications. The nested simulation is related to Theory of Games and it can be applied for estimating the optimal strategy, for example.
Two distributed simulation modes are destined for running the simulation on multi-core computers or even supercomputers. These modes share the same code base with two previous modes, but they already expect that there is some external implementation of the event queue. The binary interface for such implementations is predefined in the code of simulator. From my side, I decided to release the prebuilt versions with such implementations under another license, but actually similar implementations can be created by third party. The distributed simulation is a rare enough case. However, it is important that the very modeling method for distributed simulation is licensed under MPL v2.0. too.
Today I uploaded the corresponding crates here: https://crates.io/search?page=1&per_page=10&q=dvcompute
The repository with public part of DVCompute Simulator can be accessed at my page: GitHub - dsorokin/dvcompute: DVCompute Simulator
Unfortunately, when uploading the crates, I broke the link to examples. Instead, you can use the stated above repository. Cargo began throttling me, because I uploaded too many crates. So, I will fix the links later.
Also I prepared a short PDF tutorial on my web-site: https://www.aivikasoft.com/downloads/dvcompute/dvcompute-tutorial.pdf
Yoshkar-Ola, Mari El, Russia