X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/e796fb5aca72eb873f5132943458b7e22ecb856c..b59417738c8cf11f1804269c65a4738bbf43c150:/ChangeLog diff --git a/ChangeLog b/ChangeLog index 8c0b53308d..13e0736676 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,11 +1,376 @@ ---------------------------------------------------------------------------- -SimGrid (3.25.1) UNRELEASED (target: March 20 2020 or v3.26 on 3/26/20) +SimGrid (3.28.1) NOT RELEASED YET (v3.29 expected September 22. 2021, 19:21 UTC) -Fixed bugs (FG#.. -> framagit bugs; FG!.. -> framagit merge requests): +New modeling features: + - Non-linear resource sharing for decay models: + - The total capacity may depend on the number of concurrent usages + - For that, resources can take a callback that computes the capacity + depending on the idle capacity and the number of concurrent usages + - Examples (both cpp and python): io-degradation, network-nonlinear, exec-cpu-nonlinear + + - Dynamic factors for CPU and disk: similarly to dynamic network factors, + allows the user to set a callback which can affect the progress of activities + (multiplicative factor applied when updating the amount of work remaining). + - Example: examples/cpp/exec-cpu-factors + +Python: + - Added support to programmatic platform creation in Python. + Example: examples/python/clusters-multicpu + +S4U: + - Disk and Host now have a set_sharing_policy() too, for non-linear sharing. + This can only be set through the API, not through XML files. + +SMPI: + - TI Tracing/Replay: + - Multiple fixes to ensure reproducibility of tracing + - scan/excan can now be replayed + - wait action now uses ranks and not pid, as the other ones. + - smpi/init and smpi/finalization-barrier are now valid for replays. + +Documentation: + * New section "Release Notes" documenting recent and current developments. + * New section "Modeling I/O: the realistic way" presenting how to properly model disks in SimGrid. + * Improvements in API Reference for C++ and Python interfaces. + +ns-3 model: + - Make wifi creation compatible with ns-3 version 3.34 too. + +Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests) + (FG: issues on Framagit; GF: issues on GForge; GH: issues on GitHub) + - 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. + - FG#77: Search feature of doc is broken (update sphinx theme version) +---------------------------------------------------------------------------- + +SimGrid (3.28) July 14. 2021 + +The Victoriadagarna Release. + +New features: + - C++ platform interface: Users can now describe their platform directly in C++. + This provides greatly flexibility and performance improvement for complex + platforms. Main features: + - Fat-Tree/DragonFly/Torus composing: allows you to create clusters of + "zones", instead of single hosts. This feature enables the description + of clusters with complex hosts, composed of several CPUs, GPUs, etc. + - StarZone: new zone with a Star-like topology. The routes are defined + as a set of links used to communicate from node to everybody (node<->ALL). + - Split-Duplex links: auxiliary method to create split-duplex links in + the platform, easing its utilisation. It automatically creates both UP + and DOWN links (similarly as done in XML). + - Please refer to the documentation and the examples included: + e.g. examples/cpp/clusters-multicpu/ and examples/platforms/*.cpp. + - 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: + - New: s4u::Comm::wait_all_for() (like s4u::Comm::wait_all, but with a timeout), + s4u::Io::wait_any(), s4u::Io::wait_any_for(). + - Methods test_all/test_any/wait_all/wait_any in s4u now take their vector + parameter by reference, instead of a pointer. + - Fixed a bug where Activity::wait_for() killed the activity on timeout. + Explicitly cancel the activity to get back to previous behavior. + - New: Link::set_concurrency_limit() to limit the amount of concurrent flows. + +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". + +XBT: + - xbt_assert is not disabled anymore, even when built with enable_debug=off. + +Documentation: + - New tutorial: Model-checking and formal assessment + - New sections: "Demystifying the routing" and "C++ platforms" + - Update and improve the part on visualization in MPI and Algo tutorials. + - Improve the section on routing: how to define it, how it's used internally + - Fix many issues, broken links and missing references in doxygen and Sphinx + +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(). + +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 + - FG#71: Segmentation fault on invalid gw_src/gw_dst + - 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. + - 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 + on between two (possibly remote) hosts. + - Define new template functions Mailbox::get_unique(), returning a std::unique_ptr. + - Functions Mailbox::get() and Mailbox::get_async() are now templated with the + type of the pointee. Untyped functions are deprecated. Use Mailbox::get() + or Mailbox::get_async() if you really want to play with void*. + - Unify the interface of Activity::on_{start/activity} + - New function: Comm::get_dst_data() + - New function: Comm::set_payload_size() to set the amount of bytes to simulate. + +Models: + - ptask should now work better with multicore hosts (FG#37). + - Internal cleanups and refactoring around activities, to prepare for SimDAG++. + - Internal cleanups and refactoring around models, to prepare for programmatic + platform creation. + - Modernize our tests of the performance models + +Documentation: + - User manual: + - New section: Configuring the logs from the command line. + - New section: Programming API of logs. + - New section: Getting realistic results + - New section: Examples of SMPI Usage + - 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. 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, + MPI_CXX_DOUBLE_COMPLEX, MPI_CXX_LONG_DOUBLE_COMPLEX) + - Replay now opens and parses the trace file only once for all ranks when possible. + - Misc fixes: + - better handling of MPI_PROC_NULL + - MPI_Group_incl was broken in some cases + - PAPI tracing now fixed + - MPI_Errhandlers are properly handled for MPI_COMM_WORLD + - SMPI will now fail properly when receive size < sent size, instead of + just setting MPI_ERR_TRUNCATE and keep going. + - Proxy Apps ( https://framagit.org/simgrid/SMPI-proxy-apps ): + - Remove useless build patches and split build/run patches on the page + - Build in parallel when possible + - Test on yum-based systems + - New nightly tested Proxy-apps: + - OpenMPI mpi-test-suite + - Coral MCB, LSMS, Qbox, CLOMP + - ECP/Mantevo Cloverleaf3D, Ember + - Codevault bhtree_mpi + +Model checker: + - Only initialize the Dwarf parser when needed, saving 10 seconds in most cases. + - Start to overhaul the implementation to modernize it (still ongoing). + +XBT: + - Drop simgrid::xbt::demangle(). Please use boost::core::demangle() instead. + - Drop xbt_dynar_cursor_rm(), xbt_dynar_search_or_negative(), + xbt_str_split_quoted(), xbt_str_split_quoted_in_place(). + - Deprecate xbt_dynar_to_array(). + - When an exception occurs in kernel mode, display both the actor and kernel stacks. + +C binding and interface: + - Rename (lowercase) functions sg_actor_get_PID, sg_actor_get_PPID, sg_actor_by_PID. + - Constness requirement has been lowered for parameter argv of sg_actor_start() + and sg_actor_create() It's now (char* const*). The previous version is still + available as sg_actor_start_() and sg_actor_create_(). + +Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests) + (FG: issues on Framagit; GF: issues on GForge; GH: issues on GitHub) + - FG#37: Parallel tasks are limited to 1 core per host + - FG#62: Running "smpirun -replay" on large networks + - FG!46: Fix a few potential memory leaks in SMPI colls + - GH#343: Wrong consumed energy when an exec timeouts + +---------------------------------------------------------------------------- + +SimGrid (3.26) December 15. 2020 + +The Release release (the French lockdown was eased today). + +Important user-visible changes: + - SimGrid now requires a compiler with C++14 support. + Sibling projects should upgrade their FindSimgrid.cmake + - Surf precision default value is now 1e-9, instead of 1e-5. This was changed as + several users had difficulties to understand issues when using high bandwidth or + small latency events. The new value was already the default for SMPI and + should not cause too much performance hit. It can change some simulation + timings if simulation was skipping a lot of small events (which was actually + an issue per see). The old value can be restored with --cfg=surf/precision:1e-5. + - On some network models (L07, CM02, LV08), an implicit loopback link is created + for local communication. Default bandwidth was 500MBps and latency was 15µs, + which was rather bad. Default values have been changed to 10GBps and 0 latency. + Options network/loopback-lat and network/loopback-bw have been added to adapt + these values if needed. Network and routing models already providing separate + loopbacks (clusters and such) are not impacted by this change. + - SMPI now adds 16 bytes of header to each message sent, in order to simulate + metadata that are added to each MPI message by MPI libraries (tag, + src/dest, and communicator information). This may change simulation times + for very small message sizes, but should be more realistic. + +New features: + - New routing 'WiFi' that makes it easier to specify a wifi network zone. + - New plugins: wifi_energy and link_load. See the associated examples. + - New examples: wifi networks, and communication suspend. + +General: + - LTO is now enabled for Intel/clang compilers. + - LTO behavior on GCC can be parameterized using LTO_EXTRA_FLAG in cmake. + Setting it to "auto" will use all available cores, while setting it to n will + use n cores to speedup link step (usage: cmake -DLTO_EXTRA_FLAG=4). + - Remove obsolete runtime option 'contexts/parallel-threshold'. + - Runtime option 'tracing/msg/process' renamed to 'tracing/actor'. The old name + has been kept for compatibility. + - Finally remove obsolete snake_case() aliases for runtime options. + - Further improve the documentation. + +S4U: + - the on_exit() of each actor is also executed when the simulation deadlocks. + - New functions: s4u::Activity:: suspend(), resume() and is_suspended() + An example is provided for s4u::Comm but it should work with Exec and Io. + +SMPI: + - Update proxy apps coverage of new ECP apps: 60+ apps now tested nightly on + https://framagit.org/simgrid/SMPI-proxy-apps + - MPI/IO: supports names starting with "./" + - Fortran: many MPI/IO bindings, support for MPI_UB/LB, C MPI_INT/FLOAT/DOUBLE + datatypes. + - smpicc/cxx/ff/f90 now will actually perform definition checks at link time. When + building shared libraries, this may cause issues, so environment variable + SMPI_NO_UNDEFINED_CHECK can be added to disable this. + - most temporary files should now be created in /tmp dir (or equivalent). + If this one does not allow execution of code (noexec flag), this may cause issues. + Please use another tmp directory (using TMPDIR or equivalent system variable) + in this case. + +Model-Checker: + - A large refactoring is ongoing, but this should be transparent for users so far. + +XBT: + - Drop xbt_str_split(). + +C binding and interface: + - The return type of the sg_actor_on_exit() callbacks is now 'void' + (int value was previously ignored) + - Many C functions were renamed to follow a common naming style + (sg_object_get_something and sg_object_set_something). As usual, the deprecated + names are kept until version 3.30. + - Many MSG tests were converted to the new S4U's interface in C, that + was extended for that. + +Fixed bugs (FG#.. -> FramaGit bugs; FG!.. -> FG merge requests) + (FG: issues on Framagit; GF: issues on GForge; GH: issues on GitHub) + - FG#41: Add sg_actor_create C interface - FG#43: xbt::random needs some care + - FG#48: The Impossible Did Happen (yet again) + - FG#50: Suspending an actor executed at the current timestamp fails + - FG#52: Zero-seconds timeout : "That's in the past already" + - FG#53: Crash while using ns-3 network model + - FG#54: How to suspend a comm? + - FG!22: Stochastic Profiles - FG!24: Documentation and fix for xbt/random + - FG!35: Add a modeling hint for parallel links in doc + - FG!36: [xbt/random] Read/Write the state of the RNG + - FG!42: Link cumulated load plugin + - FG!44: Test condition variable wait_until+notify_all + - GF#18137: Allow different stack sizes? + - GH#128: Parallelization of simulation with --cfg=contexts/nthreads - GH#139: Allow pthread creation in SMPI + - GH#336: Packet-level simulation using SMPI? + - GH#345: Error in the LMM while migrating a VM + - GH#346: [SMPI] error while loading shared libraries: libsimgrid.so + - GH#352: pip install / python setup.py install fail to find pybind11 + - GH!337: Fix link_energy plugin for wifi platforms + - GH!339: Add Mailbox set_receiver method to python binding + - GH!344: Cast hugepages macros parameters to int64 ---------------------------------------------------------------------------- @@ -14,76 +379,74 @@ SimGrid (3.25) February 2. 2020 (aka 02 02 2020) The Palindrom Day Release. Important user-visible changes: -- Improve the Python usability (stability and documentation). - - A nasty synchronization bug was ironed out, see also below. - - Python's doc was organized as a separate tree, now integrated with C++. - - C bindings of S4U were not part of the doc. - - The C++ doc was also improved as methods are now split by theme. -- Further deprecate MSG: you now have to pass -Denable_msg=ON to cmake. - - This is mandatory to use the Java bindings. - - OFF by default; The plan is to completely remove MSG by 2020Q4 or 2021Q1. -- SimDAG++: Automatic dependencies on S4U activities (experimental) - - Some features are already implemented but not all of them - - Cannot block an activity until it's scheduled on a resource - - No heterogeneous wait_any() that would mix Exec/Comm/Io activities. - - See examples/s4u/{io,exec,comm}-dependent for what's already there. - - + - Improve the Python usability (stability and documentation). + - A nasty synchronization bug was ironed out, see also below. + - Python's doc was organized as a separate tree, now integrated with C++. + - C bindings of S4U were not part of the doc. + - The C++ doc was also improved as methods are now split by theme. + - Further deprecate MSG: you now have to pass -Denable_msg=ON to cmake. + - This is mandatory to use the Java bindings. + - OFF by default; The plan is to completely remove MSG by 2020Q4 or 2021Q1. + - SimDAG++: Automatic dependencies on S4U activities (experimental) + - Some features are already implemented but not all of them + - Cannot block an activity until it's scheduled on a resource + - No heterogeneous wait_any() that would mix Exec/Comm/Io activities. + - See examples/s4u/{io,exec,comm}-dependent for what's already there. General: -- Upgrade documented Java dependency to Java 8 (earlier versions don't work). -- Drop support for Viva/Triva (old visualization tools), hence removed - TRACE_get_node_types() and TRACE_get_edge_types() functions. + - Upgrade documented Java dependency to Java 8 (earlier versions don't work). + - Drop support for Viva/Triva (old visualization tools), hence removed + TRACE_get_node_types() and TRACE_get_edge_types() functions. Python: -- Require pybind11 version 2.4. -- Greatly improve locking during context switches with Python. - - Declaring Python callbacks to this_actor::on_exit is now working. - - No more tests are failing currently, even on win32. + - Require pybind11 version 2.4. + - Greatly improve locking during context switches with Python. + - Declaring Python callbacks to this_actor::on_exit is now working. + - No more tests are failing currently, even on win32. S4U: -- Actor: Merge signals on_migration_start/end into on_host_change -- Actor: Rename migrate() into set_host() -- Disk: Allow users to get the read and write nominal bandwidth values -- Exec: Implement wait_for(timeout) -- Io: Implement wait_for(timeout) + - Actor: Merge signals on_migration_start/end into on_host_change + - Actor: Rename migrate() into set_host() + - Disk: Allow users to get the read and write nominal bandwidth values + - Exec: Implement wait_for(timeout) + - Io: Implement wait_for(timeout) XML: -- Parse errors now raise a simgrid::ParseError that you may want to catch. + - Parse errors now raise a simgrid::ParseError that you may want to catch. Kernel: -- In simgrid::kernel::resource::Model, the methods next_occuring_event*() have - been renamed to fix a spelling error. As usual, the previous definitions are - kept with a deprecation warning. However, to avoid runtime errors, it is now - forbidden to override these deprecated methods in a derived class. Please use - the new names immediately if you need to override them. + - In simgrid::kernel::resource::Model, the methods next_occuring_event*() have + been renamed to fix a spelling error. As usual, the previous definitions are + kept with a deprecation warning. However, to avoid runtime errors, it is now + forbidden to override these deprecated methods in a derived class. Please use + the new names immediately if you need to override them. XBT: -- Remove unused parameter 'free_ctn' for xbt_dict_set() and xbt_dict_set_ext(). -- Drop unused functions for dicts and dynars: xbt_dict_cursor_get_elm, - xbt_dict_get, xbt_dict_get_elm, xbt_dict_get_ext, xbt_dict_get_key, - xbt_dict_remove, xbt_dict_reset, xbt_dynar_compare, xbt_dynar_dump, - xbt_dynar_foreach_ptr, xbt_dynar_free_data, xbt_dynar_free_voidp, - xbt_dynar_init, xbt_dynar_insert_at_as, xbt_dynar_merge, - xbt_dynar_remove_n_at, xbt_dynar_replace, xbt_dynar_search, xbt_dynar_set. -- New module: random, providing classical random numbers generators. + - Remove unused parameter 'free_ctn' for xbt_dict_set() and xbt_dict_set_ext(). + - Drop unused functions for dicts and dynars: xbt_dict_cursor_get_elm, + xbt_dict_get, xbt_dict_get_elm, xbt_dict_get_ext, xbt_dict_get_key, + xbt_dict_remove, xbt_dict_reset, xbt_dynar_compare, xbt_dynar_dump, + xbt_dynar_foreach_ptr, xbt_dynar_free_data, xbt_dynar_free_voidp, + xbt_dynar_init, xbt_dynar_insert_at_as, xbt_dynar_merge, + xbt_dynar_remove_n_at, xbt_dynar_replace, xbt_dynar_search, xbt_dynar_set. + - New module: random, providing classical random numbers generators. SMPI: -- New option : "smpi/auto-shared-malloc-thresh" which sets a value for - allocations' size above which they are considered "shared" by default (as if - they were performed through SMPI_SHARED_MALLOC macros). - Default = 0 = disabled feature. - Note : malloc, calloc and free are now overriden by smpicc/cxx by default. - This can cause some troubles if codes are already overriding these. If this - is the case, defining SMPI_NO_OVERRIDE_MALLOC in the compilation flags can - help, but will make this feature unusable. -- Input check is now performed much more consistently and outputs precise - warnings for each error found -- New supported calls : MPI_File_set_view, MPI_File_get_view -- MPI I/O now only supports disks, as storage is discontinued. -- MPI I/O allows opening files without specifying absolute path -- Note : SMPI configuration options are now initialized by smpi_init_options() - call, which should be called if SMPI is not being used through smpirun. + - New option : "smpi/auto-shared-malloc-thresh" which sets a value for + allocations' size above which they are considered "shared" by default (as if + they were performed through SMPI_SHARED_MALLOC macros). + Default = 0 = disabled feature. + Note : malloc, calloc and free are now overridden by smpicc/cxx by default. + This can cause some troubles if codes are already overriding these. If this + is the case, defining SMPI_NO_OVERRIDE_MALLOC in the compilation flags can + help, but will make this feature unusable. + - Input check is now performed much more consistently and outputs precise + warnings for each error found + - New supported calls : MPI_File_set_view, MPI_File_get_view + - MPI I/O now only supports disks, as storage is discontinued. + - MPI I/O allows opening files without specifying absolute path + - Note : SMPI configuration options are now initialized by smpi_init_options() + call, which should be called if SMPI is not being used through smpirun. Fixed bugs (FG#.. -> framagit bugs; FG!.. -> framagit merge requests): - FG#9: Python bindings crashing @@ -394,7 +757,7 @@ Documentation: (documenting all internals this way is overkill + doxygen scales badly) - New tutorial on S4U (highly inspired from the old MSG one, but with a git repository to fork as a starting point, and a docker image) - - Started but not finished a SMPI tutorial inspired from the JLPC'14 one. + - Started but not finished an SMPI tutorial inspired from the JLPC'14 one. - The Developper manual is still to be converted (not compiled until then) - Some parts are still missing in this conversion (such as the platform and deployment sections) while others were blindly converted @@ -530,7 +893,7 @@ Plugins: - Rename Energy plugin into host_energy - Rename Load plugin into host_load -simix: +Simix: - Add parameter --cfg=simix/breakpoint to raise a SIGTRAP at given time. - kill simix::onDeadlock() that was somewhat dupplicating s4u::on_deadlock() - Improve performance when handling timeouts of simix synchros. @@ -822,7 +1185,7 @@ SimGrid (3.16) Released June 22. 2017. * This is (mainly) a backward compatible change: v4 are valid v4.1 files - can be used as a synonym for the now deprecated - can be used as a synonym for the now deprecated - - an be used as a synonym for the now deprecated + - can be used as a synonym for the now deprecated - can be used as a synonym for the now deprecated - state_file and avail_file periodicity is now easier to express (check the documentation) the old behavior should still work. @@ -1758,7 +2121,7 @@ SimGrid (3.8) stable; urgency=low TRACE: * Two new tracing options for adding comments to trace file so you can track your experiments (see --help-tracing for details). - * New option to generate a impoverished trace file (--cfg=tracing/basic:1) + * New option to generate an impoverished trace file (--cfg=tracing/basic:1) * Adding the SimGrid version that generated the trace file as a comment. * Instrumenting other MSG functions (MSG_task_isend_with_matching and MSG_task_dsend) * Fix to avoid key clashes on Paje links @@ -3709,7 +4072,7 @@ SimGrid (2.90) unstable; urgency=low MSG but a few things really had to disappear. The main differences with the previous version are: 1) no more m_links_t and the corresponding functions. Platforms are - directly read from a XML description and cannot be hard-coded + directly read from an XML description and cannot be hard-coded anymore. The same format is used for application deployment description. The new format is described in the documentation. Have a look in tools/platform_generation. There is a tiny script