+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 options:
+ --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.
+ --cfg=smpi/errors-are-fatal: True by default, behaves like if MPI_ERRORS_RETURN
+ is active when set to false, to keep going after a small error
+ --cfg=smpi/pedantic: True by default. Do not report some harmless MPI errors
+ which may or may not be problematic in the end.
+ - Sampling:
+ - fix behaviour, as maximum iteration count could be ignored
+ - add SMPI_SAMPLE_LOCAL_TAG and SMPI_SAMPLE_GLOBAL_TAG macros, to allow user to
+ use sampling when the same kernel is called with a different set of parameters
+ which have an impact on the timing.
+ - realloc is now intercepted, to be coherent, as malloc/calloc/free were already.
+ It should now work with smpi/auto-shared-malloc-thresh.
+ - Improve error handling and reporting in multiple places
+ - Improve correctness checks on the MPI code.(MPI_Op and MPI_Datatype
+ validity checks, truncated messages are now an error, return errors
+ when explicitely deleted handles are reused, ...)
+ - RMA: multiple fixes and stability improvements.
+ - analysis (-analyze flag in smpirun):
+ - SMPI can now report buffer leaks as well as MPI handles leaks,
+ if code was compiled without SMPI_NO_OVERRIDE_MALLOC.
+ - if -trace-call-location is used when compiling, SMPI can report
+ origin of leaked handles/buffers
+ - group leaks by type/origin in output message if possible
+ - New implemented MPI calls: MPI_Comm_test_inter
+
+Models:
+ - Changed internal implementation of bandwidth factors in network models.
+ Models affected: CM02, LV08 (default), SMPI, IB.
+ Configuration affected: "network/bandwidth-factors" and "smpi/bw-factors".
+ Bandwidth factors are applied to communications to describe that users
+ cannot use 100% of the available bandwidth. For example, the default network model,
+ LV08, applies a factor of 0.97 to the bandwidth. In older versions, this
+ behavior was implemented by limiting the bandwidth available in the LMM
+ system for this flow. This may give the false impression that there is
+ bandwidth available for other flows due to its underutilization, especially
+ for the dynamic bandwidth factors used in SMPI models.
+ To avoid this, we have modified the implementation so that each flow uses the
+ maximum physical bandwidth according to the LMM system.
+ However, the actual throughput of the flow seen by the user is defined by
+ the physical bandwidth multiplied by the bandwidth factor.
+ This change impacts on the simulation results for all network models on
+ which we have bandwidth factors configured.
+ *****************************************
+ *DO NOT MIX 3.28 RESULTS WITH OLDER ONES*
+ *****************************************
+ This change may impact on the timing of your simulation results.
+ Take care when comparing simulations from different SimGrid's
+ versions. Sorry for the inconvenience.
+ - Dynamic network factors: users can configure a callback to define
+ the network factors dynamically. This API is available at
+ simgrid::kernel::resource::NetworkModelIntf.
+ - Users have access to complete information about the current communication
+ to decide which factor to apply. This includes: message size, source and
+ destination hosts, links and zones traversed.
+ - Dynamic factors for both latency and bandwidth.
+ - For more details, see the example in (examples/cpp/network-factors).
+ - Plugin host_energy: the "watt_off" and "watt_per_state" host properties,
+ deprecated since version 3.24, are no longer supported. Instead, use
+ "wattage_off" and "wattage_per_state".