Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
cosmetics in the changelog and NEWS file [skip-ci]
authorMartin Quinson <martin.quinson@ens-rennes.fr>
Thu, 23 Sep 2021 07:21:27 +0000 (09:21 +0200)
committerMartin Quinson <martin.quinson@ens-rennes.fr>
Thu, 23 Sep 2021 07:21:36 +0000 (09:21 +0200)
ChangeLog
NEWS
include/simgrid/s4u/Disk.hpp
include/simgrid/s4u/Host.hpp
include/simgrid/s4u/Link.hpp

index 10bc26e..13e0736 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,21 +2,13 @@
 
 SimGrid (3.28.1) NOT RELEASED YET (v3.29 expected September 22. 2021, 19:21 UTC)
 
-New features:
- - Non-linear resource sharing: allows to dynamically change the resource
-   capacity. Users can change this capacity by setting a callback which will
-   be called when SimGrid is sharing the resource between the active
-   activities. An activity can be a task running, a read/write IO operation or a
-   communication flow.
-   - Callback signature: double (double capacity, int n_activities): given the
-     current resource's capacity and number of activities running on it,
-     returns the new capacity.
-   - Note that this callback is in the critical path of the system solve and
-   should not take long to execute.
-   - Examples:
-     - Disk: examples/cpp/io-degradation
-     - Link: examples/cpp/network-nonlinear
-     - CPU: examples/cpp/exec-cpu-nonlinear
+New modeling features:
+ - Non-linear resource sharing for decay models:
+   - The total capacity may depend on the number of concurrent usages
+   - For that, resources can take a callback that computes the capacity 
+     depending on the idle capacity and the number of concurrent usages
+   - Examples (both cpp and python): io-degradation, network-nonlinear, exec-cpu-nonlinear
+
  - Dynamic factors for CPU and disk: similarly to dynamic network factors,
    allows the user to set a callback which can affect the progress of activities
    (multiplicative factor applied when updating the amount of work remaining).
@@ -24,30 +16,22 @@ New features:
 
 Python:
  - Added support to programmatic platform creation in Python.
- - Several new methods were added to Python interface. For more details, see
- the corresponding documentation.
- - New python examples:
-   - Clusters: examples/python/clusters-multicpu
-   - Disk: examples/python/io-degradation
-   - CPU: examples/python/exec-cpu-nonlienar
-   - Link: examples/python/network-nonlinear
+   Example: examples/python/clusters-multicpu
 
 S4U:
- - New: s4u::Disk::set_sharing_policy() and s4u::Host::set_sharing_policy().
-   Allows the configuration of non-linear resource sharing for hosts and
-   disks.
+ - Disk and Host now have a set_sharing_policy() too, for non-linear sharing.
+   This can only be set through the API, not through XML files.
 
 SMPI:
  - TI Tracing/Replay:
-     - Multiple fixes to ensure reproducibility of tracing
-     - scan/excan can now be replayed
-     - wait action now uses ranks and not pid, as the other ones.
-     - smpi/init and smpi/finalization-barrier are now valid for replays.
+   - Multiple fixes to ensure reproducibility of tracing
+   - scan/excan can now be replayed
+   - wait action now uses ranks and not pid, as the other ones.
+   - smpi/init and smpi/finalization-barrier are now valid for replays.
 
 Documentation:
   * New section "Release Notes" documenting recent and current developments.
-  * New section "Modeling I/O: the realistic way" presenting how to properly
-  model disks in SimGrid.
+  * New section "Modeling I/O: the realistic way" presenting how to properly model disks in SimGrid.
   * Improvements in API Reference for C++ and Python interfaces.
 
 ns-3 model:
diff --git a/NEWS b/NEWS
index cd4f2d4..0379431 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,12 @@ __   _____ _ __ ___(_) ___  _ __   |___ / |___ \ / _ \
  \ V /  __/ |  \__ \ | (_) | | | |  ___) | / __/ \__, |
   \_/ \___|_|  |___/_|\___/|_| |_| |____(_)_____|  /_/
                (unreleased)
+              
+The "Give peace a chance" release (International Day of Peace)
+
+  * Python bindings for the platform creation API
+  * Introduce non-linear ressource sharing, allowing decay models
+  * New documentation section on realistic I/O modeling
 
                     _               _____  ____  ___
 __   _____ _ __ ___(_) ___  _ __   |___ / |___ \( _ )
index 6d8e00d..68740d1 100644 (file)
@@ -95,12 +95,13 @@ public:
   /**
    * @brief Describes how the disk is shared between activities for each operation
    *
-   * Disks have different bandwidths for read and write operations. This method
-   * allows you to set different sharing policies for each operation:
+   * Disks have different bandwidths for read and write operations, that can have different policies:
    * - Read: resource sharing for read operation
    * - Write: resource sharing for write
    * - ReadWrite: global sharing for read and write operations
    *
+   * Note that the NONLINEAR callback is in the critical path of the solver, so it should be fast.
+   *
    * @param op Operation type
    * @param policy Sharing policy
    * @param cb Callback for NONLINEAR policies
index 88d7d36..d50d8f9 100644 (file)
@@ -174,6 +174,8 @@ public:
   /**
    * @brief Describes how the CPU is shared between concurrent tasks
    *
+   * Note that the NONLINEAR callback is in the critical path of the solver, so it should be fast.
+   *
    * @param policy Sharing policy
    * @param cb Callback for NONLINEAR policies
    */
index bcd91af..4eb8cf6 100644 (file)
@@ -78,7 +78,10 @@ public:
    */
   Link* set_latency(const std::string& value);
 
-  /** @brief Describes how the link is shared between flows */
+  /** @brief Describes how the link is shared between flows
+   *
+   *  Note that the NONLINEAR callback is in the critical path of the solver, so it should be fast.
+   */
   Link* set_sharing_policy(SharingPolicy policy, const NonLinearResourceCb& cb = {});
   SharingPolicy get_sharing_policy() const;