X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1206896905183faeab3a492b756e4d259faa4603..8f1ee3e1004fed6acef03da662a0590da900a7d8:/ChangeLog diff --git a/ChangeLog b/ChangeLog index f3e9234557..99d68e9271 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,154 @@ -SimGrid (3.20) NOT RELEASED YET (Release target: June 21. 2018 10:07 UTC) +SimGrid (3.22) NOT RELEASED (Release Target: December 21. 2018, 22:23 UTC) + +Java: + - Expose host load plugin: loadInit, getCurrentLoad, getComputedFlops, getAvgLoad + +Core: + - Replace 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. + +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. + +XBT: + - Drop sg_cmdline. Please use xbt_cmdline instead. + - 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. + - Drop several unused xbt_os_thread_t functions: + - xbt_os_thread_get_extra_data() + - xbt_os_thread_set_extra_data() + - xbt_os_thread_self() + - xbt_os_thread_self_name() + +Fixed bugs: + - #261: Document the parameters of parallel execution's constructor + - #314: SMPI args internal cleanup + - #316: Fix a bug related to the CPU utilization of multi-core VM + +---------------------------------------------------------------------------- + +SimGrid (3.21) October 3. 2018 + +The Restarting Documentation (TRD) Release. + +Documentation: + - Convert the user manual to Sphinx for improved usability. + Unstable version now hosted on https://simgrid.frama.io/simgrid + Many glitches remain; stay tuned. + - Restrict the Doxygen reference API to the installed header files. + (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. + - 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). + Things will certainly further improve in the future releases. + +S4U new features: + - Fully reimplement auto_restart mechanism that was utterly broken + (fix #22, #131 and #281 that were all very related) + - Implement semaphores (fix #303 and #291) + - When creating an actor from a function and its parameters, + move-only parameters are not allowed anymore, as it would prevent + the actor to be restartable if its parameters are consumed on run. + - s4u::Io: IOs go asynchronous as activities. New methods in s4u::Storage: + - 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 + io_init() + start() + +Tracing: + - Rename 'power' and 'power_used' variables into 'speed' and 'speed_used' + - New host variable: 'core_count' + +XBT: + - Remove xbt_os_thread_specific features + - Remove portability wrapper to condition variables + - Remove xbt_os_thread_yield() + +SMPI: + - MPICH collective selector now mimics MPICH 3.3b + - OpenMPI collective selector now mimics OpenMPI 3.1.2 (default "tuned" setting) + - MPI_Init(NULL,NULL) is now allowed + - smpi/wtime option now injects time in gettimeofday or clock_gettime calls + - Command-line arguments should now be handled properly in Fortran simulations + - MPI Attributes and related callbacks should work in Fortran + - Apps using C + Fortran should now work + - MPI_* calls now check for non MPI_SUCCESS return values and emit warnings + - Support MPI_Error_String + +Java: + - Due to an internal bug, Msg.run() must now be your last line. + 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 + - #56: Feature request: dynamic SMPI replay + - #93: simgrid should not eat --help + - #111: How to change the loopback link characteristics? + - #116: Platform cluster radical + - #117: Platform cluster/host order + - #129: Replay_multiple on steroid + - #131: Java : autostart does not work + - #143: Setting a breakpoint at a given time + - #235: Network energy models should be integrated + - #264: Add ptask L07 resource tracing + - #271: Dynamic and manual replay of SMPI traces + - #279: Breakpoints option uses time deltas instead of absolute time + - #281: Daemonized actor no longer daemonized after an auto-restart + - #282: TIT convertor erase traces when using absolute path in the trace list file + - #285: segfault when a s4u actor kills itself with msg process tracing activated + - #286: Pajé traces are not exposing the number of cores + - #287: Command-line parsing should stop when encountering '--' + - #288: MPI_Init(NULL, NULL) + - #289: Improve documentation of Actor::on_destruction and this_actor::on_exit() + - #290: Method to check if a mailbox has a message ready to be consumed + - #291: [s4u] semaphores do not seem available yet + - #294: Alltoall collective implementation of mpich + - #295: Starting a Host as OFF is not supported + - #296: DTD too permissive + - #299: Add a s4u barrier example + +---------------------------------------------------------------------------- + +SimGrid (3.20) Released June 24. 2018 + +The proxy snake_case() release. + +S4U: + - The whole API is now using snake_case() instead of mixing it with camelCase. + Compatibility wrappers in place for one year. + - We took the opportunity to increase the consistency of the API. + Please report any remaining glitches. + - New function simgrid::s4u::Host::get_actor_count: + Returns the number of actors running on a specific host. + +SMPI: + - SMPI is now tested with ~45 proxy apps from various sources, with none or + only minor patching needed: check https://github.com/simgrid/SMPI-proxy-apps + - Replay: The replay file has been re-written in C++. + - Replay: Tags used for messages sent via MPI_Send / MPI_Recv are now + supported. They are stored in the trace and used when replayed. + - Basic support of MPI_Cancel. Robustness not guaranteed. + - Support of MPI_Win_allocate_shared, MPI_Win_shared_query, MPI_Comm_split_type + (only for MPI_COMM_TYPE_SHARED). + - New option: smpi/privatize-libs, to add external shared libs to be privatized + by SMPI. They will be copied locally and loaded separately by each process. + Example --cfg=smpi/privatize-libs:"libgfortran.so.3;libscalapack.so". + - Tracing: add tracing for MPI_Start, Startall, Testall, Testany + - Interception of getopt, getopt_long and getopt_long_only calls to avoid issues + with internal index optind with multiple processes. Only works if MPI_Init has + already been called. + - Fortran: SMPI builds a mpi.mod file which should allow use of "use mpi" + syntax without preprocessing tricks. TRACE - Change --cfg=tracing/msg/vm to --cfg=tracing/vm as virtual machine @@ -14,8 +164,8 @@ TRACE identify which request you want to wait for. We do this via the triplet (sender, receiver, tag), which needs to be added: - - We lowercased all actions: For instance, instead of allReduce, we now - use allreduce. + - Actions are now in lower case (e.g., "allReduce" becomes "allreduce"). + New script simgrid_convert_TI_traces.py: upgrade your TI traces. MSG - The deprecation of MSG is ongoing (but this should not impact you). @@ -24,10 +174,6 @@ MSG your MSG calls in src/msg/msg_legacy.cpp. - MSG can still be used, but won't evolve anymore. -S4U: - - Introduced new function simgrid::s4u::Host::get_actor_count. This function - returns the number of actors running on a specific host. - Plugins: - Allow to run the Link energy plugin from the command line with --cfg=plugin:link_energy @@ -39,25 +185,6 @@ simix: - kill simix::onDeadlock() that was somewhat dupplicating s4u::on_deadlock() - Improve performance when handling timeouts of simix synchros. -SMPI: - - SMPI is now tested with ~45 proxy apps from various sources, with none or - only minor patching needed: check https://github.com/simgrid/SMPI-proxy-apps - - Replay: The replay file has been re-written in C++. - - Replay: Tags used for messages sent via MPI_Send / MPI_Recv are now - supported. They are stored in the trace and used when replayed. - - Basic support of MPI_Cancel. Robustness not guaranteed. - - Support of MPI_Win_allocate_shared, MPI_Win_shared_query, MPI_Comm_split_type - (only for MPI_COMM_TYPE_SHARED). - - New option: smpi/privatize-libs, to add external shared libs to be privatized - by SMPI. They will be copied locally and loaded separately by each process. - Example --cfg=smpi/privatize-libs:"libgfortran.so.3;libscalapack.so". - - Tracing: add tracing for MPI_Start, Startall, Testall, Testany - - Interception of getopt, getopt_long and getopt_long_only calls to avoid issues - with internal index optind with multiple processes. Only works if MPI_Init has - already been called. - - Fortran: SMPI builds a mpi.mod file which should allow use of "use mpi" - syntax without preprocessing tricks. - XBT: - Config: the C API is now deprecated (will be removed in 3.23), and the C++ API has been slightly improved. @@ -72,7 +199,7 @@ Fixed bugs: - #258: daemonized actors hang after all non-daemonized actors have completed - #267: Linker error on unit_tmgr - #269: SMPI: tracing of MPI_Wait/all/any broken - - SMPI: Fix various crashes with combined use of MPI_PROC_NULL and MPI_IGNORE_STATUS + - SMPI: Fix various crashes with combined use of MPI_PROC_NULL and MPI_IGNORE_STATUS ----------------------------------------------------------------------------