Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Define THROWF and RETHROWF as variadic macros.
[simgrid.git] / ChangeLog
index adec161..6f98f69 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,18 @@ SimGrid (3.6) unstable; urgency=low
    you just have to fix the initialization, that shouldn't be too long)
  * Kill the braindead MSG_task_refcount_dec() function. I guess nobody
    ever managed to do anything useful with it.
+ * New function MSG_comm_testany(). Similarly to MSG_comm_waitany(), it
+   takes a dynar of communications. It returns immediately and gives the
+   index of a finished communication (if any).
+ * New function MSG_comm_get_status(). MSG_comm_test() and MSG_comm_testany()
+   only say if a communication is finished, no matter whether it succeeded or
+   failed. You can call MSG_comm_get_status() to know the status of a finished
+   communication.
+ * New function MSG_task_dsend() to send a task and detach it. When a
+   communication is detached, you are never notified of its success or failure
+   and the memory is released automatically once it is finished. This function
+   is useful when you don't care about the end nor the success of a
+   communication you send.
 
  SURF
  * New model for multi-core CPUs. You can now use the core attribute to
@@ -23,20 +35,32 @@ SimGrid (3.6) unstable; urgency=low
    combine Vivaldi based latencies with last-mile platforms.
 
  Simix
- * Completely rewrote this module to allow parallel execution.
  * Introduce a new context factory "raw", highly inspirated from the
-   context factory, but using manually crafted functions in assembly to
+   ucontext factory, but using manually crafted functions in assembly to
    do the work in an efficient manner.
  * Allow to change the used context factory at run time, not only at
-   compilation time. Use --cfg=simix/context:raw for maximal speed.
+   compilation time. Use --cfg=contexts/factory:raw for maximal speed.
+ * Add an option --cfg=contexts/stacksize:N to set the stack size of the user
+   contextes at runtime (only with raw contexts or ucontexts).
+ * Completely rewrote this module to allow parallel execution of user
+   processes. Use --cfg=contexts/nthreads:N to execute user processes
+   with N parallel threads (the default is 1, meaning no parallelism).
+ * Allow to decide dynamically between sequential and parallel modes.
+   When nthreads > 1, you can use --cfg=contexts/threshold:P to run the user
+   processes in parallel only when their number is greater than or equal to P.
 
  XBT
  * Add a new function xbt_dynar_to_array that transforms a dynar into a
    NULL-terminated array. This may solve backward compatibility issues
    due to the change to return type of SD_Simulate. See also:
    http://lists.gforge.inria.fr/pipermail/simgrid-user/2010-December/002206.html
- * Add new logging macros, with variable number of arguments. Define
-   XBT_USE_DEPRECATED if you want to use the old macros INFO1, INFO2, etc.
+ * Add new macros with variable number of arguments.
+   - in xbt/log.h: XBT_DEBUG, XBT_VERB, XBT_INFO, etc.
+   - in xbt/cunit.h: xbt_test_{add,fail,assert,log}
+   - in xbt/ex.h: THROWF and RETHROWF.
+   Define XBT_USE_DEPRECATED if you want to use the old numbered macros like
+   INFO1, INFO2, etc.
+ * Change xbt_die() to accept a format string with arguments, just like printf.
 
  INSTR
  * New configuration options
@@ -64,6 +88,8 @@ SimGrid (3.6) unstable; urgency=low
      nuclear plant operating system). If such things should happen, you
      could rely on that macro to adapt.
    - current value: 30600 for 3.06.00, aka 3.6
+ * Define macro MAKE_SIMGRID_VERSION(major, minor, patch) to help building
+   a number that can be compared with SIMGRID_VERSION.
 
  -- Da SimGrid team <simgrid-devel@lists.gforge.inria.fr>