-
Notifications
You must be signed in to change notification settings - Fork 0
/
mvt_taskloop.c.012t.ompexp.dot
305 lines (275 loc) · 11.6 KB
/
mvt_taskloop.c.012t.ompexp.dot
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
digraph "mvt_taskloop.c.012t.ompexp" {
overlap=false;
subgraph "cluster_init_array" {
style="dashed";
color="black";
label="init_array ()";
subgraph cluster_2_1 {
style="filled";
color="darkgreen";
fillcolor="grey88";
label="loop 1";
labeljust=l;
penwidth=2;
subgraph cluster_2_2 {
style="filled";
color="darkgreen";
fillcolor="grey77";
label="loop 2";
labeljust=l;
penwidth=2;
fn_2_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|if\ (j\ \<\ n)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 6\>;\l\
}"];
fn_2_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|D.4874\ =\ (long\ unsigned\ int)\ i;\l\
|D.4875\ =\ D.4874\ *\ 64000;\l\
|D.4876\ =\ A\ +\ D.4875;\l\
|D.4877\ =\ (double)\ i;\l\
|D.4878\ =\ (double)\ j;\l\
|D.4879\ =\ D.4877\ *\ D.4878;\l\
|D.4880\ =\ D.4879\ /\ 8.0e+3;\l\
|*D.4876[j]\ =\ D.4880;\l\
|j\ =\ j\ +\ 1;\l\
}"];
}
fn_2_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|if\ (i\ \<\ n)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_2_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.4847\ =\ (long\ unsigned\ int)\ i;\l\
|D.4848\ =\ D.4847\ *\ 8;\l\
|D.4849\ =\ x1\ +\ D.4848;\l\
|D.4850\ =\ (double)\ i;\l\
|D.4851\ =\ (double)\ n;\l\
|D.4852\ =\ D.4850\ /\ D.4851;\l\
|*D.4849\ =\ D.4852;\l\
|D.4853\ =\ (long\ unsigned\ int)\ i;\l\
|D.4854\ =\ D.4853\ *\ 8;\l\
|D.4855\ =\ x2\ +\ D.4854;\l\
|D.4856\ =\ (double)\ i;\l\
|D.4857\ =\ D.4856\ +\ 1.0e+0;\l\
|D.4858\ =\ (double)\ n;\l\
|D.4859\ =\ D.4857\ /\ D.4858;\l\
|*D.4855\ =\ D.4859;\l\
|D.4860\ =\ (long\ unsigned\ int)\ i;\l\
|D.4861\ =\ D.4860\ *\ 8;\l\
|D.4862\ =\ y_1\ +\ D.4861;\l\
|D.4863\ =\ (double)\ i;\l\
|D.4864\ =\ D.4863\ +\ 3.0e+0;\l\
|D.4865\ =\ (double)\ n;\l\
|D.4866\ =\ D.4864\ /\ D.4865;\l\
|*D.4862\ =\ D.4866;\l\
|D.4867\ =\ (long\ unsigned\ int)\ i;\l\
|D.4868\ =\ D.4867\ *\ 8;\l\
|D.4869\ =\ y_2\ +\ D.4868;\l\
|D.4870\ =\ (double)\ i;\l\
|D.4871\ =\ D.4870\ +\ 4.0e+0;\l\
|D.4872\ =\ (double)\ n;\l\
|D.4873\ =\ D.4871\ /\ D.4872;\l\
|*D.4869\ =\ D.4873;\l\
|j\ =\ 0;\l\
goto\ \<bb\ 5\>;\l\
}"];
fn_2_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|i\ =\ i\ +\ 1;\l\
}"];
}
fn_2_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_2_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_2_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|i\ =\ 0;\l\
goto\ \<bb\ 7\>;\l\
}"];
fn_2_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 8\>:\l\
|return;\l\
}"];
fn_2_basic_block_0:s -> fn_2_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_2:s -> fn_2_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_3:s -> fn_2_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_2_basic_block_4:s -> fn_2_basic_block_5:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_2_basic_block_5:s -> fn_2_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_5:s -> fn_2_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_6:s -> fn_2_basic_block_7:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_2_basic_block_7:s -> fn_2_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_7:s -> fn_2_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_8:s -> fn_2_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_2_basic_block_0:s -> fn_2_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_print_array" {
style="dashed";
color="black";
label="print_array ()";
subgraph cluster_3_1 {
style="filled";
color="darkgreen";
fillcolor="grey88";
label="loop 1";
labeljust=l;
penwidth=2;
fn_3_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|if\ (i\ \<\ n)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 7\>;\l\
}"];
fn_3_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.4881\ =\ (long\ unsigned\ int)\ i;\l\
|D.4882\ =\ D.4881\ *\ 8;\l\
|D.4883\ =\ x1\ +\ D.4882;\l\
|D.4884\ =\ *D.4883;\l\
|stderr.0\ =\ stderr;\l\
|fprintf\ (stderr.0,\ \"%0.2lf\ \",\ D.4884);\l\
|D.4886\ =\ (long\ unsigned\ int)\ i;\l\
|D.4887\ =\ D.4886\ *\ 8;\l\
|D.4888\ =\ x2\ +\ D.4887;\l\
|D.4889\ =\ *D.4888;\l\
|stderr.1\ =\ stderr;\l\
|fprintf\ (stderr.1,\ \"%0.2lf\ \",\ D.4889);\l\
|D.4891\ =\ i\ %\ 20;\l\
|if\ (D.4891\ ==\ 0)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_3_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|stderr.2\ =\ stderr;\l\
|__builtin_fputc\ (10,\ stderr.2);\l\
}"];
fn_3_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|i\ =\ i\ +\ 1;\l\
}"];
}
fn_3_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_3_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_3_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|i\ =\ 0;\l\
goto\ \<bb\ 6\>;\l\
}"];
fn_3_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|return;\l\
}"];
fn_3_basic_block_0:s -> fn_3_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_2:s -> fn_3_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_3:s -> fn_3_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_3:s -> fn_3_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_4:s -> fn_3_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_3_basic_block_5:s -> fn_3_basic_block_6:n [style="dotted,bold",color=blue,weight=10,constraint=false, label="[0%]"];
fn_3_basic_block_6:s -> fn_3_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_6:s -> fn_3_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_7:s -> fn_3_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_3_basic_block_0:s -> fn_3_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_kernel_mvt" {
style="dashed";
color="black";
label="kernel_mvt ()";
fn_4_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_4_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_4_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|threads.3\ =\ threads;\l\
|.omp_data_o.19.A\ =\ A;\l\
|.omp_data_o.19.y_2\ =\ y_2;\l\
|.omp_data_o.19.y_1\ =\ y_1;\l\
|.omp_data_o.19.x2\ =\ x2;\l\
|.omp_data_o.19.x1\ =\ x1;\l\
|.omp_data_o.19.n\ =\ n;\l\
|threads.20\ =\ (unsigned\ int)\ threads.3;\l\
|__builtin_GOMP_parallel\ (kernel_mvt._omp_fn.0,\ &.omp_data_o.19,\ threads.20,\ 0);\l\
|.omp_data_o.19\ =\ \{CLOBBER\};\l\
|return;\l\
}"];
fn_4_basic_block_0:s -> fn_4_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_4_basic_block_2:s -> fn_4_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_4_basic_block_0:s -> fn_4_basic_block_1:n [style="invis",constraint=true];
}
subgraph "cluster_main" {
style="dashed";
color="black";
label="main ()";
fn_5_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
fn_5_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
fn_5_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 2\>:\l\
|if\ (argc\ \>\ 1)\l\
\ \ goto\ \<bb\ 3\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_5_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 3\>:\l\
|D.5116\ =\ argv\ +\ 8;\l\
|D.5117\ =\ *D.5116;\l\
|valor\ =\ atoi\ (D.5117);\l\
|threads\ =\ valor;\l\
|threads.21\ =\ threads;\l\
|if\ (threads.21\ \>\ 1)\l\
\ \ goto\ \<bb\ 4\>;\l\
else\l\
\ \ goto\ \<bb\ 5\>;\l\
}"];
fn_5_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 4\>:\l\
|threads.22\ =\ threads;\l\
|D.5122\ =\ threads.22\ /\ 2;\l\
|tasks\ =\ D.5122;\l\
}"];
fn_5_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 5\>:\l\
|n\ =\ 8000;\l\
|A\ =\ polybench_alloc_data\ (64000000,\ 8);\l\
|x1\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|x2\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|y_1\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|y_2\ =\ polybench_alloc_data\ (8000,\ 8);\l\
|init_array\ (n,\ x1,\ x2,\ y_1,\ y_2,\ A);\l\
|polybench_timer_start\ ();\l\
|kernel_mvt\ (n,\ x1,\ x2,\ y_1,\ y_2,\ A);\l\
|polybench_timer_stop\ ();\l\
|polybench_timer_print\ ();\l\
|if\ (argc\ \>\ 42)\l\
\ \ goto\ \<bb\ 6\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_5_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 6\>:\l\
|D.5125\ =\ *argv;\l\
|D.5126\ =\ MEM[(const\ unsigned\ char\ *\ \{ref-all\})D.5125];\l\
|if\ (D.5126\ ==\ 0)\l\
\ \ goto\ \<bb\ 7\>;\l\
else\l\
\ \ goto\ \<bb\ 8\>;\l\
}"];
fn_5_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 7\>:\l\
|print_array\ (n,\ x1,\ x2);\l\
}"];
fn_5_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 8\>:\l\
|free\ (A);\l\
|free\ (x1);\l\
|free\ (x2);\l\
|free\ (y_1);\l\
|free\ (y_2);\l\
|D.5129\ =\ 0;\l\
}"];
fn_5_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{ FREQ:0 |\<bb\ 9\>:\l\
|\<L8\>:\l\
|return\ D.5129;\l\
}"];
fn_5_basic_block_0:s -> fn_5_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_2:s -> fn_5_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_2:s -> fn_5_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_3:s -> fn_5_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_3:s -> fn_5_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_4:s -> fn_5_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_5:s -> fn_5_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_5:s -> fn_5_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_6:s -> fn_5_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_6:s -> fn_5_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_7:s -> fn_5_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_8:s -> fn_5_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true, label="[0%]"];
fn_5_basic_block_9:s -> fn_5_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true, label="[0%]"];
fn_5_basic_block_0:s -> fn_5_basic_block_1:n [style="invis",constraint=true];
}
}