X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fc3419efe4d92bfa202543376995977c6a3171e9..9acfed104fb72a8fa44ec1f5bff196a2ae098c64:/ChangeLog diff --git a/ChangeLog b/ChangeLog index f458630970..5abdda77c9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,13 +1,263 @@ -SimGrid (3.9) 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 + + MSG: + * Add virtual machine + - creation of a VM on a PM + - migration of a VM from a PM to another PM + + SIMIX: + * Protect context stacks against stack overflow. The number of protected memory + pages allocated on the top of each stack (1 by default) can be configured + with the new command line option --cfg=contexts/guard_size:. + * Simcalls are now generated by a python script that + - generates files included by SimGrid + - checks that all the functions exist, and proposes 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 ns-3 find lib. Bindings for ns-3 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) + * 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 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 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. + + -- Sun Nov 17 00:26:44 CET 2013 Da SimGrid team + +SimGrid (3.9) stable; urgency=low + + The Grasgory release: GRAS is really dead now. + + * Complete overhaul of the internal host structures scheme. + + GRAS: + * If you use GRAS, you should stay at SimGrid 3.5 (at most) since it + was considered as experimental and badly maintained since then. + * Keeping it was thus a trap to our potential users, that could take + it instead of MSG or SMPI by mistake despite is pity state. + * GRAS seems to have very few users (if any), and no one volunteered + to maintain it further. It also induces a lot of XBT code (for + portability sake), that must be maintained too. + * For all these reasons, we killed GRAS. If someone wants to revive it + in the future, don't cry, our git history still remembers of GRAS. + + Documentation: + * Major overhaul. Merge our documentation again as time proved that + splitting it was really not helping our users. + * Further improve the developer documentation to help newcomers + hacking on SimGrid itself. The user documentation (and in + particular, the beginner documentation) is still in a sorry state. SMPI: * Now works on Windows too! * Much more extensive test suite, from MPICH - -- $date Da SimGrid team + SIMDAG: + * Add a new loader (SD_PTG_dotload) that creates a parallel task graph + (i.e., a DAG whose nodes are parallel tasks) from a dot file. Creates a + dynar of SD_TASK_COMP_PAR_AMDAHL and SD_TASK_COMM_MXN_1D_BLOCK tasks. + * Bug fix: let task be scheduled when the last dependency to be solved is + a control dependency. + * Remove SD_load_environment_script function. + Use the C sg_platf function if you want to declare a platform + programmatically. + + MSG: + * New function: MSG_process_get_number() + * Old function documented: MSG_config() + * Remove MSG_load_platform_script function + Use the C sg_platf function if you want to declare a platform + programmatically. + + SURF: + * Change the default value of the TCP_gamma constant (maximal size of TCP + congestion window) to a more realistic 4MiB value. If you notice changes in + your simulation results, you can fall back to the previous 20k tiny window + by adding --cfg=network/TCP_gamma:20000 on command line. + * (Hopefully) fix a bug wrt periodic availability and state traces + * Bug fix: use default values at start when first event in availability/state + trace is not at time 0. + + PLATFORM: + * remove the "new_" part of function name sg_platf_new_trace_connect + (resulting in sg_platf_trace_connect), since it does not create + anything new + + XBT: + * Kill synchronized dynars, and xbt_dynar_dopar(). We cannot think of a + use case where it's really mandatory, and maintaining it was a pain in + our code base. + * New: xbt_fifo_search(), search an item with a user-provided + comparison function instead of dumb pointer comparison. + + LUA: + * Fix the lua deployment: + Use `simgrid.init_application()` before deployment instead of + `simgrid.msg_register_application()` after. + + TRACING: + * Transfer the tracing files into the corresponding modules. + + -- Tue Feb 5 11:31:43 CET 2013 Da SimGrid team SimGrid (3.8.1) stable; urgency=low + The "we are told that some people want to also *install* the simgrid + framework" release. + * Add missing file "tesh.1" to the archive. -- Sat Oct 27 16:12:11 CEST 2012 Da SimGrid team @@ -48,7 +298,7 @@ SimGrid (3.8) stable; urgency=low * New option "enable_mallocators" to disable mallocators, for debugging purpose ("on" by default). - Simix: + SIMIX: * Bug fixes around the resource failures: don't let the processes survive the host they are running onto. * Add an interface to auto-restart processes when the host in which they are @@ -301,7 +551,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 @@ -2418,7 +2668,7 @@ SimGrid (2.90) unstable; urgency=low [Tests] - use gras_exit in example to track memleaks - get rid of gs_example now that GS is properly integrated into gras - - update run_test to integrate the lastest tests (datadesc) + - update run_test to integrate the latest tests (datadesc) [Logging] - rename WARNINGn macros to WARNn since it prooved error-prone