SimGrid  3.19.1
Versatile Simulation of Distributed Systems
MSG: Legacy handling of CSP algorithms

Detailed Description

Simple programming environment.

MSG is a simple API to write algorithms organized with Concurrent Sequential Processes (CSP) that interact by exchanging messages. It constitutes a convenient simplification of the reality of distributed systems. It can be used to build rather realistic simulations, but remains simple to use: most unpleasant technical elements can be abstracted away rather easily.

MSG used to be the main API of SimGrid 3, but we are currently in the process of releasing SimGrid 4. The tentative release date is Summer 2018. So MSG is frozen and will probably never evolve. If you are starting a new project, you should consider S4U instead. Note that the support for MSG will not be removed from SimGrid before 2020 at least.

Offered functionalities


 Main MSG simulation Functions
 How to setup and control your simulation.
 Process Management Functions
 This section describes the process structure of MSG (msg_process_t) and the functions for managing it.
 Host Management Functions
 Host structure of MSG.
 Task Management Functions
 Task structure of MSG (msg_task_t) and associated functions.
 Mailbox Management Functions
 Functions associated to mailboxes.
 Task Actions
 This section describes the functions that can be used by a process to execute, communicate or otherwise handle some task.
 Explicit Synchronization Functions
 Explicit synchronization mechanisms: semaphores (msg_sem_t) and friends.
 Interface created to mimic IaaS clouds.
 Storage Management Functions
 Storage structure of MSG (msg_storage_t) and associated functions, inspired from POSIX.
 File Management Functions
 MSG files (msg_file_t) and associated functions, inspired from POSIX.
 Trace-driven simulations
 This section describes the functions allowing to build trace-driven simulations.
 MSG examples
 Find the MSG example fitting your needs from the extensive set provided in the archive.