#simulation

dvcompute_cons

Discrete event simulation library (conservative distributed simulation)

3 stable releases

1.3.5 Jan 12, 2022
1.3.4 Jan 6, 2022
1.3.3 Jan 5, 2022

#41 in Simulation

Download history 25/week @ 2021-12-31 33/week @ 2022-01-07 12/week @ 2022-01-14

70 downloads per month

MPL-2.0 license

565KB
13K SLoC

dvcompute_cons

This crate is a part of discrete event simulation framework DVCompute Simulator (registration number 2021660590 of Rospatent). The dvcompute_cons crate is destined for conservative distributed simulation, but the same code base is shared by the dvcompute crate destined for sequential simulation.

There are the following main crates: dvcompute (for sequential simulation), dvcompute_dist (for optimistic distributed simulation - from multicore computers till supercomputers), dvcompute_cons (for conservative distributed simulation - from multicore computers till supercomputers) and dvcompute_branch (for nested simulation - theory of games, estimation of the optimal strategy). All four crates are very close. They are based on the same method.

Requirements

In the case of conservative distributed simulation, it is expected that the dvcompute_mpi and dvcompute_core_cons dynamic (shared) libraries can be found by the operating system, when launching the executable file of the simulation model. You can build the dvcompute_mpi library yourself from the sources that require CMake, C++ compiler and some MPI implementation that you are going to use. Because of specific MPI implementation, this library cannot be unified. But the dvcompute_core_cons dynamic library must satisfy the predefined binary interface (it must implement the event queue). You can download the trial version that implements this interface from the author's website https://aivikasoft.com. This prebuilt version is a part of "Redistributable Code" portions of DVCompute Simulator.

Examples

You can find examples in the author's repository.

Documentation

Tutorial

Also you can read the PDF document DVCompute Simulator Tutorial.

Bibliography

  • Sorokin David. DVCompute Simulator for discrete event simulation. Prikladnaya informatika=Journal of Applied Informatics, 2021, vol.16, no.3, pp.93-108 (in Russian). DOI: 10.37791/2687-0649-2021-16-3-93-108

Tools

Also you can use the author's tool DVCompute Modeler for fast prototyping of your future models. The tool is available on the https://aivikasoft.com web site. It allows creating discrete event models and queue network models with help of the Python programming language. The tool is available for Windows, Linux and macOS from the author's web site. Then such models can be directly translated into Rust with help of DVCompute Simulator.

Licence

Copyright 2020-2022 David Sorokin david.sorokin@gmail.com, based in Yoshkar-Ola, Russia

This software is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.

Dependencies

~1–1.7MB
~37K SLoC