Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Document Stephane's last change (implement MPI_Wtime())
[simgrid.git] / ChangeLog
index 7e8cb6c..dc7ecaf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,81 @@
-SimGrid (3.3-cvs) unstable; urgency=low
+SimGrid (3.4-svn) unstable; urgency=high
+
+ OVERALL CHANGES:
+  * Tested successfully on AIX
+
+ GRAS:
+  * fix a bug on struct sizeof computation, which prevented the
+    exchange of arrays of structs in some conditions
+    - added a regression test about this in datadesc_usage
+  * Allow the exchange of 0-long dynamic vectors.
+    - for that, use -1 as indicator of dynamic size instead of 0
+    - This implied to change any size from unsigned long to long,
+      reducing a bit communication abilities, but I guess that with
+      64bits being quite common, this is more than enough.
+    - This also induce a protocol change, thus bumping network protocol
+      version from 0 to 1 (if we have external users, we have to get
+      clean on that point too ;)
+    - added two regression tests about this in datadesc_usage
+  * Be more verbose when propagating local exceptions
+    This helps debugging.
+  * Display the status of simulated processes when receiving SIGINT in
+    simulation mode
+
+ MSG:
+  * Allow to control the simulation from a trace file.
+    New functions MSG_action_register() and MSG_action_trace_run()
+    The first one allows to associate a function execution to each
+     kind of action while the second one parses a trace file and
+     triggers the corresponding actions within the system.
+    For now, only a toy example is provided in examples/msg/actions
+  * Add an exemple of process migration in examples/msg/migration
+  * Fix a bug in task exchange which broke MSG_task_get_sender()
+    Add a teshsuite regression test for that.
+    [Bug: if MSG_task_get_sender() is called after sender exit,
+     bad things happen]
+  * Fix a bug which prevented suspend/resume to work properly
+  * Display the status of simulated processes when receiving SIGINT
+    This fixes a regression of v3.3. due to the introduction of SIMIX
+  * Bug fixing in failure management:
+    - trace could not start by a failure at time 0
+    - failure during communications were not working
+       
+ SIMIX:
+  * Add SIMIX_process_set_name() to change the name of the current
+    process in the log messages.
+  * Store smx_hosts in a dict since we only retrieve them by name
+  * Move the configuration infrastructure to surf
+
+ SIMDAG:
+  * Move the configuration infrastructure to surf
+
+ XBT:
+  * Also include strbuff from xbt.h public header
+  * xbt_ex_display(): do not free the exception after displaying 
+    This allows to do more with the given exception afterward.
+    Users should call xbt_ex_free() themselves.
+    
+ SMPI: 
+  * Massive internal cleanups:
+    - Store internal structures on processes instead of hosts (allows
+      to have more than one process per host, in addition of being more 
+      logical)
+    - Cleanup the initialization/finalization process
+    - Kill a whole bunch of unneeded synchronization: 
+      processes run in exclusive manner within the simulator
+    - Move queues from global tables to process data fields
+  * Improve smpirun:
+    - now accept -platform and -hostfile arguments
+    - Pass the right rank value to processes according to the hostfile
+  * Compile the examples by default, and use them as regression tests
+  * Implement MPI_Wtime()
+  
+ Build Chain:
+  * Do not require doxygen in maintainer mode
+
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> 
+
+SimGrid (3.3) stable; urgency=high
 
  OVERALL CHANGES:
 
@@ -22,7 +99,10 @@ SimGrid (3.3-cvs) unstable; urgency=low
     not scheduled in the same order with the old and new version. This
     may be enough to completely change the execution of simulations in
     some cases. Sorry for the inconvenience.
-  
+
+  * Cleanup and upgrade the XML format to push further scalability
+    issues (check http://hal.inria.fr/inria-00256883/ for more info)
+
   * Improve the testing infrastructure with tesh. Now a very large part of
     the code is tested not only by being run but also by checking that the
     output match an expected output [Mt].
@@ -30,8 +110,18 @@ SimGrid (3.3-cvs) unstable; urgency=low
   * Move on to FleXML v1.7 for the embeeded XML parsers. This version
     is really less memory-demanding, which should allow you to use
     larger files in SimGrid [AL].
+    
+  * Inform valgrind about our contextes, so that it becomes usable
+    with the default (and more effecient) version of SimGrid
+    [contributed by Sékou Diakite, many thanks]
 
  GRAS:
+  * Introduce a listener thread in charge of receiving incomming
+    messages from the network. It allows to overlap communication and
+    computation but most notably, it removes some stupid deadlocks due
+    to the fact that so far, a process could not send and receive at
+    the same time. This made most non trivial communication schema
+    impossible.
   * Convert the PIDs from long int to int to match the MSG ones (and
     linux ones too) [Mt]
   * New function: gras_agent_spawn() to launch a new process on
@@ -44,6 +134,8 @@ SimGrid (3.3-cvs) unstable; urgency=low
   * New module: xbt/str [Mt]
     a ton of string utility functions (split, join, printf to a newly
     allocated buffer, trim, etc)
+  * New module: xbt/hash [Mt]
+    SHA1 hashing algorithm (more to come if needed)
   * New module: xbt/synchro [Mt]
     synchronization tools (mutex and conditions) working the same way
     in simulation and in real life (mainly useful for GRAS, but not
@@ -52,6 +144,12 @@ SimGrid (3.3-cvs) unstable; urgency=low
     classical producer/consumer synchronization scheme
   * xbt_dynar_new_sync() creates a synchronized dynar. All access
     (using the classical functions will get serialized) [Mt]
+  * Make dictionary internal table dynamic. No need to specify its size
+    anymore; functions xbt_dict_new_ext() and xbt_dict_hashsize_set()
+    thus dropped. [Mt].
+  * Make sure the log channels are organized as a tree under windows
+    (because of ANSI C compatibility issue, any channel were child of
+     root directly) [Mt].
 
  SURF:
   * Cleaned many thing in surf and fixed a few bugs [AL].
@@ -76,9 +174,9 @@ SimGrid (3.3-cvs) unstable; urgency=low
   * Use the SURF command line configuration mechanism.
   * 0-size tasks (for synchronization) should now work.
 
- -- 
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Sun Apr 12 05:20:36 CEST 2009
 
-SimGrid (3.2) unstable; urgency=low
+SimGrid (3.2) stable; urgency=high
 
   OVERALL CHANGES:
    * Port to windows.
@@ -183,7 +281,7 @@ SimGrid (3.2) unstable; urgency=low
 
  -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Fri Mar 16 21:11:46 CET 2007
 
-SimGrid (3.1) unstable; urgency=low
+SimGrid (3.1) stable; urgency=high
 
   General:
   * Port to gcc 4.x   
@@ -279,7 +377,7 @@ SimGrid (3.1) unstable; urgency=low
 
  -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Fri, 14 Jul 2006 01:32:27 +0200
 
-SimGrid (3.0.1) unstable; urgency=low
+SimGrid (3.0.1) stable; urgency=low
 
   XBT:
   * Unfortunately, I had missed 5 misnamed functions:
@@ -376,7 +474,7 @@ SimGrid (3.0.1) unstable; urgency=low
 
  -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>  Fri, 21 Oct 2005 14:42:20 +0200
 
-SimGrid (3.00) stable; urgency=low
+SimGrid (3.00) stable; urgency=high
   
  SURF:
   * New! Give the possibility to hijack the surf parser and thus bypass 
@@ -1149,3 +1247,7 @@ SimGrid (2.90) unstable; urgency=low
   - Get rid of libgrasutils.a since it makes more trouble than it solves.
     Build examples against the RL library, since there is no way to disable
     its creation for now.
+
+For information, the beginning of coding on GRAS was back in june
+2003. I guess that every line has been rewritten at least twice since
+then.