digraph "Module" {
margin=0;
subgraph matmul {
label="matmul<3>"
style=invis
cluster=true
ranksep=1;
nodesep=1;
start_0_0 [xlabel=0, label=<Start<BR /><FONT POINT-SIZE="8">Control</FONT>>, color=darkred];
parameter_0_1 [xlabel=1, label=<Parameter (#0)<BR /><FONT POINT-SIZE="8">Array(Integer32, #0, #1)</FONT>>, color=darkblue];
parameter_0_2 [xlabel=2, label=<Parameter (#1)<BR /><FONT POINT-SIZE="8">Array(Integer32, #1, #2)</FONT>>, color=darkblue];
fork_0_3 [xlabel=3, label=<Fork (#0, #2)<BR /><FONT POINT-SIZE="8">Control</FONT><BR /><FONT POINT-SIZE="8">ParallelFork</FONT>>, color=darkred];
thread_id_0_4 [xlabel=4, label=<ThreadID (0)<BR /><FONT POINT-SIZE="8">UnsignedInteger64</FONT>>, color=darkblue];
thread_id_0_5 [xlabel=5, label=<ThreadID (1)<BR /><FONT POINT-SIZE="8">UnsignedInteger64</FONT>>, color=darkblue];
fork_0_6 [xlabel=6, label=<Fork (#1)<BR /><FONT POINT-SIZE="8">Control</FONT><BR /><FONT POINT-SIZE="8">Vectorizable</FONT>>, color=darkred];
thread_id_0_7 [xlabel=7, label=<ThreadID (0)<BR /><FONT POINT-SIZE="8">UnsignedInteger64</FONT>>, color=darkblue];
join_0_8 [xlabel=8, label=<Join<BR /><FONT POINT-SIZE="8">Control</FONT>>, color=darkred];
join_0_9 [xlabel=9, label=<Join<BR /><FONT POINT-SIZE="8">Control</FONT>>, color=darkred];
reduce_0_10 [xlabel=10, label=<Reduce<BR /><FONT POINT-SIZE="8">Array(Integer32, #0, #2)</FONT><BR /><FONT POINT-SIZE="8">ParallelReduce</FONT>>, color=darkblue];
return_0_11 [xlabel=11, label=<Return>, color=darkred];
read_0_12 [xlabel=12, label=<Read<BR /><FONT POINT-SIZE="8">Integer32</FONT>>, color=darkblue];
read_0_13 [xlabel=13, label=<Read<BR /><FONT POINT-SIZE="8">Integer32</FONT>>, color=darkblue];
mul_0_14 [xlabel=14, label=<Mul<BR /><FONT POINT-SIZE="8">Integer32</FONT>>, color=darkblue];
reduce_0_15 [xlabel=15, label=<Reduce<BR /><FONT POINT-SIZE="8">Integer32</FONT><BR /><FONT POINT-SIZE="8">TightAssociative</FONT>>, color=darkblue];
add_0_16 [xlabel=16, label=<Add<BR /><FONT POINT-SIZE="8">Integer32</FONT>>, color=darkblue];
write_0_17 [xlabel=17, label=<Write<BR /><FONT POINT-SIZE="8">Array(Integer32, #0, #2)</FONT>>, color=darkblue];
constant_0_18 [xlabel=18, label=<Constant ([])<BR /><FONT POINT-SIZE="8">Array(Integer32, #0, #2)</FONT><BR /><FONT POINT-SIZE="8">NoResetConstant</FONT>>, color=darkblue];
constant_0_19 [xlabel=19, label=<Constant (0)<BR /><FONT POINT-SIZE="8">Integer32</FONT>>, color=darkblue];
start_0_0 -> fork_0_3 [color=black, style="dashed"];
fork_0_3 -> thread_id_0_4 [color=black, style="dotted"];
fork_0_3 -> thread_id_0_5 [color=black, style="dotted"];
fork_0_3 -> fork_0_6 [color=black, style="dashed"];
fork_0_6 -> thread_id_0_7 [color=black, style="dotted"];
fork_0_6 -> join_0_8 [color=black, style="dashed"];
join_0_8 -> join_0_9 [color=black, style="dashed"];
join_0_9 -> reduce_0_10 [color=black, style="dotted"];
constant_0_18 -> reduce_0_10 [color=black, style=""];
write_0_17 -> reduce_0_10 [color=black, style=""];
join_0_9 -> return_0_11 [color=black, style="dashed"];
reduce_0_10 -> return_0_11 [color=black, style="dotted"];
parameter_0_1 -> read_0_12 [color=black, style=""];
thread_id_0_4 -> read_0_12 [color=black, style=""];
thread_id_0_7 -> read_0_12 [color=black, style=""];
parameter_0_2 -> read_0_13 [color=black, style=""];
thread_id_0_7 -> read_0_13 [color=black, style=""];
thread_id_0_5 -> read_0_13 [color=black, style=""];
read_0_12 -> mul_0_14 [color=black, style=""];
read_0_13 -> mul_0_14 [color=black, style=""];
join_0_8 -> reduce_0_15 [color=black, style="dotted"];
constant_0_19 -> reduce_0_15 [color=black, style=""];
add_0_16 -> reduce_0_15 [color=black, style=""];
mul_0_14 -> add_0_16 [color=black, style=""];
reduce_0_15 -> add_0_16 [color=black, style=""];
reduce_0_10 -> write_0_17 [color=black, style=""];
reduce_0_15 -> write_0_17 [color=black, style=""];
thread_id_0_4 -> write_0_17 [color=black, style=""];
thread_id_0_5 -> write_0_17 [color=black, style=""];
parameter_0_1 -> thread_id_0_4 [style=invis];
parameter_0_2 -> thread_id_0_5 [style=invis];
}
}