X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/51c4616b5fb2a3f8b7759883989152a8e7a7df15..4af8aca04c6ee72db752866796034d67ca2e900d:/ChangeLog diff --git a/ChangeLog b/ChangeLog index f790d041a3..e90432e99a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,55 @@ -SimGrid (3.33.1) not released yet (target december 22) +SimGrid (3.34.1) not released (Target: fall 2023) + +S4U: + - New class ActivitySet to ease wait_any()/test_any()/wait_all() + - Deprecate {Comm,Io,Exec}::{wait_any,wait_all,test_any} and friends + - New function NetZone::add_route(host1, host2, links) when you don't need gateways + Also add a variant with s4u::Link, when you don't want to specify the directions + on symmetric routes. + - Introduce a Mailbox::get_async() with no payload parameter. You can use the new + Comm::get_payload() once the communication is over to retrieve the payload. + - Implement recursive mutexes. Simply pass true to the constructor to get one. + - Introduce a new MessageQueue abstraction and associated Mess simulated object. + The behavior of a MessageQueue is similar to that of a Mailbox, but intended for + control messages that do not incur any simulated cost. Information is automagically + transported over thin air between producer and consumer. See examples/cpp/mess-wait + +SMPI: + - New SMPI_app_instance_join(): wait for the completion of a started MPI instance + - MPI_UNIVERSE_SIZE now initialized to the total amount of hosts in the platform + +sthread: + - Implement recursive pthreads. + - Many bug fixes. + +Python: + - Make the host_load plugin available from Python. See examples/python/plugin-host-load + - Mailbox::get_async() does not return a pair anymore. Use comm.get_payload() instead. + - Comm::waitall/waitany/testany() are gone. Please use ActivitySet() instead. + - Comm::waitallfor() is gone too. Its semantic was unclear on timeout anyway. + - Io::waitany() and waitanyfor() are gone. Please use ActivitySet() instead. + +C API: + - Introduce sg_activity_set_t and deprecate wait_all/wait_any/test_any for + Exec, Io and Comm. + +Plugins: + - Revamp the battery plugin: rewrite completely the API, for a better usability. + The examples were updated accordingly. + - Revamp of the Photovoltaic plugin: now called SolarPanel and complete rewrite of the API + - Add chiller plugin: enable the management of chillers consuming electrical energy + to compensate heat generated by hosts. + +Kernel: + - optimize an internal data structure (replace boost::circular_buffer_space_optimized by + std::deque to store pending and unmatched Comms in Mailboxes). It is actually a revert + to what was used a few years back. The boost structure had a lower memory footprint than + deques, but it appeared that their "space_optimized" character was generating a huge lot + of refcount changes on the stored Comms. + +---------------------------------------------------------------------------- + +SimGrid (3.34) June 26. 2023 Save the planet, skip a release: 3.33 was due 6 months ago, so skip directly to 3.34. @@ -22,7 +73,7 @@ S4U: - New Task abstraction: They are designed to represent dataflows, i.e, graphs of repeatable Activities. See the examples under examples/cpp/task-* and the associated documentation. - Full simDAG integration: Activity::start() actually starts only when all dependencies - are fullfiled. If it cannot be started right away, it will start as soon as it becomes + are fulfilled. If it cannot be started right away, it will start as soon as it becomes possible. - Allow to set a concurrency limit on disks and hosts, as it was already the case for links. - Rename Link::get_usage() to Link::get_load() for consistency with Host:: @@ -44,7 +95,7 @@ New S4U plugins: See the examples under examples/cpp/photovoltaic-* and the documentation in the Plugins page. Kernel: - - optimize an internal datastructure (use a set instead of a list for ongoing activities), + - optimize an internal data structure (use a set instead of a list for ongoing activities), leading to a potentially big performance gain, in particular with many detached comms. MPI: @@ -54,7 +105,7 @@ MPI: Models: - Write the section of the manual about models, at least. - - WiFi: the total capacity of a link depends on the amout of flows on that link. + - WiFi: the total capacity of a link depends on the amount of flows on that link. - Use the nonlinear callback feature of LMM to reflect this. - Calibration values can be changed to match different MCS configurations - See the example teshsuite/models/wifi_usage_decay/wifi_usage_decay.cpp @@ -79,12 +130,12 @@ sthread: Model checking: - Stateless model-checking is now usable on any system, including Mac OSX and ARM processors. - The stateless aspects of the MC are now enabled by default in all SimGrid builds. - Liveness and stateful aspects are still controled by the enabling_model-checking + Liveness and stateful aspects are still controlled by the enabling_model-checking configuration option. - Introducing ODPOR and SDPOR reduction strategies - Introducing guiding heuristics, trying to find bugs faster than DFS in reduced state space. - Synchronize the MBI tests with upstream. - - Show the full actor bactraces when replaying a MC trace (with model-check/replay) + - Show the full actor backtraces when replaying a MC trace (with model-check/replay) and the status of all actors on deadlocks in MC mode. XBT: