We decided to not model anything beyond raw access in SimGrid because we believe that there is not single way of doing so.
We provide an example model of file system as a plugin, (sparsely) documented in :ref:`plugin_filesystem`.
-**Parent tags:** :ref:`pf_tag_host`
-
-**Children tags:** :ref:`pf_tag_prop`
-
+**Parent tags:** :ref:`pf_tag_host` |br|
+**Children tags:** :ref:`pf_tag_prop` |br|
**Attributes:**
:``id``: A name of your choice (must be unique on this host).
:``read_bw``: Read bandwidth for this disk. You must specify a unit as follows.
**Units in bytes and powers of 2** (1 KiBps = 1,024 Bps):
- Bps, KiBps, MiBps, GiBps, TiBps, PiBps, or EiBps.
+ Bps, KiBps, MiBps, GiBps, TiBps, PiBps, or EiBps. |br|
**Units in bits and powers of 2** (1 Bps = 8 bps):
- bps, Kibps, Mibps, Gibps, Tibps, Pibps, or Eibps.
+ bps, Kibps, Mibps, Gibps, Tibps, Pibps, or Eibps. |br|
**Units in bytes and powers of 10** (1 KBps = 1,000 Bps):
- Bps, KBps, MBps, GBps, TBps, PBps, or EBps.
+ Bps, KBps, MBps, GBps, TBps, PBps, or EBps. |br|
**Units in bits and powers of 10:**
bps, Kbps, Mbps, Gbps, Tbps, Pbps, or Ebps.
Each configuration flag is described as a :ref:`pf_tag_prop` whose ``id`` is the
name of the flag and ``value`` is what it has to be set to.
-**Parent tags:** :ref:`pf_tag_platform` (must appear before any other tags)
-
-**Children tags:** :ref:`pf_tag_prop`
-
+**Parent tags:** :ref:`pf_tag_platform` (must appear before any other tags) |br|
+**Children tags:** :ref:`pf_tag_prop` |br|
**Attributes:** none
.. code-block:: xml
A host is the computing resource on which an actor can run. See :cpp:class:`simgrid::s4u::Host`.
-**Parent tags:** :ref:`pf_tag_zone` (only leaf zones, i.e., zones containing neither inner zones nor clusters)
-
-**Children tags:** :ref:`pf_tag_mount`, :ref:`pf_tag_prop`, :ref:`pf_tag_disk`
-
+**Parent tags:** :ref:`pf_tag_zone` (only leaf zones, i.e., zones containing neither inner zones nor clusters) |br|
+**Children tags:** :ref:`pf_tag_mount`, :ref:`pf_tag_prop`, :ref:`pf_tag_disk` |br|
**Attributes:**
:``id``: Host name.
They can also be used to abstract a larger network interconnect, e.g., the entire transcontinental network, into a
single element.
-**Parent tags:** :ref:`pf_tag_zone` (both leaf zones and inner zones)
-
-**Children tags:** :ref:`pf_tag_prop`
-
+**Parent tags:** :ref:`pf_tag_zone` (both leaf zones and inner zones) |br|
+**Children tags:** :ref:`pf_tag_prop` |br|
**Attributes:**
:``id``: Link name. Must be unique over the whole platform.
:``bandwidth``: Maximum bandwidth for this link. You must specify a unit as follows.
**Units in bytes and powers of 2** (1 KiBps = 1,024 Bps):
- Bps, KiBps, MiBps, GiBps, TiBps, PiBps, or EiBps.
+ Bps, KiBps, MiBps, GiBps, TiBps, PiBps, or EiBps. |br|
**Units in bits and powers of 2** (1 Bps = 8 bps):
- bps, Kibps, Mibps, Gibps, Tibps, Pibps, or Eibps.
+ bps, Kibps, Mibps, Gibps, Tibps, Pibps, or Eibps. |br|
**Units in bytes and powers of 10** (1 KBps = 1,000 Bps):
- Bps, KBps, MBps, GBps, TBps, PBps, or EBps.
+ Bps, KBps, MBps, GBps, TBps, PBps, or EBps. |br|
**Units in bits and powers of 10:**
bps, Kbps, Mbps, Gbps, Tbps, Pbps, or Ebps.
An element in a route, representing a previously defined link.
-**Parent tags:** :ref:`pf_tag_route`
-
-**Children tags:** none
-
+**Parent tags:** :ref:`pf_tag_route` |br|
+**Children tags:** none |br|
**Attributes:**
:``id``: Link that is to be included in this route.
:``direction``: either ``UP`` (by default) or ``DOWN``, specifying whether to
use the uplink or downlink component of the link (that must
- follow the ``SPLITDUPLEX`` sharing policy).
-
+ follow the ``SPLITDUPLEX`` sharing policy). |br|
Please refer to the ``sharing_policy`` attribute in
:ref:`pf_tag_link`.
<peer> creates and connects several elements: a host, an upload link
and a download link.
-**Parent tags:** :ref:`pf_tag_zone` (only with Vivaldi routing)
-
-**Children tags:** none
-
+**Parent tags:** :ref:`pf_tag_zone` (only with Vivaldi routing) |br|
+**Children tags:** none |br|
**Attributes:**
:``id``: Name of the host. Must be unique on the whole platform.
<platform>
----------
-**Parent tags:** none (this is the root tag of every file)
-
+**Parent tags:** none (this is the root tag of every file) |br|
**Children tags:** :ref:`pf_tag_config` (must come first),
:ref:`pf_tag_cluster`, :ref:`pf_tag_cabinet`, :ref:`pf_tag_peer`,
:ref:`pf_tag_zone`, :ref:`pf_tag_trace`, :ref:`pf_tag_trace_connect`, or
-:ref:`pf_tag_actor` in :ref:`deployment <deploy>` files.
-
+:ref:`pf_tag_actor` in :ref:`deployment <deploy>` files. |br|
**Attributes:**
:``version``: Version of the DTD, describing the whole XML format.
- Zone: :cpp:func:`simgrid::s4u::Zone::get_property` of :cpp:func:`MSG_zone_get_property_value`
**Parent tags:** :ref:`pf_tag_actor`, :ref:`pf_tag_config`, :ref:`pf_tag_cluster`, :ref:`pf_tag_host`,
-:ref:`pf_tag_link`, :ref:`pf_tag_disk`,:ref:`pf_tag_zone`
-
-**Children tags:** none
-
+:ref:`pf_tag_link`, :ref:`pf_tag_disk`,:ref:`pf_tag_zone` |br|
+**Children tags:** none |br|
**Attributes:**
:``id``: Name of the defined property.
A path between two network locations, composed of several occurrences
of :ref:`pf_tag_link` .
-**Parent tags:** :ref:`pf_tag_zone`
-
-**Children tags:** :ref:`pf_tag_link_ctn`
-
+**Parent tags:** :ref:`pf_tag_zone` |br|
+**Children tags:** :ref:`pf_tag_link_ctn` |br|
**Attributes:**
:``src``: Host from which this route starts. Must be an existing host.
particular, they are useful when you want to use the NS3 bindings to
break the routes that are longer than 1 hop.
-**Parent tags:** :ref:`pf_tag_zone` (only leaf zones, i.e., zones containing neither inner zones nor clusters)
-
+**Parent tags:** :ref:`pf_tag_zone` (only leaf zones, i.e., zones containing neither inner zones nor clusters) |br|
**Attributes:**
:``id``: Router name.
**Parent tags:** :ref:`pf_tag_platform`, :ref:`pf_tag_zone` (only internal nodes, i.e., zones
containing only inner zones or clusters but no basic
-elements such as host or peer)
-
-**Children tags (if internal zone):** :ref:`pf_tag_cluster`, :ref:`pf_tag_link`, :ref:`pf_tag_zone`
-
-**Children tags (if leaf zone):** :ref:`pf_tag_host`, :ref:`pf_tag_link`, :ref:`pf_tag_peer`
-
+elements such as host or peer) |br|
+**Children tags (if internal zone):** :ref:`pf_tag_cluster`, :ref:`pf_tag_link`, :ref:`pf_tag_zone` |br|
+**Children tags (if leaf zone):** :ref:`pf_tag_host`, :ref:`pf_tag_link`, :ref:`pf_tag_peer` |br|
**Attributes:**
:``id``: Zone name.
along with the gateway in each zone (i.e., the point to reach within that zone to reach the zone),
and the list of links to go from one zone to another.
-**Parent tags:** :ref:`pf_tag_zone`
-
-**Children tags:** :ref:`pf_tag_link_ctn`
-
+**Parent tags:** :ref:`pf_tag_zone` |br|
+**Children tags:** :ref:`pf_tag_link_ctn` |br|
**Attributes:**
:``src``: Zone from which this route starts. Must be an existing zone.
The principle is the same, except that there is no backbone. This representation
can be obtained easily: just do not set the bb_* attributes.
-**Parent tags:** :ref:`pf_tag_platform`, :ref:`pf_tag_zone`
-
-**Children tags:** none
-
+**Parent tags:** :ref:`pf_tag_platform`, :ref:`pf_tag_zone` |br|
+**Children tags:** none |br|
**Attributes:**
:``id``: The identifier of the cluster. Facilitates referring to this cluster.
:ref:`pf_tag_cluster`, however, the :ref:`pf_tag_cabinet` assumes that you create the backbone
and routers yourself; see our examples below.
-**Parent tags:** :ref:`pf_tag_zone`
-
-**Children tags:** none
-
+**Parent tags:** :ref:`pf_tag_zone` |br|
+**Children tags:** none |br|
**Attributes:**
:``id``: The identifier of the cabinet. Facilitates referring to it.
The hosts generated in the above example are named host-1.cluster, host-2.cluster1
etc.
+.. |br| raw:: html
+
+ <br />