Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Handle duplicated datatypes within predefined MPI_Op.
[simgrid.git] / ChangeLog
index 017893e..08ed0cc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,29 +1,63 @@
 ----------------------------------------------------------------------------
 
-SimGrid (3.26.1) NOT RELEASED YET (v3.27 expected March 20. 2021, 09:37 UTC)
+SimGrid (3.27.1) NOT RELEASED YET (v3.28 expected June 21. 2021, 03:32 UTC)
 
-User-visible changes:
- - Removed some option aliases that were deprecated since v3.23 (June 2019)
-   - 'verbose-exit' is now 'debug/verbose-exit'
-   - 'simix/breakpoint' is now 'debug/breakpoint'
-   - 'clean-atexit' is now 'debug/clean-atexit'
+New features:
+ - New plugin: Producer-Consumer with monitor. Just requires to include the
+   include/simgrid/plugins/ProducerConsumer.hpp header to be used. See the
+   associated example (examples/cpp/plugin-prodcons).
+
+S4U:
+ - Fixed a bug where Activity::wait_for() killed the activity on timeout.
+   Explicitly cancel the activity to get back to previous behavior.
+
+SMPI:
+ - The default SMPI compiler flags are no more taken from the environment.
+   They can be explicitly set through cmake parameters SMPI_C_FLAGS,
+   SMPI_CXX_FLAGS, or SMPI_Fortran_FLAGS.
+ - New option: --cfg=smpi/finalization-barrier, which can be used to add
+   a barrier inside MPI_Finalize. This can help for some codes which cleanup
+   data attached to a process, but still used in other SMPI processes.
+LUA:
+ - Lua platform files are deprecated. Their support will be dropped after v3.31.
+
+Simix:
+ - Legacy functions deprecated in this release: SIMIX_get_clock(), SIMIX_run().
+
+XBT:
+ - xbt_assert is not disabled anymore, even when built with enable_debug=off.
+
+Documentation:
+ - New tutorial: Model-checking and formal assessment
+
+Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests)
+ (FG: issues on Framagit; GF: issues on GForge; GH: issues on GitHub)
+ - FG#47: Complete and fix tests from teshuite/s4u/activity-lifecycle
+ - FG#64: Configuring smpi/IB-penalty-factors
+ - FG#67: Running computation concurrently with MPI_Iallreduce
+ - FG#69: Tutorial misleading users of pre-v3.26 versions of SimGrid
+ - GH#322: Issue when an actor kills his host vm
+
+----------------------------------------------------------------------------
+
+SimGrid (3.27) March 29. 2021
+
+The Ragnar Release (anniversary of the siege of Paris by Vikings in 845)
+
+Main user-visible changes:
+ - All functions marked as deprecated for one year were removed.
  - Removed all that was related to the "Storage" type in all APIs and bindings.
    "Disks" have been introduced more than a year ago to replace them for the better.
    It's time to finish this replacement.
- - Model iteration order may change simulations.
-    *****************************************
-    *DO NOT MIX 3.27 RESULTS WITH OLDER ONES*
-    *****************************************
-    The order in which the different models (CPU, network, disk, etc) are
-    solved internally has changed in this version. Although rare (no current
-    test raises the problem), this change can result in slightest different simulations
-    results. Take care when comparing simulations from different SimGrid's
-    versions. Sorry for the inconvenience.
- - SMPI API break from previous version: MPI global handles (predefined datatypes,
+ - SMPI ABI breaks from previous version: MPI global handles (predefined datatypes,
    ops, COMM_WORLD) are now defined differently, and can be used in initializers,
    avoiding "initializer element is not constant" errors with some codes. Please be
    careful to recompile your MPI codes if switching to this new SimGrid version.
  - Network model ns-3 now requires version ns-3.28 or higher.
+ - Removed some option aliases that were deprecated since v3.23 (June 2019)
+   - 'verbose-exit' is now 'debug/verbose-exit'
+   - 'simix/breakpoint' is now 'debug/breakpoint'
+   - 'clean-atexit' is now 'debug/clean-atexit'
 
 S4U:
  - New functions: Comm::sendto_{init,async} to initiate a communication
@@ -49,24 +83,17 @@ Documentation:
    - New section: Programming API of logs.
    - New section: Getting realistic results
    - New section: Examples of SMPI Usage
- - New part: SimGrid's Intenal, with a section on Design goals
+ - New part: SimGrid's Internals, with a section on Design goals
  - Move back to the classical Breathe tool chain, and fix many small glitches.
 
 SMPI:
- - Handle leak checking: SMPI will now display a message if MPI
-   handles are still present at the end of a simulation. This may be nothing,
-   but if the number is high it could be a problem. To display more information
-   about the type of leaked handle, option --cfg=smpi/list-leaks:n. will display
-   the n first leaked pointers and their types. Known issue: MPI_Cancel usage
-   may trigger handle leaks in SMPI.
-   Using smpirun with -wrapper "valgrind --leak-check=full --track-origins=yes"
-   can provide more information to help locate precisely the leaks.
- - Memory allocations analysis: MPI codes using malloc/calloc to
-   allocate memory, and not compiled with SMPI_NO_OVERRIDE_MALLOC, can use
-   smpi/display-analysis option to show at the end of execution the amount of
-   memory allocated through these calls, and locate the most expensive one.
-   This helps finding the targets for manual memory sharing, or the threshold
-   to use for smpi/auto-shared-malloc-thresh option.
+ - Handle leak checking: SMPI will now display a message if MPI handles are still
+   present at the end of a simulation. Option smpi/list-leaks:n will display the n
+   first leaked pointers and their types.
+ - smpi/display-allocs option : Display Memory allocations analysis, with hints
+   about the largest allocations. This only works for allocations with malloc/calloc
+   and not compiled with SMPI_NO_OVERRIDE_MALLOC
+ - "-analyze" option in smpirun will activate smpi/display-allocs and smpi/display-timing
  - New implemented MPI calls: MPI_File_set_size, MPI_Aint_add, MPI_Aint_diff,
    MPI_Type_get_extent_x, MPI_Type_get_true_extent_x, MPI_Status_set_elements_x
  - Support for MPI C++ datatypes (MPI_CXX_BOOL, MPI_CXX_FLOAT_COMPLEX,
@@ -90,7 +117,7 @@ SMPI:
      - Codevault bhtree_mpi
 
 Model checker:
- - Only initialze the Dwarf parser when needed, saving 10 seconds in most cases.
+ - Only initialize the Dwarf parser when needed, saving 10 seconds in most cases.
  - Start to overhaul the implementation to modernize it (still ongoing).
 
 XBT: