For more details, please refer to "Accuracy study and improvement of network simulation in the SimGrid framework" by
Arnaud Legrand and Pedro Velho.
+.. _models_l07:
+
Parallel tasks (L07)
********************
Max-Min objective function requires that all variables are expressed using the same unit. This is also why in reality,
we have one LMM system per resource kind in the simulation, but the idea remains similar.
+Use the :ref:`relevant configuration <options_model_select>` to select this model in your simulation.
+
.. _models_wifi:
WiFi zones
This shows how to declare disks in XML.
+Asynchronous raw accesses
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+As most other activities, raw IO accesses can be used asynchronously, as illustrated in this example.
+
+.. tabs::
+
+ .. example-tab:: examples/cpp/io-async/s4u-io-async.cpp
+
Filesystem plugin
^^^^^^^^^^^^^^^^^
*
* These objects are somewhat surprising from a modeling point of view. For example, the unit of their speed is
* somewhere between flop/sec and byte/sec. Arbitrary parallel executions will simply not work with the usual platform
- * models, and you must :ref:`use the ptask_L07 host model <options_model_select>` for that. Note that you can mix
+ * models, and you must :ref:`use the ptask_L07 host model <models_l07>` for that. Note that you can mix
* regular executions and communications with parallel executions, provided that the host model is ptask_L07.
*
* @endrst
*/
-/** Block the current actor until the built parallel execution completes */
+/** Block the current actor until the built parallel execution completes. */
XBT_PUBLIC void parallel_execute(const std::vector<s4u::Host*>& hosts, const std::vector<double>& flops_amounts,
const std::vector<double>& bytes_amounts);
-/** Block the current actor until the built multi-thread execution completes */
+/** Block the current actor until the built multi-thread execution completes. */
XBT_PUBLIC void thread_execute(s4u::Host* host, double flop_amounts, int thread_count);
/** Initialize a sequential execution that must then be started manually */