Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add new entry in Release_Notes.
[simgrid.git] / docs / source / application.rst
index 3898c38..499465a 100644 (file)
@@ -5,7 +5,7 @@ Describing your Application
 
 .. raw:: html
 
-   <object id="TOC" data="graphical-toc.svg" width="100%" type="image/svg+xml"></object>
+   <object id="TOC" data="graphical-toc.svg" type="image/svg+xml"></object>
    <script>
    window.onload=function() { // Wait for the SVG to be loaded before changing it
      var elem=document.querySelector("#TOC").contentDocument.getElementById("ApplicationBox")
@@ -16,17 +16,36 @@ Describing your Application
    <br/>
 
 Every SimGrid simulation entails a distributed application, that
-virtually executes on the simulated platform. This application can
-be either an existing MPI program (if you use the SMPI interface), or
-a program specifically written to execute within SimGrid, using one of
-the dedicated APIs.
-
-
-.. include:: app_smpi.rst
-
-.. include:: app_legacy.rst
-
-.. toctree::
-   :hidden:
-
-      The S4U Interface <app_s4u.rst>
+virtually executes on the simulated platform. You can express this
+application using one of the following interfaces. It is even possible
+to mix several interfaces in the same simulation.
+
+ - :ref:`Describing Algorithms with the S4U interface <S4U_doc>` (in C++ or Python)
+ - :ref:`Simulating existing MPI programs with the SMPI toolsuite <SMPI_doc>`
+   (in C, C++, or Fortran)
+ - In some cases, you may want to replay an execution trace in the simulator. This
+   trace lists the events of your application or of your workload, and
+   your application is decomposed as a list of event handlers that are
+   fired according to the trace. SimGrid comes with a built-in support
+   for MPI traces (with solutions to import traces captured by several
+   MPI profilers). You can reuse this mechanism for any kind of trace
+   that you want to replay, for example to study how a P2P DHT overlay
+   reacts to a given workload.
+ - A prototypal tool is intended to allow the modification of any existing
+   application so that it can run on top of SimGrid. This project,
+   called `Remote-SimGrid
+   <https://framagit.org/simgrid/remote-simgrid>`_, is somewhat
+   experimental but should be already usable.
+
+As you can see, SimGrid is very modular and can be used in many
+ways. We are working to improve it along two main directions. First,
+we plan to further increase the modularity of the simulator so that
+users can invent the specific API or DSL they need for their usage. We
+call this project BYOS: Build Your Own Simulator.
+
+Executing existing applications within the simulator is another
+long-term goal. SMPI and Remote-SimGrid already allow you to execute some
+applications, but our long term goal would be to allow for the execution
+of any legacy application, with absolutely no modification. We call it
+SimOS, even if it will not become usable before several years of
+additional work.