Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add some Noteworthy tests to the Contributor's doc
[simgrid.git] / docs / source / Design_goals.rst
index cf4ae54..70e120c 100644 (file)
@@ -37,7 +37,7 @@ The design of SimGrid is shaped by several design goals:
    and resource models. But the simulation should be parsimonious too,
    to not hinder the tool's usability. SimGrid tries to provide sane
    default settings along with the possibility to augment and modify
-   the provided models and their default settings.   
+   the provided models and their default settings.
  - **scalability**: ability to deal with very large simulations. In the
    number of actors, in the size of the platform, in the number of
    events, or all together.
@@ -57,8 +57,8 @@ actors can proceed and which ones must wait).
 In practice, a SimGrid simulation is a suite of so-called **scheduling
 rounds**, during which all actors that are not currently blocked on a
 simcall get executed. For that, maestro passes the control flow to the
-code of each actor, that are written in either C++, C, Fortran, Python,
-or Java. The control flow then returns to the maestro when the actor
+code of each actor, that are written in either C++, C, Fortran or Python.
+The control flow then returns to the maestro when the actor
 blocks on its next blocking simcall. Note that the time it takes to
 execute the actor code has to be reported to the simulator using
 execution activities. SMPI programs are automatically benchmarked
@@ -85,8 +85,8 @@ Context switching between the actors and maestro is highly optimized
 for the sake of simulation performance. SimGrid provides several
 implementations of this mechanism, called **context factories**. These
 implementations fall into two categories: Preemptive contexts are
-based on full-fledged system threads such as pthread on Linux or Java
-threads in the JVM. They are usually better supported by external
+based on standard system threads from the libstdc library.
+They are usually better supported by external
 debuggers and profiling tools, but less efficient. The most efficient
 factories use non-preemptive mechanisms, such as SysV's ucontexts,
 boost's context, or our own hand-tuned implementation, that is written
@@ -120,7 +120,7 @@ the stepwise variation of computational speed depending on the DVFS,
 and was reused to model the bootup and shutdown phases of a CPU: the
 computational speed is 0 at these specific pstates. This pstate notion
 was extended to represent the fact that the bandwidth provided by a
-wifi link to a given station depends on its signal-noise ratio (SNR). 
+wifi link to a given station depends on its signal-noise ratio (SNR).
 
 Further on this line, all provided resource models are very comparable
 internally. They rely on linear inequation systems, stating for