Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
get the ChangeLog and NEWS ready for a release
authorMartin Quinson <martin.quinson@loria.fr>
Sat, 25 Jul 2015 18:12:46 +0000 (20:12 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Sat, 25 Jul 2015 18:12:49 +0000 (20:12 +0200)
We still need to fix the broken tests before the release.

ChangeLog
NEWS

index 735fb4d..c33ae23 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,17 @@
-New function: simcall_process_get_kill_time()
-
- surf.java:
- * class NetworkLink renamed to Link
-
 SimGrid (3.12) NOT RELEASED; urgency=low
 
 SimGrid (3.12) NOT RELEASED; urgency=low
 
+ Build System
+  * Require g++ v4.7 at least to not speak prehistorical C++.
+  * Require Boost 1.48 (for signal2 component).
+  * Tracing is now always enabled (no way to turn it out)
+  * Move headers around to sort them out on installed systems:
+    - instr/instr.h  -> simgrid/instr.h
+    - instr/jedule/* -> simgrid/jedule
+    - simdag/datatypes.h was removed
+    - simdag/simdag.h -> simgrid/simdag.h
+    - msg/datatypes.h was removed
+    - msg/msg.h -> simgrid/msg.h
+
  cMSG:
  * Interface improvement:
    - Rename MSG_host_is_avail(h) to MSG_host_is_on(h)
  cMSG:
  * Interface improvement:
    - Rename MSG_host_is_avail(h) to MSG_host_is_on(h)
@@ -27,49 +34,50 @@ SimGrid (3.12) NOT RELEASED; urgency=low
    - Merge Task.getRemainingDuration() and Task.getComputeDuration() into Task.getFlopsAmount()
  * Bug fixes:
    - #18874: Actually allows the GC to reclaim tasks
    - Merge Task.getRemainingDuration() and Task.getComputeDuration() into Task.getFlopsAmount()
  * Bug fixes:
    - #18874: Actually allows the GC to reclaim tasks
-   
+
  SIMIX:
  * New functions
    - SIMIX_process_throw: raises an exception in a remote process
  SIMIX:
  * New functions
    - SIMIX_process_throw: raises an exception in a remote process
- * Refactoring: Separate submodules
+ * Refactoring: Separate sub-modules
    - libsmx: the public interface, as libc in a real system
    - popping: the strange dance that converts a user request into a kernel handling
    - libsmx: the public interface, as libc in a real system
    - popping: the strange dance that converts a user request into a kernel handling
-   - smx_context_*: the virtualization mechanisms that embeed the user code
+   - smx_context_*: the virtualization mechanisms that embed the user code
    - smx_*: the handling of each simcalls
  * Interface cleanup:
    - simcall_host_set_power_peak_at -> simcall_host_set_pstate
  * Rename smx_action_t into smx_synchro_t, making explicit that these
    - smx_*: the handling of each simcalls
  * Interface cleanup:
    - simcall_host_set_power_peak_at -> simcall_host_set_pstate
  * Rename smx_action_t into smx_synchro_t, making explicit that these
-   things are used to synchronize processes with their environment.    
+   things are used to synchronize processes with their environment.
    For example, a communication is a sort of synchronization involving
    the communicating processes (that may block until the exchange) and
    the platform. The same can be said from computations, etc.
  * Bug fixes:
    - #18888: segfault when a process ends before its kill_time
    For example, a communication is a sort of synchronization involving
    the communicating processes (that may block until the exchange) and
    the platform. The same can be said from computations, etc.
  * Bug fixes:
    - #18888: segfault when a process ends before its kill_time
-   
- SMPI: 
+
+ SMPI:
  * New functions
  * New functions
-   - Onesided early support for : MPI_Win_(create, free, fence, get_name, set_name, get_group), MPI_Get, MPI_Put, MPI_Accumulate, MPI_Alloc_mem, MPI_Free_mem. 
+   - Onesided early support for : MPI_Win_(create, free, fence, get_name, set_name, get_group), MPI_Get, MPI_Put, MPI_Accumulate, MPI_Alloc_mem, MPI_Free_mem.
    - MPI_Keyval*, MPI_Attr* functions, as well as MPI_Comm_attr*, MPI_Type_attr* variants (C only, no Fortran support yet)
    - MPI_Type_set_name, MPI_Type_get_name
    - MPI_*_c2f and MPI_*_f2c functions
    - MPI_Info_* functions (beware, get_nthkey may not follow the insertion order)
    - MPI_Pack, MPI_Unpack and MPI_Pack_size functions
    - Activate a lot of new tests from the mpich 3 testsuite
    - MPI_Keyval*, MPI_Attr* functions, as well as MPI_Comm_attr*, MPI_Type_attr* variants (C only, no Fortran support yet)
    - MPI_Type_set_name, MPI_Type_get_name
    - MPI_*_c2f and MPI_*_f2c functions
    - MPI_Info_* functions (beware, get_nthkey may not follow the insertion order)
    - MPI_Pack, MPI_Unpack and MPI_Pack_size functions
    - Activate a lot of new tests from the mpich 3 testsuite
- * Features 
+ * Features
    - Constant times can be injected inside MPI_Wtime and MPI_Test through options smpi/wtime and smpi/test
    - Constant times can be injected inside MPI_Wtime and MPI_Test through options smpi/wtime and smpi/test
-   - InfiniBand network model added : Based on the works of Jerome Vienne (http://mescal.imag.fr/membres/jean-marc.vincent/index.html/PhD/Vienne.pdf )
+   - InfiniBand network model added : Based on the works of Jerome Vienne
+     http://mescal.imag.fr/membres/jean-marc.vincent/index.html/PhD/Vienne.pdf
    - When smpi/display_timing is set, also display global simulation time and application times
    - Have smpirun, smpicc and friends display the simgrid git hash version on --git-version
  * Collective communications
    - SMP-aware algorithms are now dynamically handled. An internal communicator is created for each node, and an external one to handle communications between "leaders" of each node
    - MVAPICH2 (1.9) collective algorithms selector : normal and SMP algorithms are handled, and selection logic is based on the one used on TACC's Stampede cluster (https://www.tacc.utexas.edu/stampede/).
    - Support for Rabenseifner Reduce/Allreduce algorithms (https://fs.hlrs.de/projects/par/mpi//myreduce.html)
    - When smpi/display_timing is set, also display global simulation time and application times
    - Have smpirun, smpicc and friends display the simgrid git hash version on --git-version
  * Collective communications
    - SMP-aware algorithms are now dynamically handled. An internal communicator is created for each node, and an external one to handle communications between "leaders" of each node
    - MVAPICH2 (1.9) collective algorithms selector : normal and SMP algorithms are handled, and selection logic is based on the one used on TACC's Stampede cluster (https://www.tacc.utexas.edu/stampede/).
    - Support for Rabenseifner Reduce/Allreduce algorithms (https://fs.hlrs.de/projects/par/mpi//myreduce.html)
- * Replay 
+ * Replay
    - Replay now uses algorithms from wanted collective selector
    - Replay can be used with SMP-aware algorithms
    - Memory occupation of replay should now be contained (temporary buffers allocated in collective algorithms should be shared between processes)
    - Replay can now replay several traces at the same time (check examples/smpi/replay_multiple example), to simulate interactions between several applications on a given platform. User can specify the start time of each instance. This should also allow replay + actual applications to run.
    - Replay now uses algorithms from wanted collective selector
    - Replay can be used with SMP-aware algorithms
    - Memory occupation of replay should now be contained (temporary buffers allocated in collective algorithms should be shared between processes)
    - Replay can now replay several traces at the same time (check examples/smpi/replay_multiple example), to simulate interactions between several applications on a given platform. User can specify the start time of each instance. This should also allow replay + actual applications to run.
- * Bug fixes 
+ * Bug fixes
    - [#17799] : have mpi_group_range_incl and mpi_group_range_excl better test some corner cases
    - Correctly use loopback on fat-tree clusters
    - Asynchronous small messages shouldn't trigger deadlocks anymore
    - [#17799] : have mpi_group_range_incl and mpi_group_range_excl better test some corner cases
    - Correctly use loopback on fat-tree clusters
    - Asynchronous small messages shouldn't trigger deadlocks anymore
@@ -77,36 +85,26 @@ SimGrid (3.12) NOT RELEASED; urgency=low
    - smpi_set_host_power_peak_at() -> smpi_set_host_pstate()
    - new: smpi_get_host_pstate()
  SURF
    - smpi_set_host_power_peak_at() -> smpi_set_host_pstate()
    - new: smpi_get_host_pstate()
  SURF
-  * Bug fixes 
+  * Bug fixes
    - "Full" network optimization flag was broken since Surf++
    - Better handling of precision flags in maxmin
    - Fix bug causing sometimes "Impossible" errors
    - Properly pass cluster properties to included hosts
   * Improvement of the Energy plugin.
     - Always update the consumption before returning that value
    - "Full" network optimization flag was broken since Surf++
    - Better handling of precision flags in maxmin
    - Fix bug causing sometimes "Impossible" errors
    - Properly pass cluster properties to included hosts
   * Improvement of the Energy plugin.
     - Always update the consumption before returning that value
-    - New property: watt_off to denote the disipation when the host is off
+    - New property: watt_off to denote the dissipation when the host is off
     - New functions getWattMinAt and getWattMaxAt to retrieve the
       dissipation of pstates that we are not currently at.
     - New functions getWattMinAt and getWattMaxAt to retrieve the
       dissipation of pstates that we are not currently at.
+  * Java: class NetworkLink renamed to Link
+  * New function: simcall_process_get_kill_time()
   * Massive rename s/workstation/host/
   * Massive rename s/workstation/host/
-    - That's intrusive, but that's good for the project consistency. Sorry. 
+    - That's intrusive, but that's good for the project consistency. Sorry.
     - Change config option "workstation/model" into "host/model"
  XBT
   * New functions
     - Change config option "workstation/model" into "host/model"
  XBT
   * New functions
-   - Add a xbt_heap_update function, to avoid costly xbt_heap_remove+xbt_heap_insert use 
+   - Add a xbt_heap_update function, to avoid costly xbt_heap_remove+xbt_heap_insert use
    - Add a xbt wrapper for simcall_mutex_trylock (asked in [#17878])
    - Add two new log appenders : rollfile and splitfile. Patch by Fabien Chaix.
    - Add a xbt wrapper for simcall_mutex_trylock (asked in [#17878])
    - Add two new log appenders : rollfile and splitfile. Patch by Fabien Chaix.
- Build System
-  * Require g++ v4.7 at least to not speak prehistorical C++.
-  * Require Boost 1.48 (for signal2 component).
-  * Tracing is now always enabled (no way to turn it out)
-  * Move headers around to sort them out on installed systems:
-    - instr/instr.h  -> simgrid/instr.h
-    - instr/jedule/* -> simgrid/jedule
-    - simdag/datatypes.h was removed
-    - simdag/simdag.h -> simgrid/simdag.h
-    - msg/datatypes.h was removed
-    - msg/msg.h -> simgrid/msg.h
-
  MC
   * The model checker now runs as a separate process.
   * The model checker runs must now be launched with the new simgrid-mc program.
  MC
   * The model checker now runs as a separate process.
   * The model checker runs must now be launched with the new simgrid-mc program.
diff --git a/NEWS b/NEWS
index 9c9508a..d5075f9 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -4,14 +4,29 @@ __   _____ _ __ ___(_) ___  _ __   |___ / / |___ \
  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |/ __/
   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|_____|
 
  \ V /  __/ |  \__ \ | (_) | | | |  ___) || |/ __/
   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_|_____|
 
-(to complete)
-
- * Surf internal cleanup: rename workstation into host.
-   Option "workstation/model" now reads "host/model"
- * The model checker now runs in a separate process.
- * The model checker has support for memory compaction of its snapshots.
- * MC record/replay: a interesting path found by the modelchecker can be
-   replayed outside of the modelchecker.
+The Facelift Release. Major changes:
+
+ * Many interface glitches addressed, everywhere.
+   - Require g++-4.7 and boost 1.48
+   - See ChangeLog for renamed functions and options.
+
+ * Energy plugin: major cleanups/rewrites.
+   http://simgrid.org/tutorials/simgrid-energy-101.pdf
+
+ * Model-Checker progresses toward production use:
+   - More robust (now runs in a separate process).
+   - More efficient (with snapshots' memory compaction).
+   - More usable (execution paths replayed out of MC)
+   http://simgrid.org/tutorials/simgrid-mc-101.pdf
+
+ * SMPI improvements:
+   - Better standard coverage  - SMP-aware collectives
+   - InfiniBand model          - Early support for RMA
+   - Replay: Dynamic selector  - MVAPICH2 selector
+   http://simgrid.org/tutorials/simgrid-smpi-101.pdf
+
+Upcoming v3.13 will introduce new interfaces, toward SimGrid 4.
+
                     _               _____  _ _
 __   _____ _ __ ___(_) ___  _ __   |___ / / / |
 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | |
                     _               _____  _ _
 __   _____ _ __ ___(_) ___  _ __   |___ / / / |
 \ \ / / _ \ '__/ __| |/ _ \| '_ \    |_ \ | | |