Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid
[simgrid.git] / examples / simdag / daxload / sd_daxload.tesh
1 #! ./tesh
2 p Test the DAX loader on a small DAX instance
3
4 $ $SG_TEST_EXENV ${bindir:=.}/daxload/sd_daxload --log=no_loc ${srcdir:=.}/../platforms/two_clusters.xml ${srcdir:=.}/daxload/smalldax.xml
5 > [0.000000] [xbt_cfg/INFO] Switching to the L07 model to handle parallel tasks.
6 > [0.000000] [sd_daxparse/WARNING] Ignore file o1 size redefinition from 1000000 to 304
7 > [0.000000] [sd_daxparse/WARNING] Ignore file o2 size redefinition from 1000000 to 304
8 > [0.000000] [test/INFO] ------------------- Display all tasks of the loaded DAG ---------------------------
9 > [0.000000] [sd_task/INFO] Displaying task root
10 > [0.000000] [sd_task/INFO]   - state: schedulable not runnable
11 > [0.000000] [sd_task/INFO]   - kind: sequential computation
12 > [0.000000] [sd_task/INFO]   - amount: 0
13 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 0
14 > [0.000000] [sd_task/INFO]   - post-dependencies:
15 > [0.000000] [sd_task/INFO]     root_i1_1@task1
16 > [0.000000] [sd_task/INFO]     root_i2_2@task2
17 > [0.000000] [sd_task/INFO] Displaying task 1@task1
18 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
19 > [0.000000] [sd_task/INFO]   - kind: sequential computation
20 > [0.000000] [sd_task/INFO]   - amount: 42000000000
21 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
22 > [0.000000] [sd_task/INFO]   - pre-dependencies:
23 > [0.000000] [sd_task/INFO]     root_i1_1@task1
24 > [0.000000] [sd_task/INFO]   - post-dependencies:
25 > [0.000000] [sd_task/INFO]     3@task1
26 > [0.000000] [sd_task/INFO]     1@task1_o1_3@task1
27 > [0.000000] [sd_task/INFO] Displaying task 2@task2
28 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
29 > [0.000000] [sd_task/INFO]   - kind: sequential computation
30 > [0.000000] [sd_task/INFO]   - amount: 42000000000
31 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
32 > [0.000000] [sd_task/INFO]   - pre-dependencies:
33 > [0.000000] [sd_task/INFO]     root_i2_2@task2
34 > [0.000000] [sd_task/INFO]   - post-dependencies:
35 > [0.000000] [sd_task/INFO]     3@task1
36 > [0.000000] [sd_task/INFO]     2@task2_o2_3@task1
37 > [0.000000] [sd_task/INFO] Displaying task 3@task1
38 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
39 > [0.000000] [sd_task/INFO]   - kind: sequential computation
40 > [0.000000] [sd_task/INFO]   - amount: 42000000000
41 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 4
42 > [0.000000] [sd_task/INFO]   - pre-dependencies:
43 > [0.000000] [sd_task/INFO]     2@task2
44 > [0.000000] [sd_task/INFO]     1@task1
45 > [0.000000] [sd_task/INFO]     2@task2_o2_3@task1
46 > [0.000000] [sd_task/INFO]     1@task1_o1_3@task1
47 > [0.000000] [sd_task/INFO]   - post-dependencies:
48 > [0.000000] [sd_task/INFO]     3@task1_o3_end
49 > [0.000000] [sd_task/INFO] Displaying task root_i2_2@task2
50 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
51 > [0.000000] [sd_task/INFO]   - kind: end-to-end communication
52 > [0.000000] [sd_task/INFO]   - amount: 1000000
53 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
54 > [0.000000] [sd_task/INFO]   - pre-dependencies:
55 > [0.000000] [sd_task/INFO]     root
56 > [0.000000] [sd_task/INFO]   - post-dependencies:
57 > [0.000000] [sd_task/INFO]     2@task2
58 > [0.000000] [sd_task/INFO] Displaying task 1@task1_o1_3@task1
59 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
60 > [0.000000] [sd_task/INFO]   - kind: end-to-end communication
61 > [0.000000] [sd_task/INFO]   - amount: 1000000
62 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
63 > [0.000000] [sd_task/INFO]   - pre-dependencies:
64 > [0.000000] [sd_task/INFO]     1@task1
65 > [0.000000] [sd_task/INFO]   - post-dependencies:
66 > [0.000000] [sd_task/INFO]     3@task1
67 > [0.000000] [sd_task/INFO] Displaying task 2@task2_o2_3@task1
68 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
69 > [0.000000] [sd_task/INFO]   - kind: end-to-end communication
70 > [0.000000] [sd_task/INFO]   - amount: 1000000
71 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
72 > [0.000000] [sd_task/INFO]   - pre-dependencies:
73 > [0.000000] [sd_task/INFO]     2@task2
74 > [0.000000] [sd_task/INFO]   - post-dependencies:
75 > [0.000000] [sd_task/INFO]     3@task1
76 > [0.000000] [sd_task/INFO] Displaying task 3@task1_o3_end
77 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
78 > [0.000000] [sd_task/INFO]   - kind: end-to-end communication
79 > [0.000000] [sd_task/INFO]   - amount: 4167312
80 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
81 > [0.000000] [sd_task/INFO]   - pre-dependencies:
82 > [0.000000] [sd_task/INFO]     3@task1
83 > [0.000000] [sd_task/INFO]   - post-dependencies:
84 > [0.000000] [sd_task/INFO]     end
85 > [0.000000] [sd_task/INFO] Displaying task root_i1_1@task1
86 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
87 > [0.000000] [sd_task/INFO]   - kind: end-to-end communication
88 > [0.000000] [sd_task/INFO]   - amount: 1000000
89 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
90 > [0.000000] [sd_task/INFO]   - pre-dependencies:
91 > [0.000000] [sd_task/INFO]     root
92 > [0.000000] [sd_task/INFO]   - post-dependencies:
93 > [0.000000] [sd_task/INFO]     1@task1
94 > [0.000000] [sd_task/INFO] Displaying task end
95 > [0.000000] [sd_task/INFO]   - state: not scheduled not runnable
96 > [0.000000] [sd_task/INFO]   - kind: sequential computation
97 > [0.000000] [sd_task/INFO]   - amount: 0
98 > [0.000000] [sd_task/INFO]   - Dependencies to satisfy: 1
99 > [0.000000] [sd_task/INFO]   - pre-dependencies:
100 > [0.000000] [sd_task/INFO]     3@task1_o3_end
101 > [0.000000] [test/INFO] ------------------- Schedule tasks ---------------------------
102 > [0.000000] [test/INFO] ------------------- Run the schedule ---------------------------
103 > [84.068138] [test/INFO] ------------------- Produce the trace file---------------------------
104 > [84.068138] [test/INFO] Producing the trace of the run into smalldax.trace
105
106 $ cat ${srcdir:=.}/daxload/smalldax.trace
107 > [0.000000] node-0.acme.org compute 0.000000 # root
108 > [0.015600] node-1.acme.org compute 42000000000.000000 # 1@task1
109 > [0.016600] node-10.acme.org compute 42000000000.000000 # 2@task2
110 > [42.033200] node-11.acme.org compute 42000000000.000000 # 3@task1
111 > [0.000000] node-0.acme.org send node-10.acme.org 1000000.000000 # root_i2_2@task2
112 > [0.016600] node-10.acme.org recv node-0.acme.org 1000000.000000 # root_i2_2@task2
113 > [42.015600] node-1.acme.org send node-11.acme.org 1000000.000000 # 1@task1_o1_3@task1
114 > [42.033200] node-11.acme.org recv node-1.acme.org 1000000.000000 # 1@task1_o1_3@task1
115 > [42.016600] node-10.acme.org send node-11.acme.org 1000000.000000 # 2@task2_o2_3@task1
116 > [42.033200] node-11.acme.org recv node-10.acme.org 1000000.000000 # 2@task2_o2_3@task1
117 > [84.033200] node-11.acme.org send node-0.acme.org 4167312.000000 # 3@task1_o3_end
118 > [84.068138] node-0.acme.org recv node-11.acme.org 4167312.000000 # 3@task1_o3_end
119 > [0.000000] node-0.acme.org send node-1.acme.org 1000000.000000 # root_i1_1@task1
120 > [0.015600] node-1.acme.org recv node-0.acme.org 1000000.000000 # root_i1_1@task1
121 > [84.068138] node-0.acme.org compute 0.000000 # end
122
123 $ cmake -E remove -f ${srcdir:=.}/dax.dot ${srcdir:=.}/daxload/smalldax.trace
124
125 p Test the DAX loader with a DAX comprising a cycle.
126
127 ! expect return 255
128 $ $SG_TEST_EXENV ${bindir:=.}/daxload/sd_daxload --log=no_loc ${srcdir:=.}/../platforms/two_clusters.xml ${srcdir:=.}/daxload/simple_dax_with_cycle.xml
129 > [0.000000] [xbt_cfg/INFO] Switching to the L07 model to handle parallel tasks.
130 > [0.000000] [sd_daxparse/WARNING] the task root is not marked
131 > [0.000000] [sd_daxparse/WARNING] the task 1@task1 is in a cycle
132 > [0.000000] [sd_daxparse/WARNING] the task 2@task2 is in a cycle
133 > [0.000000] [sd_daxparse/WARNING] the task 3@task3 is in a cycle
134 > [0.000000] [sd_daxparse/ERROR] The DAX described in simple_dax_with_cycle.xml is not a DAG. It contains a cycle.
135 > [0.000000] [test/ERROR] A problem occurred during DAX parsing (cycle or syntax). Do not continue this test