SimGrid (3.13) UNRELEASED; urgency=low
- The Easter Trim Release.
-
+ The Half Release, a.k.a. the Zealous Easter Trim.
+
+ - We removed half of the lines, that were mostly experimental cruft.
+ v3.12 lasted 286000 lines of code, v3.13 is only 142000 lines
+ (not counting blanks and comments -- according to openhub.net)
+ - The internals are now compiled in C++ (and will soon be clean C++)
+ - We removed 75 klines of XML, 12 klines of Java, 5 klines of cmake,
+ 59 klines of C, etc. We added only 29 klines of C++ in replacement.
+
* Backwards Compatibility breaks
- Removed Lua simulation bindings (switch to C or Java for that).
Lua can still be used to describe platforms
- the following functions were removed.
They were too specific and should be reimplemented in a generic
way, with filter function.
- - MSG_task_listen_from_host
- - MSG_mailbox_get_count_host_waiting_tasks
- - MSG_mailbox_put_with_timeout was removed.
- Please use MSG_task_send_with_timeout instead.
+ - MSG_task_listen_from_host
+ - MSG_mailbox_get_count_host_waiting_tasks
+ - MSG_mailbox_put_with_timeout was removed.
+ Please use MSG_task_send_with_timeout instead.
- In SimDag
- - the SD_application_reinit function was removed. It was a noop for a while.
+ - the SD_application_reinit function was removed. It has been a noop for a while.
- The ACCESS_MODE of SD_workstation has been removed. This feature was not really usable and should soon be
replaced by a more flexible mechanism.
- The following functions thus do not exist anymore
- SD_route_get_communication_time => SG_route_get_latency() + amount / SD_route_get_bandwidth()
- SD_workstation_get_computation_time => amount / sg_host_speed()
- In Java
- - VM.setBound(int load) is now VM.setBound(double bound) to meet the MSG semantics. Use VM.getSpeed()*load/100 for the legacy behavior.
+ - VM.setBound(int load) is now VM.setBound(double bound) to meet the MSG semantics.
+ Use VM.getSpeed()*load/100 for the legacy behavior.
- In CMake
- - option enable_tracing was removed. It was not doing anything since a while.
+ - option enable_tracing was removed. It was not doing anything for a while.
- In the ModelChecker:
- the model-checker now ptraces the model-checked process which means
you cannot use a debugger on the latter anymore (we might make this
MC_snapshot() and MC_compare_snapshot();
- keep the MC_cut() function as a stub (it was not really working
in the previous release).
-
+
Options:
* All options are consistently in kebab-case. Old names are kept as alias.
MSG_host_* and SD_workstation_* are #define to the sg_host_* ones
MSG
+ * The examples were completely reorganized (in C and Java), for your browsing pleasure.
* Kill all deprecated functions (the ones you had when declaring MSG_DEPRECATED).
They were deprecated since a few years, and probably did not even compile anymore.
Simix
* simgrid::simix::kernel() is the closure callback. It ensures that
the lambda or closure passed as a parameter will run in kernel mode.
- Every callbacks should be rewritten to that interface at some point.
-
+ All the callback functions should be rewritten to that interface at some point.
+
Surf
* Reorganizing and cleaning the internals all around the place.
They throw exceptions on invalid input;
* C++ support for declaring CLI flags (simgrid::config::Flag);
* class for abstracting different signal backends (simgrid::xbt::signal).
+ with no external dependencies (we need very simple signals).
MC
* refactoring and cleanup of the code;