Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Damn, once again, I forgot do document my changes
[simgrid.git] / ChangeLog
index 086d227..0a9233e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,66 @@
-SimGrid (3.3.5-svn) unstable; urgency=low
+SimGrid (3.5) unstable; urgency=low
+
+ XBT
+ * New data container: setset (set of sets of elements)
+ * New module: mmalloc (mapped malloc)
+ * New function: xbt_dict_cursor_set_data()
+ * New function: xbt_fifo_get_last_item()
+ * Bug fix in xbt_dynar_shrink(): use the right element size
+ * Use library init/fini functions for our initialization.
+   - you can use logs and other feature as soon as you want in your
+     code (even before the xbt_init / MSG_init)
+   - xbt_exit is now a no-op and produce a warning when used.
+
+ Build chain: bug fixes and further polishing
+ * Fix the 'make install' target. 
+   No need to use 'make install-simgrid' anymore
+ * Introduce a 'make dist' target compiling a *source* archive
+   'make package' compiles a binary archive (not well tested)
+ * Compile java files only on need
+
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> 
+
+SimGrid (3.4.1) stable; urgency=low
+
+ The "Polishing easter eggs is probably a good idea" release.
+ This is a bug fixes release only.
+
+ Java Bindings
+ * Fix a bug preventing the tasks from begin garbage collected.
+
+ MSG
+ * Fix a bug occuring when a host involved in a communication fails.
+   This was not detected properly by the other peer involved in the
+   communication. Now, it's reported as a network error.
+
+ SimDag
+ * Warn the user about loop dependencies in data flow of DAX files
+ * Obey the control-flow dependencies of DAX files
+
+ Cmake
+ * Add option "enable_smpi" allowing to not compile SMPI. 
+   Probably useful for the (Mac) users experiencing a build error here
+ * Improve the detection of lua5.1 and ruby1.8
+
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Tus, 04 May 2010 28 16:11:16 +0100
+
+SimGrid (3.4) stable; urgency=low
+
+ The "Easter in Cargese" release. Also known as (major changes):
+  * the "se habla Java, Ruby 話せます, fala-se Lua (and deaf-friendly)"
+    ~> bindings were greatly improved
+    ~> new tracing infrastructure for better visualization introduced
+    
+  * the "Welcome to configury modernity" release.
+    ~> we switched from autotools to cmake, and improved our cdash
 
 
- The "C spoken, se habla Java, Ruby 話せます, fala-se Lua" release.
+
+ A more detailled list of changes follow (full detail in svn log).
 
  Java Bindings: Various Cleanups
 
  Java Bindings: Various Cleanups
+  * (install java-gcj-compat-dev on debian-like to use them)
   * Remove put/get: no need to export deprecated interface in Java
     Use send/receive instead.
   * Cleanup the examples and add a README per directory
   * Remove put/get: no need to export deprecated interface in Java
     Use send/receive instead.
   * Cleanup the examples and add a README per directory
@@ -13,7 +71,10 @@ SimGrid (3.3.5-svn) unstable; urgency=low
     nobody will ever want to survive such error.
   * Create specific errors for each MSG case of failure:
     host failure, transfer failure, timeout, task cancelled
     nobody will ever want to survive such error.
   * Create specific errors for each MSG case of failure:
     host failure, transfer failure, timeout, task cancelled
+  * Cleanup the exceptions that may get thrown by each function
+  * Other internal cleanups in Java bindings. Performance still bad :/
  Ruby and Lua Bindings: create them
  Ruby and Lua Bindings: create them
+  * (install ruby1.8-dev/liblua5.1-0-dev on debian-like to use them)
   * That's new and great, you should try them out. 
     Same functionalities than Java bindings, only even less polished
  SimDag:
   * That's new and great, you should try them out. 
     Same functionalities than Java bindings, only even less polished
  SimDag:
@@ -22,22 +83,72 @@ SimGrid (3.3.5-svn) unstable; urgency=low
     semantic of a possible use wasn't even clear.
   * SD_SCHED_NO_COST: Constant to use as cost in SD_task_schedule()
     either as comm costs or compute costs to mean that there is no
     semantic of a possible use wasn't even clear.
   * SD_SCHED_NO_COST: Constant to use as cost in SD_task_schedule()
     either as comm costs or compute costs to mean that there is no
-    such thing for that specific task. 
+    such thing for that specific task.
+  * Add a SD_task_set_name() function
+  * Fix SD_task_unschedule() on typed tasks
+  * Fix SD_task_get_execution_time() to return seconds, not flop*sec
+  * In DAX loader, accept useless 'level' attributes to <job> since
+    LIGO DAGs have them (seem to be to ease graphical representation).
  MSG: 
  MSG: 
-  * In trace replay, allow to have one trace file per process.
-    Give the specific trace file as argument of each process, 
-      and call MSG_action_trace_run(NULL)
-    You can still have one merged file for each processes.
+  * Add an example masterslave_mailbox.c using send/receive and not
+    the deprecated put/get interface.
   * Kill the MSG_paje_output() function. It's a noop since 2 years.
   * Kill MSG_WARNING and MSG_FATAL return codes: they were not used
     anywere in source.
   * Kill the MSG_paje_output() function. It's a noop since 2 years.
   * Kill MSG_WARNING and MSG_FATAL return codes: they were not used
     anywere in source.
+  * Rename MSG_TIMEOUT_FAILURE into MSG_TIMEOUT for sake of logic
+    (declare MSG_USE_DEPRECATED to still have the old name)
   * Add a MSG_task_set_data() function
   * Add a MSG_task_set_data() function
+  * About trace replay (see examples/msg/actions):
+    - implement barrier
+    - Allow to work with splitted trace files for each process
+      Give the specific trace file as argument of each process, 
+        and call MSG_action_trace_run(NULL)
+      You can still have one merged file for all processes.
+    - Fix implementation of collective operations
+  * Allow task_execute() on 0-sized tasks (closes #10063)
+ SMPI:
+  * This is the first release of SimGrid where SMPI is not considered
+    beta anymore (even if some corners should still be improved)
+  * Port over the new SIMIX_network submodule (internal refactoring)
+  * Basic support to log events as with SMPE (use --cfg=SMPE:1)
+  * Implement more missing elements of the standard:
+    - MPI_COMM_SELF 
+    - MPI_MAXLOC MPI_MINLOC + all associated datatype MPI_DOUBLE_INT,
+      MPI_FLOAT_INT, etc.
+    - MPI_Address() MPI_Get_count() MPI_Type_free() MPI_Type_extent()
+      MPI_Scan() MPI_Get_processor_name()
+    - Added implementation of missing case for Alltoall (warning: it's
+      *not* the bruck variant from OpenMPI; based on Alltoallv instead)
+    - SMPI_MPI_Gather() SMPI_MPI_Gatherv() SMPI_MPI_Scatterv()
+      SMPI_MPI_Reduce_scatter() SMPI_MPI_Allgather()
+      SMPI_MPI_Allgatherv() 
+  * Bug fixes include:
+    - MPI_Waitsome() was broken
+    - Allow relative includes in smpicc
+    - Command line cfg argument 'reference_speed' was ignored...
+    - Some functions did not properly lead to auto-benching of user code
+    - smpicc passes -O2 by default (just like openmpi one)
  SIMIX:
  SIMIX:
-  * add a SIMIX_sem_get_capacity() function
   * add SIMIX_action_suspend() and SIMIX_action_resume() functions
   * add SIMIX_action_suspend() and SIMIX_action_resume() functions
-  * Bugfix: Handle correctly the resume/suspend of processes when they
-      are blocked on semaphores.
+  * Bug fixes about timeouts during communications
+  * add SIMIX_message_sizes_output() as a pimple to write to file the
+    amount of messages per size. Use gnuplot to get histogram. 
+    Pimple because that's the only user-visible function of simix,
+     defined directly in xbt.h (irk, sorry)
+  * About semaphores:
+     - Add a SIMIX_sem_get_capacity() function
+     - Fix interactions with processe resume/suspende
+     - release_forever() was stupidly broken
+     - Fix SIMIX_display_process_status() for processes in a semaphore
+     - Make SIMIX_sem_block_onto() user-visible
+  * Refactoring context stuff:
+    - Use pseudo-OOP for better modularity
+    - reimplement SIMIX_process_kill() without process_schedule() so
+      that the latter can take as invariant that it is called from
+      maestro.
+    - Merge context_start into context_new for sake of simplicity
  SURF:
  SURF:
+  * Add a Vivaldi network model, coded live during SUD'10 ;)
   * Rename configuration variables to start a hierarchy:
     o cpu_model -> cpu/model
     o network_model -> network/model
   * Rename configuration variables to start a hierarchy:
     o cpu_model -> cpu/model
     o network_model -> network/model
@@ -49,8 +160,6 @@ SimGrid (3.3.5-svn) unstable; urgency=low
   * Add a long description to the models, that users can see with such
     argument on the command line: --cfg=cpu/model:help
   * --help-models display the long description of all known models
   * Add a long description to the models, that users can see with such
     argument on the command line: --cfg=cpu/model:help
   * --help-models display the long description of all known models
- SMPI:
-  * Implement MPI_Get_count, MPI_MAXLOC, MPI_MINLOC
  XBT:
   * config: add the ability to set a default value after registration
     Does not override any previously set value (e.g. from cmd line)
  XBT:
   * config: add the ability to set a default value after registration
     Does not override any previously set value (e.g. from cmd line)
@@ -62,6 +171,7 @@ SimGrid (3.3.5-svn) unstable; urgency=low
     In contrary to regular dicts, the key is not malloced before copy.
     Mixing scalar and regular elements in the same dict is not tested 
       (but may work).
     In contrary to regular dicts, the key is not malloced before copy.
     Mixing scalar and regular elements in the same dict is not tested 
       (but may work).
+  * Allow to use xbt_dynar_shrink() to expend the dynar instead
  Tracing for Visualization:
   * SimGrid is now instrumented in order to generate a trace file for
     visualization analysis: to use it, need to compile SimGrid with the
  Tracing for Visualization:
   * SimGrid is now instrumented in order to generate a trace file for
     visualization analysis: to use it, need to compile SimGrid with the
@@ -73,9 +183,17 @@ SimGrid (3.3.5-svn) unstable; urgency=low
     traces with the Triva tool is written.
   * More information about: SimGrid FAQ (in the section Tracing Simulations
     for Visualization)
     traces with the Triva tool is written.
   * More information about: SimGrid FAQ (in the section Tracing Simulations
     for Visualization)
-    
- -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
-
+ Build system:
+  * We moved to cmake as default build system. Autotools support will
+    be dropped soon. Check the FAQ for more info about how to use it.
+  * Greatly improved our cdash/ctest interactions
+    Check http://cdash.inria.fr/CDash/index.php?project=Simgrid
+  * Added memory checking tests with valgrind; lot of memleak fixing.
+    This may be the first release of simgrid with so few memory issues
+  * Added code coverage tests. 
+    Our coverage is still improvable, but at least we see it on cdash.
+   
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Wed, 28 Apr 2010 28 17:11:16 +0100
 
 SimGrid (3.3.4) stable; urgency=low
 
 
 SimGrid (3.3.4) stable; urgency=low