Skip to content
Snippets Groups Projects
Commit 0303d9e8 authored by Russel Arbore's avatar Russel Arbore
Browse files

Need LTE in loop-bound-canon for backprop

parent 8b03a25a
No related branches found
No related tags found
1 merge request!202Round 1 of rodinia schedule optimization
Pipeline #201892 passed
......@@ -4,7 +4,7 @@ fn squash(x: f32) -> f32 {
}
fn layer_forward<n, m: usize>(vals: f32[n + 1], weights: f32[n + 1, m + 1]) -> f32[m + 1] {
let result : f32[m + 1];
@res let result : f32[m + 1];
result[0] = 1.0;
for j in 1..=m {
......
gvn(*);
dce(*);
phi-elim(*);
dce(*);
crc(*);
dce(*);
slf(*);
dce(*);
macro simpl!(X) {
ccp(X);
simplify-cfg(X);
lift-dc-math(X);
gvn(X);
phi-elim(X);
dce(X);
infer-schedules(X);
}
let auto = auto-outline(backprop);
cpu(auto.backprop);
inline(auto.backprop);
inline(auto.backprop);
simpl!(*);
inline(layer_forward);
delete-uncalled(*);
sroa[true](*);
dce(*);
float-collections(*);
reuse-products(*);
dce(*);
no-memset(layer_forward@res);
lift-dc-math(*);
loop-bound-canon(*);
fixpoint {
forkify(*);
fork-guard-elim(*);
fork-coalesce(*);
}
gcm(*);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment