Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Release 3.3.4
[simgrid.git] / ChangeLog
index 1cf92b9..64183aa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,6 @@
-SimGrid (3.3.4) unstable; urgency=low
+SimGrid (3.3.4) stable; urgency=low
 
- The "Desktop Grid needs love too" release.
+ The "Desktop Grid needs love too" release (also called Xmas release).
 
  Models improvements:
  * Major speedup in the maxmin system solving by using lazy evaluation
@@ -43,23 +43,32 @@ SimGrid (3.3.4) unstable; urgency=low
      This new model is more realistic than the previous one, so you
        should consider redoing your old experiments with this model.
      Sorry for the inconvenience.
+     
+ Build System:
+ * Introduce the supernovae compilation mode
+   When compiled that way, the whole SimGrid (or almost) is put in a
+     single compilation unit and compiled in one shoot. 
+  This is to help gcc which has difficulties to inline stuff from one
+     file into another.
+  The speedup seem to be above 15%, althrough more tests are needed on
+     amd64 to confirm that gain.
 
  MSG:
  * Port of MSG's mailbox on top of SIMIX network
-   The put/get mechanism was greatly simplified thanks to the new SIMIX module.
+   The put/get mechanism was greatly simplified on the way.
 
  SIMIX:
- * New SIMIX network module
-   It provides a rendez-vous point (aka mailbox) based send/recv API to perform
-   synchronous communication. 
+ * New SIMIX network module. Provides:
+   - Mailbox: rendez-vous mecanism to find with who you want to speak
+   - Synchronous send/recv: easier and hopefully faster since the
+     logic is handled in the maestro process directly now
+   - Asynchronous send/recv: you dreamt of it? It's here now
+     Too bad that nobody cared enough to propagate the change to MSG.
+ * Add semaphores as SIMIX synchronization mechanism.
    
  SimDag:
- * new function SD_task_dump() for debuging display
  * new function SD_daxload(char*) to load a DAX file 
    (see http://vtcpc.isi.edu/pegasus/index.php/WorkflowGenerator)
- * SD_task_dependency_exists() can now cope with having one of its
-   arguments NULL. If so, it tests whether the other argument has any 
-   dependency.
  * Introduce typed tasks. Specify its kind and cost at creation. 
    At scheduling, just give where it should be placed, and the cost
    for each involved resource is automatically computed.
@@ -67,19 +76,72 @@ SimGrid (3.3.4) unstable; urgency=low
     - SD_task_create_comm_e2e() for end-to-end communication
     - SD_task_create_comp_seq() for sequential computation
    Use SD_task_schedulev() / SD_task_schedulel() to schedule them.
+ * new function SD_task_dump() for debuging display
+ * new function SD_task_dotty(task,FILE*) writing to file the info
+   about the task in dotty format
+ * SD_task_dependency_exists() can now cope with having one of its
+   arguments NULL. If so, it tests whether the other argument has any 
+   dependency.
+ * Add getters on list of preceding/following tasks:
+    SD_task_get_parents(task) and SD_task_get_children(task)
+ * Add getters on amount of workstations and list:
+    SD_task_get_workstation_count(t) and SD_task_get_workstation_list(t)
+ * Add getter on task kind: SD_task_get_kind(task)
+ * Update the start_time and finish_time of tasks on completion/failure
+ * Bugfix: Remove task from state swags when destroyed
+ GRAS:
+ * New function: void gras_cpu_burn(double flops) -- a simple CPU burner
+
+ XBT:
+ * New function: xbt_dynar_dopar(dynar,fun) to map a function over the
+   dynar with one separate thread per value of the dynar.
+ * Change the prototype of xbt_thread_create(), sorry. 
+   Added a boolean parameter indicating whether we want to join this
+   thread (used in SG only for now)
+ * Implement xbt_thread_join and xbt_thread_yield in SG also.
    
  Bug fixes:
  * GTNetS wrappers should now be usable again (and betterly tested too)
  * Fix a major regression from 3.2 where the timeout provided to
    MSG_task_put_with_timeout() was used as absolute time before which
    the comm should be done.
+ * Start to fix the <cluster> tag. 
+   - Internal links should be good now (beside of the loopback, which
+     use the private link instead)
+   - paths to the external world is still rather broken
+   - the <route:multi> tag is just broken. Actually that's brain-dead.
+     We need sth like <route:multi src="myCluster" dst="$*-${myCluster}">
+     to make it less stupid
+   ** Check your platform with teshsuite/simdag/platforms/flatifier **
  * Fix a source-level compatibility glitch from 3.2: after defining
    MSG_USE_DEPRECATED, you can use the old name
    MSG_task_put_with_time_out() for MSG_task_put_with_timeout()
  * Allow to compile from the SVN with automake 1.11
  * Fix some problems when using the "start_time" tag in deployment XMLs.
+ * Fix #8569: XBT/synchro.h has redundant declarations
+ * Fix #8563: MSG return values and exceptions
+   Introduce a MSG_TIMEOUT_FAILURE return code and use it consistently.
+ * Integrate patch #8636: Obey DESTDIR when installing documentation.
+   Thanks to Robson Peixoto.
+ * Fix a vicious bug in dictionaries inducing that some elements were
+   not freed on xbt_dict_free()
+
+ Portability report of this version:
+  * Main portability targets:
+    - linux (ubuntu (804/810/910) /debian (4/5/testing) /fedora (core11)) 
+      on (amd64/i386/ia64)
+    - mac leopard on i386
+    Known problems: http://cdash.inria.fr/CDash/index.php?project=Simgrid
+     but nothing critical.
+  * Other platforms: windows, AIX and others were not tested for this release
+  
+ Timing report of this version:
+  * Lazy evaluation brings arbitrary speedup (ie, speedup depending on
+    scenario parameters). From 8h to a few seconds in desktop grid settings.
+  * Supernovae brings about 25% speedup on i386.
 
- -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> 
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Thu, 24 Dec 2009 19:07:39 +0100
 
 SimGrid (3.3.3) stable; urgency=low