-SimGrid (3.3.3-svn) unstable; urgency=low
-
- The "Desktop grid also matter" release.
+SimGrid (3.3.4) unstable; urgency=low
+
+ The "Desktop Grid needs love too" release.
+
+ * Allow major speedup in the maxmin system solving by using lazy evaluation
+ This feature allows to not solve the maxmin system completely at each iteration, but only invalidate (and recompute) the modified parts.
+ This new feature is enabled by default since we changed the default CPU model.
+ Use "--cfg:maxmin-selective-update=1" to enable it.
+ * Cas01 IMproved as default CPU model
+ This CPU model is the same Cas01 model, but it uses the maxmin-selective-update flag
+ and a heap structure to manage actions on SURF kernel. It reduces the complexity to
+ find the next action to finish and, consequently, it's faster than the old Cas01.
+ This is the new default CPU model (Cas01).
+ **************************************
+ *DO NOT MIX 3.3.3 RESULTS WITH 3.3.4 ONES* The new CPU model may changes simulations!
+ **************************************
+ The point is that events occurring at the exact same timestamp are
+ 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.
+ * Rename the old Cas01 model to Cas01_fullupdate
+ Keep the old cpu model Cas01 with the new name of Cas01_fullupdate.
+ Use "--cfg=cpu_model:Cas01_fullupdate" to use the old default CPU model.
+ * CpuTI (CPU Trace Integration)
+ A new CPU model whose objective is simulate faster when using availability trace files.
+ Instead of using a full featured, over engineered maxmin system for CPU modeling, this model does the pre-integration of traces files to calculate the amount of CPU power available, and so, executes faster than the old CPU models.
+ Use "--cfg=cpu_model:CpuTI" to change to this CPU model.
+ * Use LV08 as default network model since it gives better accuracy
+ for small messages and shouldn't change things for big ones.
+ Use --cfg=network_model:CM02 to get the previous behavior.
+ * 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.
+ * 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.
-- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>
+
+SimGrid (3.3.3) stable; urgency=low
+
+ The "Need for Speed" release.
+
+ The timings done to validate the 3.3.2 were faulty.
+ Instead of being 5% faster, it was 15% slower (compared to 3.3.1).
+
+ The problem was a conversion from a manually handled vector to
+ xbt_dynar_t on the critical path.
+ xbt_dynar_foreach calls functions, inducing stack management crap.
+
+ We inlined these functions and xbt_dynar_foreach is now breath taking.
+ We also inlined xbt_swag_belong on the way.
+
+ Here are some approximate speedup measurements (on master/slaves
+ simulations lasting between 10s and 20s each):
+ 3.3.1 -> 3.3.2: about same performance
+ 3.3.2 -> 3.3.3: 40% speedup
+ 3.3.1 -> 3.3.3: 40% speedup
+ 3.3.1 with inline patch -> 3.3.3: 30% speedup
+
+ Our reading is that the refactoring which occurred in 3.3.2 made us
+ suffer much more from the xbt_dynar_foreach low performance, but
+ once we solved this, this refactoring proved to be very performance
+ effective. From the 40% speedup, somehow, 10% are due to the
+ inlining and 30% to the refactoring.
+
+ That's a pitty that gcc cannot inline functions placed in other files
+ alone. We have to choose between:
+ - break the encapsulation (by putting private data structures and
+ accessors in headers files to help gcc)
+ - live with low performance
+ - switch to a decent compiler such as icc (not quite possible).
+
+ -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr> Thu, 20 Aug 2009 21:21:33 +0200
+
SimGrid (3.3.2) stable; urgency=low
The "Simplicity does not preceed complexity, but follows it" release.