X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4dae60d5a4aeec1d06652d2f1da484720c99850d..9982cd9fee0903300e2323bc196a5262f4e5b969:/ChangeLog diff --git a/ChangeLog b/ChangeLog index 44c39b1f88..0e8e33a51b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,138 @@ -SimGrid (3.17) UNRELEASED (release target: September 22 2017) +SimGrid (3.19) NOT RELEASED YET (target: March 20 2018, 16:15:27 UTC) + + MSG + - Fix MSG_task_get_remaining_work_ratio() to return 1.0 for tasks that have + not started. + + S4U + - Execution->setHost() can be called after start() to migrate it. + - Comm::test_any() is now implemented. + - s4u::Actor now has onCreation() and onDestruction() signals. + + XBT + - Remove XBT_LOG_CONNECT, it should be useless nowadays. + + SMPI + - The privatization of global variables via mmap() is now significantly more + flexible and allows the use of daemons with SMPI and to add new processes + while the simulation is running. (Adding new SMPI instances after the + simulation has already started should also be technically doable now.) + - Removed index notion from SMPI -- no more "getPid() - 1"! + This also means that the trace files + now contain actors called rank-. These are NOT the real + ranks, because tracing several communicators right now is not supported. + - Because of this, smpi_process_index() has now been deprecated and will + be removed in 3.21 + Fixed bugs: + - #245: migrating an actor does not migrate its execution + +SimGrid (3.18) Released December 24 2017 + + The "Ho Ho Ho! SimGrid 4 beta is coming to town" release. + + MSG IS NOW DEPRECATED. Please use S4U for new projects. + - Support for MSG should not be removed from SimGrid before 2020, + but future evolutions will be limited to the integration of + user-provided patches. + + S4U New features + - s4u::onDeadlock() signal, run before stopping the simulation. + - s4u::Exec: asynchronous executions (abstraction of background + threads) + - s4u::Host->getLoad() returns the achieved speed in flops/s + + S4U API changes + - Link::name() is deprecated and will be removed in v3.21, use + Link::getCname() instead. + - Mailbox::getName() changed to return a std::string, use + Mailbox::getCname() instead to get a char*. + - Storage::getName() changed to return a std::string, use + Storage::getCname() instead to get a char*. + - s4u::allStorages() becomes s4u::getStorageList(whereTo) + to have both allocation and deallocation of the map in user space. + + MSG + - Forbid the use of MSG_task_get_flops_amount() on parallel tasks: + The amount of flops remaining to do is a vector, not a scalar. + - Introduce MSG_task_get_remaining_work_ratio(), which does what its + name implies on both sequential and parallel tasks. + - Both changes fix GitHub's #223 using PR #237 as a basis. + Thanks Michael Mercier. + - Most examples were converted to S4U and hidden elsewhere at tests. + Rationale: we still want MSG to work; we want newcomers to use S4U. + + SURF + - LMM stuff moved to its own namespace: simgrid::kernel::lmm. + - Renamed LMM classes (e.g. s_lmm_system_t -> System). + + SMPI + - Switch to the faster dlopen privatization mechanism by default + - Documentation improvments + + Virtual Machines + - Live migration is getting moved to a plugin. Dirty page tracking is + the first part of this plugin. This imply that VM migration is now + only possible if one this function is called : + - C/MSG: MSG_vm_live_migration_plugin_init() + - C/C++: sg_vm_live_migration_plugin_init() + - Java: Msg.liveMigrationInit() + For C and C++, "simgrid/plugins/live_migration.h" also has to be + included. + + XBT + - Define class simgrid::xbt::Path to manage file names. + - Removed unused functions: + - xbt/file.h: xbt_basename(), xbt_dirname(), xbt_getline() + - xbt/graph.h: xbt_graph_edge_get_length(), xbt_graph_edge_set_length, + xbt_graph_export_graphviz() + - xbt/str.h: xbt_str_join() + - Remove unused datatypes: + - xbt/heap.h: use std::priority_queue or boost::heap instead + - xbt/swag.h: use boost::intrusive::list instead + + PLUGINS: + - New link_energy plugin for the consumption of the links. + - All of the operations on files and storage contents have been + packaged into a plugin (src/plugins/file_system). The current + public interface can be found in + include/simgrid/plugins/file_system.h + To use these functions you now have to initialize the plugin by + calling MSG_storage_file_system_init() just after calling + MSG_init() or sg_storage_file_system_init() just after creating + the Engine. + + XML + - Remove the undocumented/untested tag + + TRACE + - Remove viva specific tracing as the tool is no longer maintained + + Fixed bugs: + - #248: Kill of finished processes leads to segfault + - #240: xbt_cond_wait_timeout should gracefully return for C apps + - #239: please implement signal s4u::onDeadlock() + - #230: segfaults when exit() without run() + - #225: s4u::Actor::kill() doesn not really kill victims in a join() + - #223: MSG_task_get_flops_amount() not working with parallel tasks + - #222: Actor::kill() doesn't really kill and segfaults + - #221: odd LMM warning when killing an actor + - #120: Memory leak when the processes are forcefully killed + +SimGrid (3.17) Released October 8 2017 + + The Drained Leaks release: (almost) no known leaks despite the tests. + + Even very long simulations will preserve your memory: our testsuite + stresses SimGrid for over 45mn on fast machines for a coverage of + over 80%, and there is only one single known leak, of about 4kb. + S4U - - Comm.detach(): start and forget about asynchronous emission + - Comm.detach(): start and forget about asynchronous emission. A cleanup + handler may be given to free resources if the comm cannot be completed. - this_actor::send(mailbox) is now mailbox->put() - New: simgrid::s4u::Comm::wait_all() + - New: Host.execute() for remote executions. SURF - Unused option network/sender-gap is removed. @@ -12,6 +141,38 @@ SimGrid (3.17) UNRELEASED (release target: September 22 2017) - Deprecate MSG_task_isend_with_matching(): This unused feature really complicates our internals. Will be removed in v3.20. + Simix + - Improved context termination. It is now possible to free resources, even + when a process is forcibly killed. + - ContextBoost: add support for Boost versions above 1.61. + + XBT + - Bring back run-time option --cfg=exception/cutpath to remove exception + backtraces. + - Removed unused functions: + - xbt/str.h: xbt_str_split_str(), xbt_str_subst(), xbt_str_ltrim(), + xbt_str_rtrim(), xbt_str_trim(). + - xbt/xbt_os_thread.h: xbt_os_thread_cancel(), xbt_os_thread_detach(). + + Misc + - Removed header files obsolete since SimGrid 3.12: + msg/datatypes.h, msg/msg.h, simdag/datatypes.h, simdag/simdag.h. + - Fix many bugs: + - #3: SD_exit should be made optional + - #120: Memory leak when the processes are forcefully killed + - #159: Threading test regression in Actor refcounting + - #170: simgrid::s4u::Comm::wait_any() returns too many comms + - #185: simgrid::s4u::Engine::instance()->shutdown() segfaults + - #186: Actor::killAll() segfaults if some process is blocked on wait() + - #191: VM migration and pstate + - #192: Updating the energy consumptions of all hosts crashes with VMs + - #195: All actors have PID=0 in the logs + - #204: Sometimes segfault with thread contexts and mmap privatization + - #222: Actor::kill() doesn't really kill and segfaults + - #225: Actor::kill() doesn't really kill when victims are doing a join() + +---------------------------------------------------------------------------- + SimGrid (3.16) Released June 22. 2017. The Blooming Spring Release: developments are budding. @@ -41,7 +202,7 @@ SimGrid (3.16) Released June 22. 2017. When one wants to get the list of tasks whose states have changed during a simulation round, s/he has to allocate and free a dynar and use it as argument to this function. The former SD_simulate (double how_long) - now returns void. + now returns void. Virtual Machines - Allow multicore VMs, with the correct sharing (unless you overcommit)