-<!--
+<!--
DTD of SimGrid platform and deployment files.
-More info: http://simgrid.gforge.inria.fr/simgrid/latest/doc/platform.html
+More info: https://simgrid.org/doc/latest/platform.html
To upgrade your files, use the tool simgrid_update_xml
* Things that will change in upcoming version 5 (TODO):
- The following tags will be removed:
- <include> spits an error since v3.18
- - <random> does nothing since a very long time
+ - <random> and <model_prop> do nothing since a very long time
- <as>, <asroute>, <bypassZoneRoute> and <process>, deprecated in DTD4.1
+ - FULLDUPLEX sharing will be removed, deprecated in DTD4.2 (v3.19)
* New in DTD version 4.1 (in SimGrid 3.16): backward compatible change (v4 files are valid v4.1 files)
- <zone> can be used as a synonym for the now deprecated <as>
- <zoneRoute> can be used as a synonym for the now deprecated <asroute>
- - <bypassZoneRoute> an be used as a synonym for the now deprecated <bypassAsRoute>
+ - <bypassZoneRoute> can be used as a synonym for the now deprecated <bypassAsRoute>
- <actor> can be used as a synonym for the now deprecated <process>
+ Other backward-compatible changes for which we did not bump the DTD version.
+ - SPLITDUPLEX is the new spelling of the deprecated FULLDUPLEX (SimGrid v3.19)
+ - In <host> and <peer> availability_file is now speed_file (SimGrid v3.22)
* New in DTD version 4 (in SimGrid 3.13):
- Rename (power->speed) the attributes describing the amount of flop
that a <host>, <peer>, <cluster> or <cabinet> can deliver per second.
- In <trace_connect>, attribute kind="POWER" is now kind="SPEED".
-
+
- In <host> and <link>, attributes availability and state are gone.
- It was redundent with state and availability traces, and with peak values.
-
- - In <cluster>, cannot set the availability nor state traces.
+ It was redundant with state and availability profiles, and with peak values.
+
+ - In <cluster>, cannot set the availability nor state profiles.
This was too complex and unused.
- - The DOCTYPE points to the right URL (this file):
- http://simgrid.gforge.inria.fr/simgrid/simgrid.dtd
-
+ - The DOCTYPE points to the right URL (this file).
+
- Kill <gpu>. Was not doing anything.
- A warning is emitted for unit-less values (they are still accepted).
+ The value 0 can remain unit-less, as its unit does not matter.
- speed. Default: 'f' or 'flops'. Also defined:
'Yf', 'Zf', 'Ef', 'Pf', 'Tf', 'Gf', 'Mf', 'kf'
- PLATFORM_DESCRIPTION -> PLATFORM
* New in DTD version 1 (in SimGrid 3.3):
- - DTD is now versionned with the version attribute of platform
- - Unit change:
+ - DTD is now versioned with the version attribute of platform
+ - Unit change:
- Link bandwidth: from Mb/s to b/s
- CPU speed: from MFlop/s to Flop/s
<!ELEMENT platform ((config|random)*,(include|cluster|cabinet|peer|AS|zone|trace|trace_connect)*,(process|actor)*)>
<!ATTLIST platform version CDATA "0.0">
-<!-- tag include is deprecated. Not documented, and soon removed -->
+<!-- tag include is deprecated. Not documented, and removed in v3.22 -->
<!ELEMENT include (include|cluster|cabinet|peer|AS|zone|trace|trace_connect)*>
<!ATTLIST include file CDATA #REQUIRED>
<!ATTLIST trace file CDATA "">
<!ATTLIST trace periodicity CDATA #REQUIRED>
+<!-- random is deprecated -->
<!ELEMENT random EMPTY>
<!ATTLIST random id CDATA #REQUIRED>
<!ATTLIST random min CDATA #REQUIRED>
<!ATTLIST trace_connect trace CDATA #REQUIRED>
<!ATTLIST trace_connect element CDATA #REQUIRED>
-<!ELEMENT AS ((prop*), ((AS|zone|ASroute|zoneRoute|include|storage_type|storage|link|backbone|cabinet|router|host|cluster|peer|host_link)*,(route|ASroute|zoneRoute|trace|trace_connect|bypassRoute|bypassASroute|bypassZoneRoute)*))>
+<!-- AS is a deprecated equivalent of zone -->
+<!ELEMENT AS ((prop*),
+ (((AS|zone|include|link|backbone|cabinet|cluster|peer|trace|trace_connect)*,
+ (zoneRoute|ASroute|trace|trace_connect|bypassASroute|bypassZoneRoute)*,
+ (trace|trace_connect)*)
+ |((include|storage_type|storage|host|cabinet|router|link|backbone|trace|trace_connect|host_link)*,
+ (route|trace|trace_connect|bypassRoute)*)))>
<!ATTLIST AS id CDATA #REQUIRED>
-<!ATTLIST AS routing (Full|Floyd|Dijkstra|DijkstraCache|None|Vivaldi|Cluster|ClusterTorus|ClusterFatTree|ClusterDragonfly) #REQUIRED>
-
-<!ELEMENT zone ((prop*), ((AS|zone|ASroute|zoneRoute|include|storage_type|storage|link|backbone|cabinet|router|host|cluster|peer|host_link)*,(route|ASroute|zoneRoute|trace|trace_connect|bypassRoute|bypassASroute|bypassZoneRoute)*))>
+<!ATTLIST AS routing CDATA #REQUIRED>
+
+<!-- A zone is either an internal node that contains other zones,
+ or a leaf containing hosts and other leaf-like elements -->
+<!ELEMENT zone ((prop*),
+ (((AS|zone|include|link|backbone|cluster|peer|trace|trace_connect)*,
+ (zoneRoute|ASroute|trace|trace_connect|bypassASroute|bypassZoneRoute)*,
+ (trace|trace_connect)*)
+ |((include|storage_type|storage|host|cabinet|router|link|backbone|trace|trace_connect|host_link)*,
+ (route|trace|trace_connect|bypassRoute)*)))>
<!ATTLIST zone id CDATA #REQUIRED>
-<!ATTLIST zone routing (Full|Floyd|Dijkstra|DijkstraCache|None|Vivaldi|Cluster|ClusterTorus|ClusterFatTree|ClusterDragonfly) #REQUIRED>
+<!ATTLIST zone routing CDATA #REQUIRED>
+<!-- storage, storage_type and mount are deprecated -->
<!ELEMENT storage_type ((model_prop|prop)*)>
<!ATTLIST storage_type id CDATA #REQUIRED>
<!ATTLIST storage_type model CDATA "N11">
<!ATTLIST storage_type size CDATA #REQUIRED>
<!ATTLIST storage_type content CDATA "">
-
+<!ELEMENT storage (prop*)>
+<!ATTLIST storage id CDATA #REQUIRED>
+<!ATTLIST storage typeId CDATA #REQUIRED>
+<!ATTLIST storage content CDATA "">
+<!ATTLIST storage attach CDATA #REQUIRED>
<!ELEMENT mount EMPTY>
<!ATTLIST mount storageId CDATA #REQUIRED>
<!ATTLIST mount name CDATA #REQUIRED>
-<!ELEMENT host (prop|mount)*>
+<!ELEMENT host (disk|prop|mount)*>
<!ATTLIST host id CDATA #REQUIRED>
<!ATTLIST host speed CDATA #REQUIRED>
<!ATTLIST host core CDATA "1">
-<!ATTLIST host availability_file CDATA "">
+<!ATTLIST host speed_file CDATA "">
+<!ATTLIST host availability_file CDATA ""> <!-- deprecated -->
<!ATTLIST host state_file CDATA "">
<!ATTLIST host coordinates CDATA "">
<!ATTLIST host pstate CDATA "0.0">
-<!ELEMENT storage (prop*)>
-<!ATTLIST storage id CDATA #REQUIRED>
-<!ATTLIST storage typeId CDATA #REQUIRED>
-<!ATTLIST storage content CDATA "">
-<!ATTLIST storage attach CDATA #REQUIRED>
+<!ELEMENT disk (prop*)>
+<!ATTLIST disk id CDATA "/">
+<!ATTLIST disk read_bw CDATA #REQUIRED>
+<!ATTLIST disk write_bw CDATA #REQUIRED>
<!ELEMENT host_link EMPTY>
<!ATTLIST host_link id CDATA #REQUIRED>
<!ATTLIST cluster core CDATA "1">
<!ATTLIST cluster bw CDATA #REQUIRED>
<!ATTLIST cluster lat CDATA #REQUIRED>
-<!ATTLIST cluster sharing_policy (SHARED|FULLDUPLEX|FATPIPE) "FULLDUPLEX">
+<!ATTLIST cluster sharing_policy (SHARED|SPLITDUPLEX|FULLDUPLEX|FATPIPE) "SPLITDUPLEX">
<!ATTLIST cluster topology (FLAT|TORUS|FAT_TREE|DRAGONFLY) "FLAT">
<!ATTLIST cluster topo_parameters CDATA "">
<!ATTLIST cluster bb_bw CDATA "">
<!ATTLIST peer bw_out CDATA #REQUIRED>
<!ATTLIST peer lat CDATA "0">
<!ATTLIST peer coordinates CDATA "">
-<!ATTLIST peer availability_file CDATA "">
+<!ATTLIST peer speed_file CDATA "">
+<!ATTLIST peer availability_file CDATA ""> <!-- deprecated -->
<!ATTLIST peer state_file CDATA "">
<!ELEMENT router EMPTY>
<!ATTLIST link latency CDATA "0">
<!ATTLIST link latency_file CDATA "">
<!ATTLIST link state_file CDATA "">
-<!ATTLIST link sharing_policy (SHARED|FATPIPE|FULLDUPLEX) "SHARED">
+<!ATTLIST link sharing_policy (SHARED|SPLITDUPLEX|FULLDUPLEX|FATPIPE|WIFI) "SHARED">
<!ELEMENT route (link_ctn*)>
<!ATTLIST route src CDATA #REQUIRED>
<!ATTLIST route dst CDATA #REQUIRED>
-<!ATTLIST route symmetrical (YES|NO) "YES">
+<!ATTLIST route symmetrical (YES|NO|yes|no) "YES">
+<!-- ASroute bypassASRoute are deprecated (prefer zoneRoute and friends) -->
<!ELEMENT ASroute (link_ctn*)>
<!ATTLIST ASroute src CDATA #REQUIRED>
<!ATTLIST ASroute dst CDATA #REQUIRED>
<!ATTLIST ASroute gw_src CDATA #REQUIRED>
<!ATTLIST ASroute gw_dst CDATA #REQUIRED>
-<!ATTLIST ASroute symmetrical (YES|NO) "YES">
+<!ATTLIST ASroute symmetrical (YES|NO|yes|no) "YES">
+<!ELEMENT bypassASroute (link_ctn*)>
+<!ATTLIST bypassASroute src CDATA #REQUIRED>
+<!ATTLIST bypassASroute dst CDATA #REQUIRED>
+<!ATTLIST bypassASroute gw_src CDATA #REQUIRED>
+<!ATTLIST bypassASroute gw_dst CDATA #REQUIRED>
<!ELEMENT zoneRoute (link_ctn*)>
<!ATTLIST zoneRoute src CDATA #REQUIRED>
<!ATTLIST zoneRoute dst CDATA #REQUIRED>
<!ATTLIST zoneRoute gw_src CDATA #REQUIRED>
<!ATTLIST zoneRoute gw_dst CDATA #REQUIRED>
-<!ATTLIST zoneRoute symmetrical (YES|NO) "YES">
+<!ATTLIST zoneRoute symmetrical (YES|NO|yes|no) "YES">
<!ELEMENT link_ctn EMPTY>
<!ATTLIST link_ctn id CDATA #REQUIRED>
<!ATTLIST bypassRoute src CDATA #REQUIRED>
<!ATTLIST bypassRoute dst CDATA #REQUIRED>
-<!ELEMENT bypassASroute (link_ctn*)>
-<!ATTLIST bypassASroute src CDATA #REQUIRED>
-<!ATTLIST bypassASroute dst CDATA #REQUIRED>
-<!ATTLIST bypassASroute gw_src CDATA #REQUIRED>
-<!ATTLIST bypassASroute gw_dst CDATA #REQUIRED>
-
<!ELEMENT bypassZoneRoute (link_ctn*)>
<!ATTLIST bypassZoneRoute src CDATA #REQUIRED>
<!ATTLIST bypassZoneRoute dst CDATA #REQUIRED>
<!ATTLIST bypassZoneRoute gw_src CDATA #REQUIRED>
<!ATTLIST bypassZoneRoute gw_dst CDATA #REQUIRED>
+<!-- process is deprecated -->
<!ELEMENT process ((argument|prop)*)>
<!ATTLIST process host CDATA #REQUIRED>
<!ATTLIST process function CDATA #REQUIRED>