X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9127f4b61aea019a590504932e48f314460e3914..864e6d2acf4025d098743c670cc44ca2f3b59bb1:/ChangeLog diff --git a/ChangeLog b/ChangeLog index eff9d76380..2351083839 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,34 +1,178 @@ -SimGrid (3.10) NOT RELEASED; urgency=low +SimGrid (3.11) NOT RELEASED; urgency=low + + TENTATIVE RELEASE GOALS for 3.11: + * Switch to tesh.pl, and kill the now unused parts of xbt that seem fragile + * Clean up CMake files (may need a full rewrite). + Non exhaustive list of subgoals: + - Use genuine cmake mechanisms and variables when available, + instead of reinventing the wheel. + - Correctly determine system and architecture (e.g. x32). + - Correctly determine compiler type and version (e.g. clang). + - Correctly set compiler flags according to compiler type and version. + - Correctly set compiler flags for C++, Java, and Fortran compilers too. + - Use git to generate the dist archive. Either use git-archive to + generate the tarball, or keep using cmake -E tar, but use git-ls-files + to get the list of files to pack. + + The Class Release. + + Tools: + * Normalizing pointers addresses tool for better diff between logs + + Examples: + * Add cloud examples using new VMs + - examples/msg/cloud/two_tasks_vm.tesh + - examples/msg/cloud/simple_vm.tesh + - examples/java/cloud/cloud.tesh + - examples/java/cloud/migration/migration.tesh - XBT: - * Our own implementation of getline is renamed xbt_getline, and gets - used even if the OS provide a getline(). This should reduce the - configuration complexity by using the same code on all platforms. + MSG: + * Add virtual machine + - creation of a VM on a PM + - migration of a VM from a PM to another PM + + Simcalls: + * Simcalls are now generated by a python script + - generate files include by simgrid + - check that all the functions exists and propose prototypes + * Clean simcalls + - remove sem_destroy, file_set_data, comm_destroy, vm_set_state, + host_set_data, host_get_data + + SURF: + * Translate surf models from C to C++ + - Generic classes for all models: Model, Resource, Action + - A generic interface for each kind of model (cpu, network, storage + workstation, workstationvm) + - C bindings + * Translate surf routings from C to C++ + * Add callbacks using sigc++ or boost::signals2 + - Add callback functions for resource creation/destruction + - Add callback functions for action state change + - Handle Energy as a plugin + * Replace swag by boost::intrusive + * Add new routing model for torus clusters + * More documentation + + SMPI: + * hostfiles support host:nb_processes construct to deploy several processes on + one node + * Collective communication algorithms should not crash if used with + improper number of nodes and report the error. + + Java: + * New cmake option, enable_lib_in_jar, to control whether native libraries are + copied into simgrid.jar or not (ON by default). Use this option if you want + to reduce the size of the installed simgrid.jar, *and* the native libraries + are kept installed elsewhere. + + Build System: + * Supernovae build mode is definitively removed. It was used to improve + inlining and inter-module optimizations. It is nowadays superseded by + link-time optimizations commonly available in compilers. + * Update ns3 find lib. NS3 bindings should work again now. + * Add boost dependency for surf++ + + -- $date Da SimGrid team + +SimGrid (3.10) stable; urgency=low + + The Clean Diaper Release, a.k.a. SimGrid is leak-free. Java: * Reintegrate Java to the main archive as desynchronizing these package is not acceptable anymore (Java is now considered stable) - * Bugfix: Task.setDataSize() only changed the C world, not the value + * Add explicit synchronization facilities through semaphores + * Bug fix: Task.setDataSize() only changed the C world, not the value cached in the Java world MSG: * Dramatically change the way files are handled. API and internals changed, but this part of MSG was not considered as production grade either. * Add explicit synchronization facilities through semaphores + * Add a new function MSG_host_get_process_list() + * Preliminary DVFS support (see examples/msg/energy/ for details) SMPI: - * SMPI is not built as a separate library anymore, it's now included in - libsimgrid. + * SMPI is now included directly in the libsimgrid as the windows + linker doesn't force us on splitting it anymore. * Improvements of the SMPI replay tool: - Most of the collective communications are now rooted in the same process as in the original application. - - Traces now rely on the same MPI datatype as the application (MPI_BYTE was - used until now). Multiple datatypes can now be used in a trace. + - Traces now rely on the same MPI data type as the application (MPI_BYTE was + used until now). Multiple data types can now be used in a trace. - The replay tool now supports traces produce either by TAU or a modified version of MPE. - Bug Fix: the compute part of the reduce action is now taken into account. + - Gatherv collective is now supported + - SimGrid (SMPI for now) can generate replay traces as well. Option -trace-ti + of smpirun outputs time independent traces for the current run. One file + is created per process. If too many processes are simulated, this behavior + can be changed to one file for all processes by using the + tracing/smpi/format/ti_one_file flag + * smpirun generates the host file if needed (with given host count and platform) + * Integration of more than 100 STAR-MPI, MPICH, OpenMPI collective algorithms + - allows to select one in particular with --cfg=smpi/coll_name:algorithm + - allows to use the decision logic of OpenMPI(1.7) or MPICH(3.0.4) by setting + --cfg=smpi/coll_selector:(mpich/ompi) + * Support for new functions : MPI_Issend, MPI_Ssend, Commutative operations in + Reduce + * Add a --cfg:tracing/smpi/internals option, to trace internal communications + happening inside a collective SMPI call. + * Fix the behavior of complex data types handling. + * Make MPI_Wtime another synchronization point to take computations into account. + * Replace MPICH-1 test suite by the one from MPICH 3.0.4. Can be built using + enable_smpi_MPICH3_testsuite flag in cmake. Run with ctest. + * Add all missing Fortran bindings, SMPI should work with Fortran 90 + (no privatization of global variables yet) + * Preliminary DVFS support (see examples/smpi/energy/ for details) + + Model-Checking; + * Verification of liveness properties is now available for SMPI applications + (in addition to MSG applications) + * Bugged examples using SMPI in examples/smpi/mc/ + * Add --cfg=model-check/visited option. Allows the verification of infinite + programs. Detection of loops in the execution thanks to the system state + comparison and reduction of the state space to explore. Can be combined with + DPOR for safety properties. + + SimDag: + * Allow to change SimGrid configuration (see --help) within the code + thanks to SD_config() as it can be done in MSG. + * Add a new function SD_task_set_amount() upon user request. + + PLATFORM: + * Handle units for values (10ms, 10kiloflops, 10Bps, 1GB, ...) + * Remove rule based routing (no more PCRE dependency) + * Add a limiter_link option to cluster tag, to specify a maximum reachable + bandwidth in fullduplex mode when it is less than twice the nominal bandwidth. + * Add a loopback_bw and loopback_lat options to cluster tag. + * Fix the peer tag that could not be mixed with other AS within a Vivaldi + routing. Now peers are encapsulated in an AS and have their own private + router but this is transparent. + + XBT: + * Our own implementation of getline is renamed xbt_getline, and gets + used even if the OS provide a getline(). This should reduce the + configuration complexity by using the same code on all platforms. + * New type: xbt_cfg_elm_boolean. + * Allow to use yes/no for boolean configuration options in the command line. + * Allow to disable SimGrid cleanups at exit from command line option. + There are situations where one may want a simulation to end with an exit. + Unfortunately, calling exit may cause SimGrid to segfault, which is quite + annoying when scripting around the simulator. Adding a + --cfg=clean_atexit:no allows to circumvent this issue. + + Build System: + * Lots of memory leaks were corrected in this release. + There is no known memory leaks anymore, in all of our 600+ tests. + * New command line option --version, to get SimGrid version information. + Packagers may want to add extra words to SIMGRID_VERSION_EXTRA defined in + CMakeLists.txt. + * Supernovae builds are deprecated, and expected to be removed in the next + version of SimGrid. --- $date Da SimGrid team + -- Sun Nov 17 00:26:44 CET 2013 Da SimGrid team SimGrid (3.9) stable; urgency=low @@ -104,7 +248,7 @@ SimGrid (3.9) stable; urgency=low TRACING: * Transfer the tracing files into the corresponding modules. - -- Tue Feb 5 11:31:43 CET 2013 Da SimGrid team + -- Tue Feb 5 11:31:43 CET 2013 Da SimGrid team SimGrid (3.8.1) stable; urgency=low @@ -404,7 +548,7 @@ SimGrid (3.7) stable; urgency=low Turn model-checking OFF if simulation performance matters to you. Not enabling it at runtime is not enough, disable it in cmake. - -- Tue May 15 11:30:19 UTC 2012 Da SimGrid team + -- Tue May 15 11:30:19 UTC 2012 Da SimGrid team SimGrid (3.6.2) stable; urgency=low