digraph "processes" {

optimizer;
symmetrizer;
parallelizer;
comparator;
cluster_gen [label="cluster generator"];

{
rank="same";
edac1 [label="EDAC 1"];
edac2 [label="EDAC 2"];
edacN [label="EDAC N"];
edac2 -> edacN [style="dotted", dir="none"];
}

optimizer -> symmetrizer;
symmetrizer -> scanner [label="N"];
scanner -> parallelizer [label="N x M"];
parallelizer -> cluster;
parallelizer -> edac1;
parallelizer -> edac2;
parallelizer -> edacN;

optimizer -> comparator;

}
