Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
code simplification around simgrid::surf::NetCardImpl
[simgrid.git] / src / surf / simgrid.dtd
1 <!-- 
2              DTD of SimGrid platform and deployment files.
3
4 More info: http://simgrid.gforge.inria.fr/simgrid/latest/doc/platform.html
5 To upgrade your files, use the tool simgrid_update_xml
6
7 * New in DTD version 4 (in SimGrid 3.13):
8    - Rename (power->speed) the attributes describing the amount of flop
9      that a <host>, <peer>, <cluster> or <cabinet> can deliver per second.
10
11    - In <trace_connect>, attribute kind="POWER" is now kind="SPEED".
12
13    - The DOCTYPE points to the right URL (this file):
14      http://simgrid.gforge.inria.fr/simgrid/simgrid.dtd
15
16    - A warning is emited for unit-less values (they are still accepted).
17
18      - speed. Default: 'f' or 'flops'. Also defined:
19         'Yf',         'Zf',         'Ef',       'Pf',        'Tf',        'Gf',        'Mf',        'kf'
20         'yottaflops', 'zettaflops', 'exaflops', 'petaflops', 'teraflops', 'gigaflops', 'megaflops', 'kiloflops'
21
22      - bandwidth. Default: 'Bps' bytes per second (or 'bps' for bits but 1 Bps = 8 bps)
23        Also defined in bytes: 'TiBps', 'GiBps', 'MiBps', 'KiBps', 'TBps', 'GBps', 'MBps', 'kBps', 'Bps'
24        And the same in bits:  'Tibps', 'Gibps', 'Mibps', 'Kibps', 'Tbps', 'Gbps', 'Mbps', 'kbps', 'bps'
25
26      - latency. Default: 's' second. Also defined:
27        'w' week, 'd' day, 'h' hour, 'm' minute, 'ms' millisecond, 'us' microsecond, 'ns' nanosecond, 'ps' picosecond
28
29 * New in DTD version 3 (in SimGrid 3.5):
30    - The AS tag were introduced. Every platform should now
31      contain an englobing AS tag.
32    - Routes are now symmetric by default.
33    - Renamed tags (for sake of XML sanity):
34      - LINK:CTN -> LINK_CTN
35      - TRACE:CONNECT -> TRACE_CONNECT
36
37 * New in DTD version 2 (in SimGrid 3.4):
38    - Renamed tags:
39      - CPU -> HOST
40      - NETWORK_LINK -> LINK
41      - ROUTE_ELEMENT ->  LINK:CTN (changed again in v3)
42      - PLATFORM_DESCRIPTION -> PLATFORM
43
44 * New in DTD version 1 (in SimGrid 3.3):
45    - DTD is now versionned with the version attribute of platform
46    - Unit change: 
47      - Link bandwidth: from Mb/s to b/s
48      - CPU speed: from MFlop/s to Flop/s
49
50 -->
51
52 <!ELEMENT platform ((config|random)*,(include|cluster|cabinet|peer|AS|trace|trace_connect)*,(process)*)>
53 <!ATTLIST platform version CDATA "0.0">
54
55 <!ELEMENT include (include|cluster|cabinet|peer|AS|trace|trace_connect)*>
56 <!ATTLIST include file CDATA #REQUIRED>
57
58 <!ELEMENT trace (#PCDATA)>
59 <!ATTLIST trace id CDATA #REQUIRED>
60 <!ATTLIST trace file CDATA "">
61 <!ATTLIST trace periodicity CDATA #REQUIRED>
62
63 <!ELEMENT random EMPTY>
64 <!ATTLIST random id CDATA #REQUIRED>
65 <!ATTLIST random min CDATA #REQUIRED>
66 <!ATTLIST random max CDATA #REQUIRED>
67 <!ATTLIST random mean CDATA #REQUIRED>
68 <!ATTLIST random std_deviation CDATA #REQUIRED>
69 <!ATTLIST random seed CDATA "2147483647">
70 <!ATTLIST random radical CDATA "">
71 <!ATTLIST random generator (DRAND48|RAND|RNGSTREAM|NONE) "DRAND48">
72
73 <!ELEMENT trace_connect EMPTY>
74 <!ATTLIST trace_connect kind (HOST_AVAIL|SPEED|LINK_AVAIL|BANDWIDTH|LATENCY) "HOST_AVAIL">
75 <!ATTLIST trace_connect trace CDATA #REQUIRED>
76 <!ATTLIST trace_connect element CDATA #REQUIRED>
77
78 <!ELEMENT AS ((prop*), ((AS|ASroute|include|storage_type|storage|link|backbone|cabinet|router|host|gpu|cluster|peer|host_link)*,(route|ASroute|trace|trace_connect|bypassRoute|bypassASroute)*))>
79 <!ATTLIST AS id CDATA #REQUIRED>
80 <!ATTLIST AS routing (Full|Floyd|Dijkstra|DijkstraCache|None|Vivaldi|Cluster|ClusterTorus|ClusterFatTree) #REQUIRED>
81
82 <!ELEMENT storage_type ((model_prop|prop)*)>
83 <!ATTLIST storage_type id       CDATA #REQUIRED>
84 <!ATTLIST storage_type model    CDATA #REQUIRED>
85 <!ATTLIST storage_type size     CDATA #REQUIRED>
86 <!ATTLIST storage_type content  CDATA "">
87 <!ATTLIST storage_type content_type  CDATA "txt_unix">
88
89 <!ELEMENT mount EMPTY>
90 <!ATTLIST mount storageId CDATA #REQUIRED>
91 <!ATTLIST mount name CDATA #REQUIRED>
92
93 <!ELEMENT mstorage EMPTY>
94 <!ATTLIST mstorage typeId CDATA #REQUIRED>
95 <!ATTLIST mstorage name CDATA #REQUIRED>
96
97 <!ELEMENT host (prop|mount|mstorage)*>
98 <!ATTLIST host id CDATA #REQUIRED>
99 <!ATTLIST host speed CDATA #REQUIRED>
100 <!ATTLIST host core  CDATA "1">
101 <!ATTLIST host availability CDATA "1.0">
102 <!ATTLIST host availability_file CDATA "">
103 <!ATTLIST host state (ON|OFF) "ON">
104 <!ATTLIST host state_file CDATA "">
105 <!ATTLIST host coordinates  CDATA "">
106 <!ATTLIST host pstate CDATA "0.0">
107
108 <!ELEMENT storage (prop*)>
109 <!ATTLIST storage id CDATA #REQUIRED>
110 <!ATTLIST storage typeId CDATA #REQUIRED>
111 <!ATTLIST storage content  CDATA "">
112 <!ATTLIST storage content_type  CDATA "txt_unix">
113 <!ATTLIST storage attach CDATA #REQUIRED>
114
115 <!ELEMENT gpu EMPTY>
116 <!ATTLIST gpu name CDATA #REQUIRED>
117
118 <!ELEMENT host_link EMPTY>
119 <!ATTLIST host_link id CDATA #REQUIRED>
120 <!ATTLIST host_link up CDATA #REQUIRED>
121 <!ATTLIST host_link down CDATA #REQUIRED>
122
123 <!ELEMENT cluster (prop*)>
124 <!ATTLIST cluster id CDATA #REQUIRED>
125 <!ATTLIST cluster prefix CDATA #REQUIRED>
126 <!ATTLIST cluster suffix CDATA #REQUIRED>
127 <!ATTLIST cluster radical CDATA #REQUIRED>
128 <!ATTLIST cluster speed CDATA #REQUIRED>
129 <!ATTLIST cluster core CDATA "1">
130 <!ATTLIST cluster bw CDATA #REQUIRED>
131 <!ATTLIST cluster lat CDATA #REQUIRED>
132 <!ATTLIST cluster sharing_policy (SHARED|FULLDUPLEX|FATPIPE) "FULLDUPLEX">
133 <!ATTLIST cluster topology (FLAT|TORUS|FAT_TREE) "FLAT">
134 <!ATTLIST cluster topo_parameters CDATA "">
135 <!ATTLIST cluster bb_bw CDATA "">
136 <!ATTLIST cluster bb_lat CDATA "0s">
137 <!ATTLIST cluster bb_sharing_policy (SHARED|FATPIPE) "SHARED">
138 <!ATTLIST cluster availability_file CDATA "">
139 <!ATTLIST cluster state_file CDATA "">
140 <!ATTLIST cluster router_id CDATA "">
141 <!ATTLIST cluster limiter_link CDATA "">
142 <!ATTLIST cluster loopback_bw CDATA "">
143 <!ATTLIST cluster loopback_lat CDATA "">
144
145 <!ELEMENT cabinet EMPTY>
146 <!ATTLIST cabinet id CDATA #REQUIRED>
147 <!ATTLIST cabinet prefix CDATA #REQUIRED>
148 <!ATTLIST cabinet suffix CDATA #REQUIRED>
149 <!ATTLIST cabinet radical CDATA #REQUIRED>
150 <!ATTLIST cabinet speed CDATA #REQUIRED>
151 <!ATTLIST cabinet bw CDATA #REQUIRED>
152 <!ATTLIST cabinet lat CDATA #REQUIRED>
153
154 <!ELEMENT peer EMPTY>
155 <!ATTLIST peer id CDATA #REQUIRED>
156 <!ATTLIST peer speed CDATA #REQUIRED>
157 <!ATTLIST peer bw_in CDATA #REQUIRED>
158 <!ATTLIST peer bw_out CDATA #REQUIRED>
159 <!ATTLIST peer lat CDATA #REQUIRED>
160 <!ATTLIST peer coordinates CDATA "">
161 <!ATTLIST peer availability_file CDATA "">
162 <!ATTLIST peer state_file CDATA "">
163
164 <!ELEMENT router EMPTY>
165 <!ATTLIST router id CDATA #REQUIRED>
166 <!ATTLIST router coordinates  CDATA "">
167
168 <!ELEMENT backbone EMPTY>
169 <!ATTLIST backbone id CDATA #REQUIRED>
170 <!ATTLIST backbone bandwidth CDATA  #REQUIRED>
171 <!ATTLIST backbone latency CDATA #REQUIRED>
172
173 <!ELEMENT link (prop*)>
174 <!ATTLIST link id CDATA #REQUIRED>
175 <!ATTLIST link bandwidth CDATA  #REQUIRED>
176 <!ATTLIST link bandwidth_file CDATA "">
177 <!ATTLIST link latency CDATA "0">
178 <!ATTLIST link latency_file CDATA "">
179 <!ATTLIST link state (ON|OFF) "ON">
180 <!ATTLIST link state_file CDATA "">
181 <!ATTLIST link sharing_policy (SHARED|FATPIPE|FULLDUPLEX) "SHARED">
182
183 <!ELEMENT route (link_ctn*)>
184 <!ATTLIST route src CDATA #REQUIRED>
185 <!ATTLIST route dst CDATA #REQUIRED>
186 <!ATTLIST route symmetrical (YES|NO) "YES">
187
188 <!ELEMENT ASroute (link_ctn*)>
189 <!ATTLIST ASroute src CDATA #REQUIRED>
190 <!ATTLIST ASroute dst CDATA #REQUIRED>
191 <!ATTLIST ASroute gw_src CDATA #REQUIRED>
192 <!ATTLIST ASroute gw_dst CDATA #REQUIRED>
193 <!ATTLIST ASroute symmetrical (YES|NO) "YES">
194
195 <!ELEMENT link_ctn EMPTY>
196 <!ATTLIST link_ctn id CDATA #REQUIRED>
197 <!ATTLIST link_ctn direction (UP|DOWN|NONE) "NONE">
198
199 <!ELEMENT bypassRoute (link_ctn*)>
200 <!ATTLIST bypassRoute src CDATA #REQUIRED>
201 <!ATTLIST bypassRoute dst CDATA #REQUIRED>
202
203 <!ELEMENT bypassASroute (link_ctn*)>
204 <!ATTLIST bypassASroute src CDATA #REQUIRED>
205 <!ATTLIST bypassASroute dst CDATA #REQUIRED>
206 <!ATTLIST bypassASroute gw_src CDATA #REQUIRED>
207 <!ATTLIST bypassASroute gw_dst CDATA #REQUIRED>
208
209 <!ELEMENT process ((argument|prop)*)>
210 <!ATTLIST process host CDATA #REQUIRED>
211 <!ATTLIST process function CDATA #REQUIRED>
212 <!ATTLIST process start_time CDATA "-1.0">
213 <!ATTLIST process kill_time CDATA "-1.0">
214 <!ATTLIST process on_failure (DIE|RESTART) "DIE">
215
216 <!ELEMENT argument EMPTY>
217 <!ATTLIST argument value CDATA #REQUIRED>
218
219 <!ELEMENT config (prop*)>
220 <!ATTLIST config id CDATA "">
221
222 <!ELEMENT prop EMPTY>
223 <!ATTLIST prop id CDATA #REQUIRED> <!-- <!ATTLIST prop key CDATA #REQUIRED> -->
224 <!ATTLIST prop value CDATA #REQUIRED>
225
226 <!ELEMENT model_prop EMPTY>
227 <!ATTLIST model_prop id CDATA #REQUIRED> <!-- <!ATTLIST model_prop key CDATA #REQUIRED> -->
228 <!ATTLIST model_prop value CDATA #REQUIRED>