Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
get ready for the release
[simgrid.git] / ChangeLog
index 0e77800..181c147 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
-SimGrid (3.8) NOT RELEASED; urgency=low
+SimGrid (3.9) stable; urgency=low
 
 
- The "SimGrid makes psssshiiiit and jumps into the cloud" release.
+ The Grasgory release: GRAS is really dead now.
 
 
- Cmake:
- * Remove option custom_flags. Now use environment variables CFLAGS
-   and LDFLAGS.
- * Enable tracing by default. This modules rocks you should use it.
- * Use default cmake things to detect lua instead of home grown ones.
+ * 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:
 
  Documentation:
- * Split the doc into a user guide and a reference guide.
+ * 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
+
+ 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 Jan 29 19:38:56 CET 2013 Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
+
+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 <simgrid-devel@lists.gforge.inria.fr>
+
+SimGrid (3.8) stable; urgency=low
+
+ The Psssshiiiit release: SimGrid jumps into the Cloud.
 
  MSG:
  * Add an experimental interface to manipulate VMs. They are mainly
    process groups with very few intrinsic semantic, but they should
    allow you to build the semantic you want easily.
  * New function: MSG_host_set_property_value()
 
  MSG:
  * Add an experimental interface to manipulate VMs. They are mainly
    process groups with very few intrinsic semantic, but they should
    allow you to build the semantic you want easily.
  * New function: MSG_host_set_property_value()
- * Deprecate functions MSG_global_init() / MSG_global_init_args()
-   Please use MSG_init() instead. (reducing the amount of entry
-   points in the library helps us).
- * Make it impossible to link against the wrong version of the lib
+ * New function: MSG_process_on_exit(). To clean memory in all cases.
  * Bug fixes that made the host (and link) failures unusable.
  * Add a way to auto-restart process when the host in which they are
  * Bug fixes that made the host (and link) failures unusable.
  * Add a way to auto-restart process when the host in which they are
-   executing comes back (ON_FAILURE="RESTART" on deployment file, 
+   executing comes back (ON_FAILURE="RESTART" on deployment file,
    MSG_process_auto_restart_set).
  * Use the "msg_" prefix for all datatypes (instead of m_, msg_ and MSG_),
    MSG_process_auto_restart_set).
  * Use the "msg_" prefix for all datatypes (instead of m_, msg_ and MSG_),
-  please stop using the old ones.
+   please stop using the old ones, they are DEPRECATED.
+
+ * Deprecate functions MSG_global_init() / MSG_global_init_args()
+   Please use MSG_init() instead. (reducing the amount of entry
+   points in the library helps us).
+ * Make it impossible to link against the wrong version of the lib
+ * Deprecate MSG_clean(). No need to call it anymore.
+ * Function MSG_get_host_number() is not deprecated anymore.
+
+ Documentation:
+ * Split the doc into a user guide and a reference guide.
+ * Start a developper guide to help people hacking on SimGrid.
+
+ Cmake:
+ * Enable tracing by default. This modules rocks you should use it.
+ * Remove option custom_flags. Now use environment variables CFLAGS
+   and LDFLAGS.
+ * Use default cmake things to detect lua instead of home grown ones.
+ * New option "enable_mallocators" to disable mallocators, for debugging
+   purpose ("on" by default).
 
  Simix:
  * Bug fixes around the resource failures: don't let the processes
    survive the host they are running onto.
 
  Simix:
  * Bug fixes around the resource failures: don't let the processes
    survive the host they are running onto.
- * Add an interface to execute cleanup functions when a process is killed,
-   to avoid memory leaks.
  * Add an interface to auto-restart processes when the host in which they are
    executing comes back.
  * Ensures that SIMIX_clean is called automatically. It's not part of
    the public interface anymore (bindings should be updated).
 
  SimDag:
  * Add an interface to auto-restart processes when the host in which they are
    executing comes back.
  * Ensures that SIMIX_clean is called automatically. It's not part of
    the public interface anymore (bindings should be updated).
 
  SimDag:
+ * Bug fix for when SD_Simulate is called with a positive value: be careful
+   when comparing doubles. Sometimes they are different for non significant
+   digits only.
  * New types of typed tasks. SD_TASK_COMP_PAR_AMDAHL represents a
    parallel task whose initial work is distributed among host according
    to the Amdahl's law. Such tasks are created with a parameter alpha
  * New types of typed tasks. SD_TASK_COMP_PAR_AMDAHL represents a
    parallel task whose initial work is distributed among host according
    to the Amdahl's law. Such tasks are created with a parameter alpha
@@ -52,28 +145,58 @@ SimGrid (3.8) NOT RELEASED; urgency=low
    communication_amount structures is now done seamlessly thanks to the chosen
    assumptions.
  * New function SD_workstation_dump to display various information
    communication_amount structures is now done seamlessly thanks to the chosen
    assumptions.
  * New function SD_workstation_dump to display various information
- * New function SD_task_set_rate to throttle the bandwidth allowed to be used 
-   by a SD_TASK_COMM_E2E typed task. This rate depends on both the nominal 
-   bandwidth on the route onto which the task is  scheduled and the amount of 
+ * New function SD_task_set_rate to throttle the bandwidth allowed to be used
+   by a SD_TASK_COMM_E2E typed task. This rate depends on both the nominal
+   bandwidth on the route onto which the task is  scheduled and the amount of
    data to transfer.
    To divide the nominal bandwidth by 2, the rate then has to be :
                      rate = bandwidth/(2*amount)
  * Compute tasks that have failed can now be rescheduled and executed again
    (from their beginning)
    data to transfer.
    To divide the nominal bandwidth by 2, the rate then has to be :
                      rate = bandwidth/(2*amount)
  * Compute tasks that have failed can now be rescheduled and executed again
    (from their beginning)
- * Increasing source code coverage (src/simdag is now covered at 91.5%
+ * Increasing source code coverage (src/simdag is now covered at 95.8%
    on average)
    on average)
-   
+
  SMPI:
  * Re-implement time-independent trace replay using SMPI (at the
    smpi_smp_* level) instead of MSG. This should replace
    examples/msg/actions/actions.c
  SMPI:
  * Re-implement time-independent trace replay using SMPI (at the
    smpi_smp_* level) instead of MSG. This should replace
    examples/msg/actions/actions.c
-   
+ * Implement support of MPI Datatypes (vectors, hvectors, indexed,
+   hindexed and structs)
+ * Implement the exchange of non-contiguous data.
+   [Khalid Hasanov & Jean-Noel Quintin] Thanks for the patch, guys.
+ * Correct behavior of smpi/sender_gap and set its default value to 0
+ * Add option to asynchronously send small messages to allow better
+   simulation of pt2pt communications. --cfg=smpi/async_small_threshold:value
+   specifies the size in bytes under which messages will be asynchronously sent.
+ * Add support of MPI_Iprobe, MPI_Probe, MPI_Testall, MPI_Wtick functions
+ * SMPI now handles more MPI specific values in input. Closes [#14389] and [#14388]
+
+ SimGrid:
+ * New C interface to define a platform: XML is now optional.
+   For more info, please check include/simgrid/platf.h.
+ * New interface to define random platforms from the C:
+   For more info, please check include/simgrid/platf_generator.h and
+   examples/msg/masterslave/masterslave_platfgen.c
+ * Export a sg_cmdline dynar containing all the arguments we got from
+   the command line.
+
+ TRACE:
+ * Two new tracing options for adding comments to trace file so you
+   can track your experiments (see --help-tracing for details).
+ * New option to generate a impoverished trace file (--cfg=tracing/basic:1)
+ * Adding the SimGrid version that generated the trace file as a comment.
+ * Instrumenting other MSG functions (MSG_task_isend_with_matching and MSG_task_dsend)
+ * Fix to avoid key clashes on Paje links
+ * Other minor fixes related to the Paje specification
+
  XBT:
  * Functions xbt_dict_hash() and xbt_dict_hash_ext() are made public,
    and renamed to xbt_str_hash() and xbt_str_hash_ext().
  * New function: xbt_os_timer_resume() to restart a timer w/o resetting it.
  XBT:
  * Functions xbt_dict_hash() and xbt_dict_hash_ext() are made public,
    and renamed to xbt_str_hash() and xbt_str_hash_ext().
  * New function: xbt_os_timer_resume() to restart a timer w/o resetting it.
+ * Greatly improve the robustness of mmalloc to user errors (such as
+   using an area after freeing it, or freeing it twice)
 
 
- -- $date Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
+ -- Thu Oct 25 17:30:06 CEST 2012 Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
 
 SimGrid (3.7.1) stable; urgency=low
 
 
 SimGrid (3.7.1) stable; urgency=low
 
@@ -2366,7 +2489,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
  [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
 
  [Logging]
    - rename WARNINGn macros to WARNn since it prooved error-prone