Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Introduce model specific properties for storage_type
[simgrid.git] / doc / doxygen / platform.doc
index 0085a2d..5564c83 100644 (file)
@@ -126,7 +126,7 @@ attributes.
     That also have a big impact on how many information you'll have to
     provide to help the simulator to route between the AS elements.
     <b>routing</b> possible values are <b>Full, Floyd, Dijkstra,
-    DijkstraCache, none, RuleBased, Vivaldi, Cluster</b>. For more
+    DijkstraCache, none, Vivaldi, Cluster</b>. For more
     explanation about what to choose, take a look at the section
     devoted to it below.  
 
@@ -162,15 +162,16 @@ contain more than 1 core. Here are the attributes of a host :
     referring to it.
 \li <b>power (mandatory)</b>:the peak number FLOPS the CPU can manage.
     Expressed in flop/s.
-\li <b>core</b>: The number of core of this host. If set, the power
-    gives the power of one core. The specified computing power will be
+\li <b>core</b>: The number of core of this host (by default, 1). If
+    you specify the amount of cores, the 'power' parameter is the power 
+    of each core. 
+    For example, if you specify that your host has 6 cores, it will be
     available to up to 6 sequential tasks without sharing. If more
     tasks are placed on this host, the resource will be shared
-    accordingly. For example, if you schedule 12 tasks on the host,
-    each will get half of the computing power. Please note that
-    although sound, this model were never scientifically assessed.
+    accordingly. For example, if you schedule 12 tasks on that host,
+    each will get half of the specified computing power. Please note
+    that although sound, this model were never scientifically assessed.
     Please keep this fact in mind when using it.
-
 \li <b>availability</b>: specify if the percentage of power available.
 \li <b>availability_file</b>: Allow you to use a file as input. This
     file will contain availability traces for this computer. The
@@ -371,14 +372,17 @@ router_name = prefix + clusterId + router_ + suffix;
 
 <b>cluster example</b>
 \verbatim
-<cluster id="my_cluster_1" prefix="" suffix=""
-               radical="0-262144"      power="1000000000"    bw="125000000"     lat="5E-5"/>
-<cluster id="my_cluster_1" prefix="c-" suffix=".me"
-               radical="0-99"  power="1000000000"    bw="125000000"     lat="5E-5"
-        bb_bw="2250000000" bb_lat="5E-4"/>
+<cluster id="my_cluster_1" prefix="" suffix="" radical="0-262144"
+         power="1e9" bw="125e6" lat="5E-5"/>
+
+<cluster id="my_cluster_1" prefix="c-" suffix=".me" radical="0-99"
+         power="1e9" bw="125e6" lat="5E-5"
+         bb_bw="2.25e9" bb_lat="5E-4"/>
 \endverbatim
-The second examples creates 100 machines, which names are the following:
+The second examples creates one router and 100 machines, which names 
+are the following:
 \verbatim
+c-my_cluster_1_router.me
 c-0.my_cluster_1.me
 c-1.my_cluster_1.me
 c-2.my_cluster_1.me
@@ -605,14 +609,26 @@ find /path/you/want -type f -exec ls -l {} \; 2>/dev/null > ./content.txt
 \li <b>content</b>: default value 0. The file containing the disk
     content. (may be moved soon or later to <b>storage</b> tag. 
 
-The tag must contains some predefined prop, as may do some other
-resources tags. This should moved to attributes soon or later. 
-<b>storage_type</b> mandatory <b>prop</b> :
+The tag must contains some predefined model prop, as may do some other
+resources tags.
+<b>storage_type</b> mandatory <b>model_prop</b> :
 \li <b>Bwrite</b>: value in B/s. Write throughput
 \li <b>Bread</b>: value in B/s. Read throughput
 \li <b>Bconnexion</b>: value in B/s. Connection throughput (i.e. the
     throughput of the storage connector). 
 
+A storage_type can also contain the <b>prop</b> tag. The prop tag allows you
+to define additional information on this storage_type following the
+attribute/value schema. You may want to use it to give information to
+the tool you use for rendering your simulation, for example.
+
+<storage_type id="single_HDD" model="linear_no_lat" size="4000" content_type="txt_unix">
+  <model_prop id="Bwrite" value="30MBps" />
+  <model_prop id="Bread" value="100MBps" />
+  <model_prop id="Bconnection" value="150MBps" />
+  <b><prop id="Brand" value="Western Digital" /></b>
+</storage_type>
+
 \subsubsection pf_sto_st storage
 
 <b>storage_type</b> attributes :
@@ -770,12 +786,6 @@ DijsktraCache example :
 \subsubsection pf_rm_me Manually-entered route models
 
 \li <b>Full</b>: You have to enter all necessary routes manually
-\li <b>RuleBased</b>: Rule-Based routing data; same as Full except you
-    can use regexp to express route. As SimGrid has to evaluate the
-    regexp, it's slower than Full, but requires less memory. Regexp
-    syntax is similar as <a href="http://www.pcre.org">pcre</a> ones,
-    as this is the lib SimGrid use to do so.
-
 
 Full example :
 \verbatim
@@ -787,54 +797,6 @@ Full example :
  </AS>
 \endverbatim
 
-RuleBased example :
-\verbatim
-<AS id="AS_orsay" routing="RuleBased" >
-                       <cluster id="AS_gdx" prefix="gdx-" suffix=".orsay.grid5000.fr"
-                               radical="1-310" power="4.7153E9" bw="1.25E8" lat="1.0E-4"
-                               bb_bw="1.25E9" bb_lat="1.0E-4"></cluster>
-                       <link   id="link_gdx" bandwidth="1.25E9" latency="1.0E-4"/>
-
-                       <cluster id="AS_netgdx" prefix="netgdx-" suffix=".orsay.grid5000.fr"
-                               radical="1-30" power="4.7144E9" bw="1.25E8" lat="1.0E-4"
-                               bb_bw="1.25E9" bb_lat="1.0E-4"></cluster>
-                       <link   id="link_netgdx" bandwidth="1.25E9" latency="1.0E-4"/>
-
-                       <AS id="gw_AS_orsay" routing="Full">
-                               <router id="gw_orsay"/>
-                       </AS>
-                       <link   id="link_gw_orsay" bandwidth="1.25E9" latency="1.0E-4"/>
-
-                       <ASroute src="^AS_(.*)$" dst="^AS_(.*)$"
-                               gw_src="$1src-AS_$1src_router.orsay.grid5000.fr"
-                               gw_dst="$1dst-AS_$1dst_router.orsay.grid5000.fr"
-                               symmetrical="YES">
-                                       <link_ctn id="link_$1src"/>
-                                       <link_ctn id="link_$1dst"/>
-                       </ASroute>
-
-                       <ASroute src="^AS_(.*)$" dst="^gw_AS_(.*)$"
-                               gw_src="$1src-AS_$1src_router.orsay.grid5000.fr"
-                               gw_dst="gw_$1dst"
-                               symmetrical="NO">
-                                       <link_ctn id="link_$1src"/>
-                       </ASroute>
-
-                       <ASroute src="^gw_AS_(.*)$" dst="^AS_(.*)$"
-                               gw_src="gw_$1src"
-                               gw_dst="$1dst-AS_$1dst_router.orsay.grid5000.fr"
-                               symmetrical="NO">
-                                       <link_ctn id="link_$1dst"/>
-                       </ASroute>
-
-               </AS>
-\endverbatim
-
-The example upper contains $1src and $1dst. It's simply a reference to
-string matching regexp enclosed by "()" within respectively <b>src</b>
-and <b>dst</b> attributes. If they were more than 1 "()", then you
-could refer to it as $2src, $3src and so on.
-
 \subsubsection pf_rm_sf Simple/fast models
 
 \li <b>none</b>: No routing (Unless you know what you are doing, avoid
@@ -914,7 +876,7 @@ a <b>link_ctn</b> is the tag that is used in order to reference a
 \subsubsection pf_asro ASroute
 
 ASroute tag purpose is to let people write manually their routes
-between AS. It's usefull when you're in Full or Rule-based model.
+between AS. It's useful when you're in Full model.
 
 <b>ASroute</b> attributes :
 \li <b>src (mandatory)</b>: the source AS id.
@@ -929,15 +891,6 @@ between AS. It's usefull when you're in Full or Rule-based model.
     will be the opposite of the one defined. Can be either YES or NO,
     default is YES.
 
-<b>Example of ASroute with RuleBased</b>
-\verbatim
-<ASroute src="^gw_AS_(.*)$" dst="^AS_(.*)$"
-                               gw_src="gw_$1src"
-                               gw_dst="$1dst-AS_$1dst_router.orsay.grid5000.fr"
-                               symmetrical="NO">
-                                       <link_ctn id="link_$1dst"/>
-                       </ASroute>
-\endverbatim
 <b>Example of ASroute with Full</b>
 \verbatim
 <AS  id="AS0"  routing="Full">
@@ -968,8 +921,8 @@ between AS. It's usefull when you're in Full or Rule-based model.
 The principle is the same as ASroute : <b>route</b> contains list of
 links that are in the path between src and dst, except that it is for
 routes between a src that can be either <b>host</b> or \b router and a
-dst that can be either <b>host</b> or \b router. Useful for Full and
-RuleBased, as well as for the shortest-paths based models, where you
+dst that can be either <b>host</b> or \b router. Useful for Full 
+as well as for the shortest-paths based models, where you
 have to give topological information.
 
 
@@ -1398,9 +1351,6 @@ characteristics (lookup : time to resolve a route):
     Defines that there is no routes, so if you try to determine a
     route without constant network within this AS, SimGrid will raise
     an exception.
-\li <b>RuleBased</b>: Rule-Based routing data (fast initialisation,
-    relatively slow lookup, moderate memory requirements, fully
-    expressive): uses regexp to define routes;
 \li <b>Vivaldi</b>: Vivaldi routing, so when you want to use coordinates
 \li <b>Cluster</b>: Cluster routing, specific to cluster tag, should
     not be used.