Skip to content
Snippets Groups Projects

Sequential schedules

Merged rarbore2 requested to merge seq_schedules into main
@@ -40,21 +40,24 @@ simpl!(collect);
parallel-fork(traverse, collect);
parallel-reduce(traverse, collect);
fork-tile[32, 0, false, true](traverse, collect);
let (outer, inner) = fork-reshape[[1], [0]](traverse);
let traverse_body = outline(inner);
let (outer, inner) = fork-reshape[[1], [0]](collect);
let collect_body = outline(inner);
fork-tile[32, 0, false, true](init);
let (outer, inner) = fork-reshape[[1], [0]](init);
let init_body = outline(inner);
inline(bfs@cost_init, bfs@loop1, bfs@loop2);
if !feature("seq") {
fork-tile[32, 0, false, true](traverse, collect);
let (outer, inner) = fork-reshape[[1], [0]](traverse);
traverse = outline(inner);
let (outer, inner) = fork-reshape[[1], [0]](collect);
collect = outline(inner);
fork-tile[32, 0, false, true](init);
let (outer, inner) = fork-reshape[[1], [0]](init);
let init_body = outline(inner);
inline(bfs@cost_init, bfs@loop1, bfs@loop2);
init = init_body;
}
delete-uncalled(*);
const-inline(*);
simpl!(*);
unforkify(init_body, traverse_body, collect_body);
unforkify(init, traverse, collect);
simpl!(*);
gcm(*);
gcm(*);
\ No newline at end of file
Loading