|
SimGrid
3.14.159
Versatile Simulation of Distributed Systems
|
| ▼MSG: Simulate CSP Algorithms | Simple programming environment |
| 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 |
| VMs | 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 |
| ▼SimDag: Simulate DAG algorithms | Programming environment for DAG applications |
| Hosts | Host management |
| Links | Link management |
| Tasks | Task management |
| Tasks dependencies | Functions to specify the dependencies between tasks |
| Storages | Storage management |
| Simulation | Functions to create the environment and launch the simulation |
| ▼XBT: SimGrid core toolbox | The core toolbox of SimGrid, containing useful datatypes and friends |
| ▼Grounding features | Grounding features are the basement of SimGrid |
| Malloc and friends | Malloc and associated functions, killing the program on error (with Exception support (C++)) |
| String related functions | String manipulation functions |
| Exception support (C++) | Exceptions support |
| Exception support (C) | Exceptions support (C) |
| ►Logging support | A generic logging facility in the spirit of log4j (grounding feature) |
| Assert macro familly | Those are the SimGrid version of the good ol' assert macro |
| ►Configuration support | Changing the configuration of SimGrid components (grounding feature) |
| ►Mallocators | The mallocator system |
| Unit testing support | Unit testing implementation (see Adding unit tests) |
| ▼Usual data structures | Here are the basic data containers that every C programmer rewrites one day |
| ►Dynar: generic dynamic array | DynArr are dynamically sized vector which may contain any type of variables |
| ►Dict: generic dictionnary | The dictionary data structure (comparable to hash tables) |
| ►Fifo: generic workqueue | This section describes the API to generic workqueue |
| ►Swag: O(1) set datatype | O(1) set based on linked lists |
| Heap: generic heap data structure | This section describes the API to generic heap with O(log(n)) access |
| String buffers | This data container is very similar to the Java StringBuffer: that's a string to which you can add content with a lesser performance penalty than if you recreate a new string from scratch |
| ▼Miscellaneous | Here are several general purposes library components designed specially for you, you lucky one |
| General purpose graph library | A graph data type with several interesting algorithms |
| Parallel map | Parallel map |
| Simulated Synchronization | XBT synchronization tools |
| Thread stuff | Thread portability layer |
| Portable context implementation | Contexts are a higher level system than setjump/longjmp for non-preemptible threads |
| Replay | |
| File manipulation functions | This module redefine some quite classical functions such as xbt_getline() or xbt_dirname() for the platforms lacking them |
| ▼TRACING | Gather data about your simulation for later analysis |
| Tracing categories | Functions to declare tracing categories |
| Tracing marks | Functions to declare and create tracing marks |
| Tracing user variables | Functions to declare and define user variables associated to resources |
| Routing: Determining the communication paths | Organize the platform to determine the links used by each communication |
| ▼SIMIX | POSIX-like interface for building simulation |
| SIMIX datatypes management details | |
| Process Management Functions | |
| Host Management Functions | |
| RDV Management Functions | |
| Communication Management Functions | |
| Synchronisation Management Functions | |
| File Management Functions | |
| ▼SURF | Internal kernel of all the simulators used in SimGrid, and associated models |
| Simulation Models | Functions to declare the kind of models that you want to use |
| Simulation | Functions for creating the environment and launching the simulation |
| Create a new API | How to build a new API on top of SURF |
| SURF C bindings | Describes the c bindings of SURF |
| SURF Interface | Describes the general interface for all components (Cpu, Network, Storage, Host, VM) |
| SURF Cpu Interface | Describes the general Cpu interface for all Cpu implementations |
| SURF Network Interface | Describes the general Network interface for all Network implementations |
| SURF Storage Interface | Describes the general interface for all Storage implementations |
| SURF Host Interface | Describes the general interface for all Host implementations |
| SURF VM Interface | Describes the general interface for all VM implementations |
| SURF Linear MaxMin | Describes how the linear MaxMin system work |
| SURF callbacks | Describes how to use the SURF callbacks |
| SURF Energy Plugin | Describes how to use the energy plugin |
| ▼S4U: Next Generation SimGrid API | Future core API, mixing the full power of SimGrid to the power of C++ |
| S4U examples | Find the S4U example fitting your needs in the archive |
| SMPI: Simulate real MPI applications | Programming environment for the simulation of MPI applications |