Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
BMF: One pass in sonar issues
[simgrid.git] / ChangeLog
index 328940a..8656b62 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,76 @@
 SimGrid (3.30.1) NOT RELEASED YET (v3.31 expected March 20. 2022, 15:33 UTC)
 
+MC:
+ - Rework the internals, for simpler and modern code. This shall unlock many future improvements.
+ - You can now define plugins onto SafetyChecker (a simple DFS explorer), using the declared signals.
+   See CommunicationDeterminism for an example.
+ - Support mutex, semaphore and barrier in DPOR reduction
+ - Seems to work on Arm64 architectures too.
+ - Display a nice error message when ptrace is not usable.
+ - New test suite, imported from the MPI Bugs Initiative (MBI). Not all MBI generators are integrated yet.
+ - Remove the ISP test suite: it's not free software, and it's superseeded by MBI.
+
+SMPI:
+ - fix for FG#100 by ensuring small asynchronous messages never overtake larger
+   ones, conforming to the standard.
+ - replay: fix waitall behaviour to avoid forgetting requests and leaking
+   their handles.
+ - tracing: ensure that we dump the TI traces continuously during execution and
+   not just at the end, reducing memory cost and performance hit.
+ - Update OpenMPI collectives selection logic to match current one (4.1.2)
+
+S4U:
+ - New signal: Engine::on_simulation_start_cb()
+ - Introduce a new execution mode with this_actor::thread_execute(). This simulate 
+   the execution of a certain amount of flops by multiple threads ran by a host. Each
+   thread executes the same number of flops, given as argument. An example of this new
+   function can be found in examples/cpp/exec-thread.
+ - Reimplementation of barriers natively. 
+   Previously, they were implemented on top of s4u::Mutex and s4u::ConditionVariable. 
+   The new version should be faster (and can be used in the model-checker).
+
+MSG:
+ - MSG_barrier_destroy now expects a non-const msg_barrier parameter.
+
+New plugin: the Chaos Monkey (killing actors at any time)
+ - Along with the new simgrid-monkey script, it tests whether your simulation 
+   resists resource failures at any possible timestamp in your simulation. 
+ - It is mostly intended to test the simgrid core in extreme conditions, 
+   but users may find it interesting too.
+
+Models:
+ - New model for parallel task: ptask_BMF.
+   - More realistic sharing of heterogeneous resources compared to ptask_L07.
+   - Implement the BMF (Bottleneck max fairness) fairness.
+   - Improved resource sharing for parallel tasks with sub-flows (parallel
+   communications between same source and destination inside the ptask).
+   - Parameters:
+     - "--cfg=host/model:ptask_BMF": enable the model.
+     - "--cfg=bmf/max-iterations: <N>" - maximum number of iterations performed
+        by BMF solver (default: 1000).
+        - "--cfg=bmf/selective-update:<true/false>" - enable/disable the
+        selective-update optimization. Only invalidates and recomputes modified
+        parts of inequations system. May speed up simulation if sparse resource
+        utilization (default: false).
+   - ATTENTION: this model requires Eigen3 library. If you install SimGrid
+   from source, please see the "Installing from source" section:
+   https://simgrid.org/doc/latest/Installing_SimGrid.html#installing-from-the-source.
+   No action is required if you use pre-compiled packages.
+
 XBT:
  - Drop xbt_dynar_shrink().
 
+Python:
+ - Added the following bindings: Comm.wait_for() and Comm.wait_any_for()
+   Example: examples/python/comm-waitfor/
+
 Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests)
  (FG: issues on Framagit; GH: issues on GitHub)
+ - FG#57: Mc SimGrid should test whether ptrace is usable
+ - FG#87: Smpi scripts fail with spaces in paths
  - FG#100: [SMPI] Order of the message matching is not guaranteed
+ - FG#101: LGPL 2.1 is deprecated license
+ - GH#151: Missing mutexes for DPOR.
 
 ----------------------------------------------------------------------------
 
@@ -154,6 +219,7 @@ Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests)
  - FG#78: Multiple fixes for SMPI replay:
     - TI tracing of allotallv/w was outputting wrong values
     - MPI_LOGICAL in fortran is actually 32 bits wide, and not 8.
+
 ----------------------------------------------------------------------------
 
 SimGrid (3.28) July 14. 2021