diff --git a/juno_samples/matmul/src/cpu.sch b/juno_samples/matmul/src/cpu.sch deleted file mode 100644 index 69f1811d08a5691de6dc10fa86f0720e416fb85a..0000000000000000000000000000000000000000 --- a/juno_samples/matmul/src/cpu.sch +++ /dev/null @@ -1,61 +0,0 @@ -macro optimize!(X) { - gvn(X); - phi-elim(X); - dce(X); - ip-sroa(X); - sroa(X); - dce(X); - gvn(X); - phi-elim(X); - dce(X); -} - -macro codegen-prep!(X) { - optimize!(X); - gcm(X); - float-collections(X); - dce(X); - gcm(X); -} - -macro forkify!(X) { - fixpoint { - forkify(X); - fork-guard-elim(X); - } -} - -macro fork-tile { - fork-tile[n, 0, false, true](X); -} - -macro parallelize!(X) { - parallel-fork(X); - parallel-reduce(X); -} - -macro unforkify!(X) { - fork-split(X); - unforkify(X); -} - -optimize!(*); -forkify!(*); -associative(matmul@outer); - -// Parallelize by computing output array as 16 chunks -let par = matmul@outer \ matmul@inner; -fork-tile; -let (outer, inner, _) = fork-reshape[[1, 3], [0], [2]](par); -parallelize!(outer \ inner); - -let body = outline(inner); -cpu(body); - -// Tile for cache, assuming 64B cache lines -fork-tile; -let (outer, inner) = fork-reshape[[0, 2, 4, 1, 3], [5]](body); - -reduce-slf(inner); -unforkify!(body); -codegen-prep!(*); diff --git a/juno_samples/matmul/src/gpu.sch b/juno_samples/matmul/src/gpu.sch deleted file mode 100644 index 76808149e7b99dce97e43f0e936536d3d13b7417..0000000000000000000000000000000000000000 --- a/juno_samples/matmul/src/gpu.sch +++ /dev/null @@ -1,26 +0,0 @@ -phi-elim(*); - -forkify(*); -fork-guard-elim(*); -dce(*); - -fixpoint { - reduce-slf(*); - slf(*); - infer-schedules(*); -} -fork-coalesce(*); -infer-schedules(*); -dce(*); -rewrite(*); -fixpoint { - simplify-cfg(*); - dce(*); -} - -ip-sroa(*); -sroa(*); -dce(*); - -float-collections(*); -gcm(*);