-SimGrid (3.22) NOT RELEASED (Release Target: December 21. 2018, 22:23 UTC)
+----------------------------------------------------------------------------
-Java:
- - Expose host load plugin: loadInit, getCurrentLoad, getComputedFlops, getAvgLoad
+SimGrid (3.23.2) July 8. 2019
+
+Documentation:
+ - Nicer introduction page.
+ - Migrate the "Deploy your application" page to the new doc.
+ - Move Java as a subtree of MSG.
+
+General:
+ - Rename simgrid::TimeoutError to simgrid::TimeoutException.
+
+XBT:
+ - Drop xbt_dynar_sort_strings().
-Core:
- - Replace our own code to display a backtrace (that was forking addr2line)
+Bugs:
+ - Really fix FG#26: Turning off a link should raise NetworkFailureException
+ - FG#27: Wrong exception thrown to wait_any when link is turned off
+
+----------------------------------------------------------------------------
+
+SimGrid (3.23) June 25. 2019
+
+The Exotic Solstice Release.
+
+General:
+ - SunOS and Haiku OS support. Because exotic platforms are fun.
+ - Stop setting random seed with srand48() at initialization.
+ - Use addr2line as a fallback for stacktraces when backtrace is not available.
+ - Build option -Denable_documentation is now OFF by default.
+ - Network model 'NS3' was renamed into 'ns-3'.
+
+Python:
+ - Simgrid can now hopefully be installed with pip.
+
+S4U:
+ - wait_any can now be used for asynchronous executions too.
+
+XBT:
+ - New log appenders: stdout and stderr. Use stdout for xbt_help.
+ - Drop xbt_dict_dump.
+
+SMPI:
+ - SMPI now reports support of MPI3.1. This does not mean SMPI supports all MPI 3 calls, but it was already the case with 2.2
+ - MPI/IO is now supported over the Storage API (no files are written or read, storage is simulated). Supported calls are all synchronous ones.
+ - MPI interface is now const correct for input parameters
+ - MPI_Ireduce, MPI_Iallreduce, MPI_Iscan, MPI_Iexscan, MPI_Ireduce_scatter, MPI_Ireduce_scatter_block support
+ - Fortran bindings for async collectives.
+ - MPI_Comm_get_name, MPI_Comm_set_name, MPI_Count support.
+
+Model-checker:
+ - Remove option 'model-check/record': Paths are recorded in any cases now.
+ - Remove option 'model-check/sparse-checkpoint': Checkpoints are now
+ always sparse. That's an immense gain in memory, and can even be
+ faster because of cache effects. So there is no need to clutter the
+ code to allow the user to go for the unefficient mode.
+
+Network models:
+ - Remove the lagrange-based models (Reno/Reno2/Vegas). The regular
+ models proved to be more accurate than these old experiments.
+
+Fixed bugs (FG=FramaGit; GH=GitHub -- Please prefer framagit for new bugs)
+ - FG#1: Broken link in error messages
+ - FG#2: missing installation documentation
+ - FG#3: missing documentation in smpirun
+ - FG#6: Python bindings not available on PyPI
+ - FG#7: simple cmake call requires doxygen
+ - FG#8: make python bindings an optional dependency
+ - FG#10: Can not use MSG_process_set_data from SMPI any more
+ - FG#11: Auto-restart actors forget their on_exit behavior
+ - FG#12: -Denable_lto=OFF doesn't disable LTO
+ - FG#13: Installs unstripped file 'bin/graphicator'
+ - FG#14: Installs the empty directory 'doc/simgrid/html'
+ - FG#15: Setting -Denable_python=OFF doesn't disable the search for pybind11
+ - FG#17: Dead link in doc (pls_ns3)
+ - FG#20: 'tesh --help' should return 0
+ - FG#21: Documentation link on http://simgrid.org/ broken
+ - FG#22: Debian installation instruction are broken
+ - FG#26: Turning off a link should raise NetworkFailureException exceptions
+ - GH#133: Java: a process can run on a VM even if its host is off
+ - GH#320: Stacktrace: Avoid the backtrace variant of Boost.Stacktrace?
+ - GH#326: Valgrind-detected error for join() when energy plugin is activated
+
+----------------------------------------------------------------------------
+
+SimGrid (3.22) April 1. 2019
+
+The Easter Christmas Release (this one is somewhat late).
+
+Python:
+ - We are excited to introduce the SimGrid/S4U interface to your neighborhood
+ - Not complete yet: asynchronous activities (amongst others) are still missing
+ - Still ongoing: the interface may change in the future. We need more
+ testers! Please report any glitches.
+ - No new project using Java should start now. Please switch to Python.
+
+General:
+ - Some of the internal cleanups may lead to speed improvements:
+ - The hard limitation on the amount of simulated actors with
+ Java+Mac was removed. Now, the available memory is the only limit.
+ - Our refcounting was tidyied, leading to 10% speedups in some cases.
+ - We are still working on making our code robust to the actor kills
+ and hosts' churn. Things are improving, but it's not perfect yet.
+ - Replaced our own code to display a backtrace (that was forking addr2line)
with the Boost.Stacktrace library.
You won't see your backtraces without this optional dependency.
+ - Bump cmake dependency to 3.5 (provided by Ubuntu 16.04).
+ - Stop setting random seed with srand() at initialization.
+
+XML
+ - In <host> and <peer>, 'availability_file' is now 'speed_file'.
+ XML file version remains 4.2 since old files are still compatible.
+
+Java:
+ - Process termination which was broken at version 3.21 has been repaired.
+ - Expose host load plugin: loadInit, getCurrentLoad, getComputedFlops, getAvgLoad
+ - Hide the examples into examples/deprecated. New users should use Python.
+
+MSG:
+ - Drop MSG_process_create_from_stdfunc() from the API.
+ This C++ function was a pimple in the C API, made necessary at some
+ point by the Java bindings. This is fixed now.
+ - Hide the examples into examples/deprecated. New users should use S4U.
+ - MSG_process_create and MSG_process_attach now crash if the host used
+ to run this process is off.
+ - Fix the protype of MSG_process_on_exit()
+ Now use (int,void*) callbacks instead of (void*,void*) ones.
+ The implementation was ways too messy to actually work, I guess.
+
+SMPI:
+ - Change the way SMPI_SAMPLE_* macros work to avoid invalidating cache
+ too often and provide more accurate timings.
+ - Add -gdb, -lldb, and -vgdb shortcuts to help debug MPI codes with smpirun
+ - MPI_Alltoallw support
+ - Partial MPI nonblocking collectives implementation: MPI_Ibcast, MPI_Ibarrier,
+ MPI_Iallgather, MPI_Iallgatherv, MPI_Ialltoall, MPI_Ialltoallv, MPI_Igather,
+ MPI_Igatherv, MPI_Iscatter, MPI_Iscatterv, MPI_Ialltoallw.
+ - MPI_Request_get_status, MPI_Status_set_cancelled, MPI_Status_set_elements
+ support
+ - Basic implementation of generalized requests (SMPI doesn't
+ allow MPI_THREAD_MULTIPLE) : MPI_Grequest_complete, MPI_Grequest_start
+
+XBT:
+ - Drop sg_cmdline. Please use xbt_cmdline instead.
+ - Drop the C xbt_os_mutex_t; Use the C++11 std::mutex.
+ - Drop the C xbt_os_sem_t; Use the C++ xbt::OsSemaphore.
+ OsSemaphore is implemented in a portable way with C++11 threads.
+ This should allow much more threads to be created at the same time,
+ allowing Mac and Java users to simulate many more actors.
+ - Implement the 'thread' factory with std::thread instead of xbt ones.
+ It is not possible to set the stack size with threads anymore, but
+ -fsplit-stack is the way to go nowadays when using threads.
+ - Drop the xbt_os_thread_t module (now unused)
+ - Drop xbt_ex_display(), use simgrid::xbt::log_exception() instead.
+ - Drop xbt_str_join_array().
+ - Drop cunit, use Catch2 instead.
+
+Kernel:
+ - Many cleanups in the kernel::activity namespace. This was long
+ overdue, and shall open the path to many future endeavors.
Fixed bugs:
+ - #132: Java: a process can not shut down its own host
+ - #220: S4U: detached send causes exception if sender terminates soon after sending
- #261: Document the parameters of parallel execution's constructor
+ - #300: [s4u] BarrierPtr is missing
+ - #314: SMPI args internal cleanup
+ - #316: Fix a bug related to the CPU utilization of multi-core VM
+ - #318: Invalid trace file when using option --cfg=tracing/smpi/display-sizes:yes
+ - #324: S4U: Attempting to create an actor on turned off host segfaults instead of throwing
+ - #325: Turning off a host has different behavior on sleeping actors and computing actors
----------------------------------------------------------------------------
- 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
- and would need more love (such as the configuration flags).
+ and would need more love (such as the configuration flags).
Things will certainly further improve in the future releases.
S4U new features:
- io_init(sg_size_t, s4u::Io::OpType) to create a READ or WRITE asynchronous
IO operations that can be started, waited for, or canceled as a regular
activity.
- - read_async(sg_size_t) and write_async(sg_size_t) which are wrappers on
+ - read_async(sg_size_t) and write_async(sg_size_t) which are wrappers on
io_init() + start()
Tracing:
We hope to fix it in a future release, and we are sorry for the inconvenience.
Fixed bugs:
- - #22: Process autorestart seem to only work with CAS01 cpus
+ - #22: Process autorestart seem to only work with CAS01 cpus
- #56: Feature request: dynamic SMPI replay
- #93: simgrid should not eat --help
- #111: How to change the loopback link characteristics?
* VM I/O related things:
- Ignored parameter of vm_create: core_nb, disk_path and disk_size.
- Unimplemented save/restore methods
- * MSG_as_router_get_property_value() was redundent with
+ * MSG_as_router_get_property_value() was redundant with
MSG_environment_as_get_property_value().
- Removed MSG_as_router_*propert*() functions
- Added MSG_environment_as_set_property_value() for consistency
flops that a <host>, <peer>, <cluster> or <cabinet> can deliver per second.
- In <trace_connect>, attribute kind="POWER" is now kind="SPEED".
- In <host> and <link>, attributes availability and state are gone.
- It was redundent with state and availability traces, and with peak values.
+ It was redundant with state and availability traces, and with peak values.
- In <cluster>, attributes availability_file and state_file are gone.
It was too complex and unused.
- Kill <gpu>. Was not doing anything.
the pthread backend. It caused some weird deadlock or behavior
depending on the pthread implementation. [AL]
* Bugfix: get the exceptions raised in the simulator repport where
- and why they come from when they are not catched in time [AL, MQ]
+ and why they come from when they are not caught in time [AL, MQ]
SURF:
* Bugfix: Do repport the error when two non-connected hosts try to
* New! Exception handling with setjmp or such (code from OSSP ex) [MQ]
This deprecates the xbt_error_t mechanisms.
It modifies (simplifies) all XBT and GRAS API.
- MSG API keeps unchanged (exceptions raised by XBT are catched from
+ MSG API keeps unchanged (exceptions raised by XBT are caught from
within MSG and masked with existing error handling facilities)
SURF: