Jump to content

SimGrid

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Matthijs16 (talk | contribs) at 20:17, 20 April 2025. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
SimGrid
Initial release1998 (1998)[1]
Stable release
4.0 / March 12, 2025; 60 days ago (2025-03-12)
Repositoryhttps://framagit.org/simgrid/simgrid
Written inCore: C++; Bindings: Python.
PlatformUnix, Mac OS X, Microsoft Windows
TypeDistributed system simulator, Network simulator, Model checking
LicenseGNU Lesser General Public License[2]
Websitesimgrid.org

SimGrid is a free and for simulating and benchmarking applications on distributed computing systems.[3]

The SimGrid framework provides high-level tools for comparing, evaluating, analyzing, and prototyping algorithms across different platform under configurations and network topologies.[3] SimGrid has been used to run experimental simulations in a variety of fields, including big data as well as cloud, high-performance, grid, and P2P computing.[4]

SimGrid is distributed as free and open-source software under the GNU Lesser General Public License version 2.1 (LGPL 2.1).[5]

APIs (Application Programming Interfaces)

SimGrid supports multiple programming languages such as C++ and Python through models and APIs. SimGrid also provides tools for analyzing scheduling, resource allocation, fault tolerance, and other parts of distributed computing.

SimGrid consists of four different interfaces:

  • Simulation Directed Acyclic Graph (SIMDAG): SIMDAG allows users to add tasks, specify dependencies, retrieve information about the environment, schedule tasks for execution using particular resources, and calculate how long it took to run the DAG.[3]
  • Meta Scheduling Grid (MSG): MSG allows studying Constraint Satisfaction Problem applications. The SimGrid framework is utilized for studying and scheduling algorithms, among others.[3]
  • Grid Reality and Simulation (GRAS): GRAS enables the development of distributed applications within the simulator, which can then be deployed without requiring code modifications.[6]
  • Simulated Message Passing Interface (SMPI): SMPI allows the simulation of unmodified MPI applications by intercepting and simulating MPI primitives.

See also

References

  1. ^ Casanova, Henri (May 2001). "A Toolkit for the Simulation of Application Scheduling". First IEEE International Symposium on Cluster Computing and the Grid (CCGrid'01). Brisbane, Australia. pp. 430–441. doi:10.1109/CCGRID.2001.923223.
  2. ^ "Official SimGrid Page". Retrieved October 17, 2024.
  3. ^ a b c d Casanova, Henri; Legrand, Arnaud; Quinson, Martin (March 4, 2008). "SimGrid: a Generic Framework for Large-Scale Distributed Experiments". Inria. IEEE – via HAL Open Science.
  4. ^ "They use SimGrid". simgrid.org. Retrieved 2025-04-08.
  5. ^ "LICENSE-LGPL-2.1 · master · simgrid / simgrid · GitLab". GitLab. 2010-11-27. Retrieved 2025-03-19.
  6. ^ Quinson, Martin (November 2006). "GRAS: a Research and Development Framework for Grid and P2P Infrastructures". Inria – via HAL Open Science.