
Time bar (total: 835.0ms)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0.0% | 0.0% | 99.9% | 0.1% | 0.0% | 0.0% | 0.0% | 0 |
| 100.0% | 99.9% | 0.0% | 0.1% | 0.0% | 0.0% | 0.0% | 1 |
Compiled 9 to 7 computations (22.2% saved)
| 260.0ms | 8 256× | 0 | valid |
Mul: 4.0ms (48.2% of total, 0.0 MiB)Add: 4.0ms (48.2% of total, 0.0 MiB)Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 44 |
| 1 | 79 | 43 |
| 2 | 237 | 42 |
| 3 | 450 | 42 |
| 4 | 1083 | 42 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (+.f64 (+.f64 (*.f64 x x) y) y) |
(abs x)
Compiled 2 to 10 computations (-400.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 44 | 156 |
| 1× | iter-limit |
| Inputs |
|---|
%1 = (*.f64 x x) %3 = (+.f64 %1 y) x %1 y %3 (+.f64 %3 y) |
| Outputs |
|---|
%4 = (* x x) %6 = (pow.f64 x #s(literal 2 binary64)) %9 = (+ %4 y) %13 = (+ %9 y) %19 = (/.f64 y %6) %27 = (/.f64 %6 y) %35 = (*.f64 #s(literal -1 binary64) %27) (approx x #s(literal 0 binary64)) (approx x x) (approx %4 %6) (approx %9 y) (approx %9 (+.f64 y %6)) (approx %13 (*.f64 #s(literal 2 binary64) y)) (approx %13 (fma.f64 #s(literal 2 binary64) y %6)) (approx %9 (*.f64 %6 (+.f64 #s(literal 1 binary64) %19))) (approx %13 (*.f64 %6 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %19)))) (approx %9 (*.f64 y (+.f64 #s(literal 1 binary64) %27))) (approx %13 (*.f64 y (+.f64 #s(literal 2 binary64) %27))) (approx %9 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %35 #s(literal 1 binary64))))) (approx %13 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %35 #s(literal 2 binary64))))) |
6 calls:
| Time | Variable | Point |
|---|---|---|
| 2.0ms | x | inf |
| 2.0ms | y | -inf |
| 2.0ms | x | -inf |
| 1.0ms | y | inf |
| 1.0ms | x | 0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 17 |
| 0 | 8 | 17 |
| 1 | 27 | 17 |
| 2 | 81 | 17 |
| 3 | 246 | 17 |
| 4 | 607 | 17 |
| 5 | 3821 | 17 |
| 0 | 4040 | 17 |
| 0 | 4147 | 15 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%1 = (*.f64 x x) %3 = (+.f64 %1 y) x %1 y %3 (+.f64 %3 y) |
| Outputs |
|---|
%1 = (fabs.f64 x) %2 = (sqrt.f64 %1) %3 = (*.f64 %2 %1) %4 = (sqrt.f64 %2) %5 = (*.f64 %3 %4) %8 = (neg.f64 %2) %9 = (*.f64 %8 %1) %12 = (*.f64 %4 %3) %15 = (neg.f64 %1) %18 = (neg.f64 x) %21 = (*.f64 x x) %27 = (*.f64 %21 %21) %50 = (*.f64 %18 x) %60 = (fma.f64 x x y) %63 = (+.f64 y y) %68 = (neg.f64 %60) %81 = (neg.f64 y) %85 = (+.f64 %60 y) %94 = (*.f64 #s(literal 4 binary64) y) %98 = (*.f64 #s(literal 1/2 binary64) y) %149 = (*.f64 #s(literal -2 binary64) y) x (*.f64 %5 %4) (*.f64 %3 %2) (*.f64 %9 %8) (*.f64 %8 %9) (*.f64 %4 %12) (*.f64 %2 %3) (*.f64 %15 %15) (*.f64 %1 %1) (*.f64 %18 %18) (*.f64 #s(literal 1 binary64) %21) %21 (pow.f64 (pow.f64 x #s(literal 8 binary64)) #s(literal 1/4 binary64)) (pow.f64 %27 #s(literal 1/2 binary64)) (pow.f64 %2 #s(literal 4 binary64)) (pow.f64 %15 #s(literal 2 binary64)) (pow.f64 %1 #s(literal 2 binary64)) (pow.f64 %18 #s(literal 2 binary64)) (pow.f64 %21 #s(literal 1 binary64)) (pow.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %15 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %1 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %18 #s(literal -2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 %21 #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -2 binary64))) (neg.f64 %50) (sqrt.f64 %27) (fabs.f64 (*.f64 %15 x)) (fabs.f64 (*.f64 %1 x)) (fabs.f64 %50) (fabs.f64 %21) y (*.f64 #s(literal 1 binary64) %60) (pow.f64 %60 #s(literal 1 binary64)) (/.f64 (fma.f64 %21 #s(literal 2 binary64) %63) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %60 #s(literal -1 binary64))) (neg.f64 %68) (fma.f64 %5 %4 y) (fma.f64 %3 %2 y) (fma.f64 %9 %8 y) (fma.f64 %8 %9 y) (fma.f64 %4 %12 y) (fma.f64 %2 %3 y) (fma.f64 %15 %15 y) (fma.f64 %1 %1 y) (fma.f64 %18 %18 y) (fma.f64 #s(literal 1 binary64) %21 y) %60 (-.f64 y %50) (-.f64 %21 %81) (+.f64 y %21) (+.f64 %21 y) (*.f64 #s(literal 1 binary64) %85) (pow.f64 %85 #s(literal 1 binary64)) (/.f64 (fma.f64 %60 #s(literal 2 binary64) %63) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %85 #s(literal -1 binary64))) (neg.f64 (neg.f64 %85)) (fma.f64 (*.f64 %94 #s(literal 4 binary64)) #s(literal 1/8 binary64) %21) (fma.f64 (*.f64 %98 #s(literal 16 binary64)) #s(literal 1/4 binary64) %21) (fma.f64 (*.f64 %98 #s(literal 1/4 binary64)) #s(literal 16 binary64) %21) (fma.f64 (*.f64 %63 #s(literal 1/8 binary64)) #s(literal 8 binary64) %21) (fma.f64 %5 %4 %63) (fma.f64 (*.f64 %98 #s(literal 1/2 binary64)) #s(literal 8 binary64) %21) (fma.f64 (*.f64 %98 #s(literal -2 binary64)) #s(literal -2 binary64) %21) (fma.f64 (*.f64 %94 #s(literal 2 binary64)) #s(literal 1/4 binary64) %21) (fma.f64 (*.f64 %63 #s(literal 8 binary64)) #s(literal 1/8 binary64) %21) (fma.f64 (*.f64 %63 #s(literal 4 binary64)) #s(literal 1/4 binary64) %21) (fma.f64 %94 #s(literal 1/2 binary64) %21) (fma.f64 %3 %2 %63) (fma.f64 %9 %8 %63) (fma.f64 %98 #s(literal 4 binary64) %21) (fma.f64 #s(literal -4 binary64) (/.f64 y #s(literal -2 binary64)) %21) (fma.f64 #s(literal 16 binary64) (*.f64 #s(literal 1/4 binary64) %98) %21) (fma.f64 #s(literal -1/2 binary64) (*.f64 #s(literal 4 binary64) %81) %21) (fma.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 4 binary64) %94) %21) (fma.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 8 binary64) %63) %21) (fma.f64 #s(literal 8 binary64) (*.f64 #s(literal 1/8 binary64) %63) %21) (fma.f64 #s(literal 8 binary64) (*.f64 #s(literal 1/2 binary64) %98) %21) (fma.f64 %8 %9 %63) (fma.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 16 binary64) %98) %21) (fma.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 2 binary64) %94) %21) (fma.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 4 binary64) %63) %21) (fma.f64 %4 %12 %63) (fma.f64 #s(literal 4 binary64) (*.f64 #s(literal -1/2 binary64) %81) %21) (fma.f64 #s(literal 4 binary64) %98 %21) (fma.f64 #s(literal -2 binary64) %81 %21) (fma.f64 #s(literal -1 binary64) %149 %21) (fma.f64 %2 %3 %63) (fma.f64 %149 #s(literal -1 binary64) %21) (fma.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -4 binary64) %81) %21) (fma.f64 #s(literal 1/2 binary64) %94 %21) (fma.f64 %15 %15 %63) (fma.f64 %63 #s(literal 1 binary64) %21) (fma.f64 %81 #s(literal -2 binary64) %21) (fma.f64 %1 %1 %63) (fma.f64 %18 %18 %63) (fma.f64 #s(literal 1 binary64) %63 %21) (fma.f64 #s(literal 1 binary64) %60 y) (fma.f64 #s(literal 1 binary64) %21 %63) (fma.f64 #s(literal 2 binary64) y %21) (fma.f64 y #s(literal 2 binary64) %21) (fma.f64 x x %63) (-.f64 %63 %50) (-.f64 %60 %81) (-.f64 y %68) (-.f64 %21 %149) (+.f64 %63 %21) %85 (+.f64 y %60) (+.f64 %21 %63) |
Compiled 123 to 196 computations (-59.3% saved)
Compiled 26 to 83 computations (-219.2% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 24 | 2 | 26 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 25 | 2 | 27 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (fma.f64 x x (+.f64 y y)) |
| ▶ | 50.9% | (+.f64 (approx (+ (* x x) y) y) y) |
Compiled 2 to 5 computations (-150.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 45 | 157 |
| 1× | iter-limit |
| Inputs |
|---|
%4 = (approx (+ (* x x) y) y) %5 = (+.f64 y y) x y %4 %5 (fma.f64 x x %5) (+.f64 %4 y) |
| Outputs |
|---|
%4 = (* x x) %6 = (+ %4 y) %9 = (pow.f64 x #s(literal 2 binary64)) %13 = (+ %4 (+ y y)) %20 = (/.f64 y %9) %28 = (/.f64 %9 y) %36 = (*.f64 #s(literal -1 binary64) %28) (approx x #s(literal 0 binary64)) (approx x x) (approx %6 y) (approx %6 (+.f64 y %9)) (approx %13 (*.f64 #s(literal 2 binary64) y)) (approx %13 (fma.f64 #s(literal 2 binary64) y %9)) (approx %6 %9) (approx %6 (*.f64 %9 (+.f64 #s(literal 1 binary64) %20))) (approx %13 (*.f64 %9 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) %20)))) (approx %6 (*.f64 y (+.f64 #s(literal 1 binary64) %28))) (approx %13 (*.f64 y (+.f64 #s(literal 2 binary64) %28))) (approx %6 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %36 #s(literal 1 binary64))))) (approx %13 (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 %36 #s(literal 2 binary64))))) |
6 calls:
| Time | Variable | Point |
|---|---|---|
| 1.0ms | x | inf |
| 1.0ms | y | -inf |
| 1.0ms | y | inf |
| 1.0ms | x | -inf |
| 0.0ms | y | 0 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 27 |
| 0 | 11 | 27 |
| 1 | 37 | 27 |
| 2 | 104 | 27 |
| 3 | 302 | 27 |
| 4 | 747 | 27 |
| 0 | 4370 | 27 |
| 0 | 4516 | 25 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%4 = (approx (+ (* x x) y) y) %5 = (+.f64 y y) x y %4 %5 (fma.f64 x x %5) (+.f64 %4 y) |
| Outputs |
|---|
%5 = (approx (+ (* x x) y) y) %11 = (neg.f64 %5) %14 = (*.f64 #s(literal 1/2 binary64) y) %16 = (*.f64 %14 #s(literal 16 binary64)) %19 = (*.f64 %14 #s(literal 1/4 binary64)) %21 = (+.f64 y y) %23 = (*.f64 %21 #s(literal 1/8 binary64)) %26 = (*.f64 %14 #s(literal 1/2 binary64)) %28 = (neg.f64 y) %30 = (*.f64 %28 #s(literal -1/2 binary64)) %33 = (*.f64 #s(literal 4 binary64) y) %34 = (*.f64 %33 #s(literal 4 binary64)) %36 = (*.f64 %21 #s(literal 8 binary64)) %39 = (*.f64 %33 #s(literal 2 binary64)) %41 = (*.f64 %21 #s(literal 4 binary64)) %43 = (*.f64 #s(literal 4 binary64) %28) %46 = (/.f64 y #s(literal -2 binary64)) %52 = (*.f64 #s(literal 1/4 binary64) %14) %55 = (*.f64 #s(literal 4 binary64) %33) %57 = (*.f64 #s(literal 8 binary64) %21) %59 = (*.f64 #s(literal 1/8 binary64) %21) %61 = (*.f64 #s(literal 1/2 binary64) %14) %63 = (*.f64 #s(literal 16 binary64) %14) %65 = (*.f64 #s(literal 2 binary64) %33) %67 = (*.f64 #s(literal 4 binary64) %21) %69 = (*.f64 #s(literal -1/2 binary64) %28) %72 = (*.f64 #s(literal -2 binary64) y) %74 = (*.f64 #s(literal -4 binary64) %28) %76 = (-.f64 %21 %72) %133 = (*.f64 y #s(literal 1/8 binary64)) %135 = (*.f64 %14 #s(literal 3 binary64)) %138 = (*.f64 y #s(literal 3/2 binary64)) %140 = (*.f64 #s(literal 3 binary64) %14) %142 = (*.f64 #s(literal 3/2 binary64) y) %144 = (*.f64 y #s(literal 1/4 binary64)) %192 = (*.f64 #s(literal 1/8 binary64) y) %215 = (*.f64 #s(literal 1/4 binary64) y) %248 = (fma.f64 x x %21) %251 = (fma.f64 x x y) %254 = (*.f64 x x) %266 = (fabs.f64 x) %267 = (sqrt.f64 %266) %268 = (*.f64 %267 %266) %269 = (sqrt.f64 %267) %281 = (neg.f64 %267) %282 = (*.f64 %281 %266) %308 = (neg.f64 %266) %313 = (neg.f64 x) %331 = (+.f64 %5 y) x y (*.f64 #s(literal 1 binary64) %5) (pow.f64 %5 #s(literal 1 binary64)) %5 (/.f64 #s(literal 1 binary64) (pow.f64 %5 #s(literal -1 binary64))) (neg.f64 %11) (*.f64 %16 #s(literal 1/4 binary64)) (*.f64 %19 #s(literal 16 binary64)) (*.f64 %23 #s(literal 8 binary64)) (*.f64 %26 #s(literal 8 binary64)) (*.f64 %30 #s(literal 4 binary64)) (*.f64 %34 #s(literal 1/8 binary64)) (*.f64 %36 #s(literal 1/8 binary64)) (*.f64 %39 #s(literal 1/4 binary64)) (*.f64 %41 #s(literal 1/4 binary64)) (*.f64 %43 #s(literal -1/2 binary64)) (*.f64 %46 #s(literal -4 binary64)) (*.f64 %33 #s(literal 1/2 binary64)) (*.f64 %14 #s(literal 4 binary64)) (*.f64 #s(literal -4 binary64) %46) (*.f64 #s(literal 16 binary64) %52) (*.f64 #s(literal -1/2 binary64) %43) (*.f64 #s(literal 1/8 binary64) %55) (*.f64 #s(literal 1/8 binary64) %57) (*.f64 #s(literal 8 binary64) %59) (*.f64 #s(literal 8 binary64) %61) (*.f64 #s(literal 1/4 binary64) %63) (*.f64 #s(literal 1/4 binary64) %65) (*.f64 #s(literal 1/4 binary64) %67) (*.f64 #s(literal 4 binary64) %69) (*.f64 #s(literal 4 binary64) %14) (*.f64 #s(literal -1 binary64) %72) (*.f64 #s(literal 1/2 binary64) %74) (*.f64 #s(literal 1/2 binary64) %76) (*.f64 #s(literal 1/2 binary64) %33) (*.f64 #s(literal -2 binary64) %28) (*.f64 %72 #s(literal -1 binary64)) (*.f64 %28 #s(literal -2 binary64)) (*.f64 #s(literal 1 binary64) %21) (*.f64 #s(literal 2 binary64) y) (*.f64 %21 #s(literal 1 binary64)) (*.f64 y #s(literal 2 binary64)) (pow.f64 %21 #s(literal 1 binary64)) (/.f64 (*.f64 y #s(literal 8 binary64)) #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal 8 binary64) y) #s(literal 4 binary64)) (/.f64 (/.f64 %33 #s(literal 1/2 binary64)) #s(literal 4 binary64)) (/.f64 %74 #s(literal 2 binary64)) (/.f64 (fma.f64 #s(literal 4 binary64) y %33) #s(literal 4 binary64)) (/.f64 %76 #s(literal 2 binary64)) (/.f64 (-.f64 %33 %43) #s(literal 4 binary64)) (/.f64 (*.f64 #s(literal -4 binary64) %72) #s(literal 4 binary64)) (/.f64 (*.f64 %72 #s(literal -4 binary64)) #s(literal 4 binary64)) (/.f64 %55 #s(literal 8 binary64)) (/.f64 (*.f64 #s(literal -2 binary64) %33) #s(literal -4 binary64)) (/.f64 %57 #s(literal 8 binary64)) (/.f64 %34 #s(literal 8 binary64)) (/.f64 %36 #s(literal 8 binary64)) (/.f64 (*.f64 %33 #s(literal -2 binary64)) #s(literal -4 binary64)) (/.f64 (*.f64 #s(literal -1 binary64) %33) #s(literal -2 binary64)) (/.f64 %65 #s(literal 4 binary64)) (/.f64 (*.f64 %33 #s(literal -1 binary64)) #s(literal -2 binary64)) (/.f64 %39 #s(literal 4 binary64)) (/.f64 %41 #s(literal 4 binary64)) (/.f64 %67 #s(literal 4 binary64)) (/.f64 %43 #s(literal -2 binary64)) (/.f64 %33 #s(literal 2 binary64)) (/.f64 %72 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) %33)) (/.f64 #s(literal 1 binary64) (pow.f64 %21 #s(literal -1 binary64))) (/.f64 %21 #s(literal 1 binary64)) (/.f64 y #s(literal 1/2 binary64)) (neg.f64 %72) (fma.f64 %16 #s(literal 1/4 binary64) #s(literal 0 binary64)) (fma.f64 %19 #s(literal 16 binary64) #s(literal 0 binary64)) (fma.f64 %23 #s(literal 8 binary64) #s(literal 0 binary64)) (fma.f64 %133 #s(literal 4 binary64) %135) (fma.f64 %133 #s(literal 4 binary64) %138) (fma.f64 %133 #s(literal 4 binary64) %140) (fma.f64 %133 #s(literal 4 binary64) %142) (fma.f64 %144 #s(literal 2 binary64) %135) (fma.f64 %144 #s(literal 2 binary64) %138) (fma.f64 %144 #s(literal 2 binary64) %140) (fma.f64 %144 #s(literal 2 binary64) %142) (fma.f64 %61 #s(literal 2 binary64) %135) (fma.f64 %61 #s(literal 2 binary64) %138) (fma.f64 %61 #s(literal 2 binary64) %140) (fma.f64 %61 #s(literal 2 binary64) %142) (fma.f64 %26 #s(literal 8 binary64) #s(literal 0 binary64)) (fma.f64 %30 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %34 #s(literal 1/8 binary64) #s(literal 0 binary64)) (fma.f64 %36 #s(literal 1/8 binary64) #s(literal 0 binary64)) (fma.f64 %39 #s(literal 1/4 binary64) #s(literal 0 binary64)) (fma.f64 %41 #s(literal 1/4 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 3/2 binary64) y %14) (fma.f64 %43 #s(literal -1/2 binary64) #s(literal 0 binary64)) (fma.f64 %46 #s(literal -4 binary64) #s(literal 0 binary64)) (fma.f64 %33 #s(literal 1/8 binary64) %135) (fma.f64 %33 #s(literal 1/8 binary64) %138) (fma.f64 %33 #s(literal 1/8 binary64) %140) (fma.f64 %33 #s(literal 1/8 binary64) %142) (fma.f64 %33 #s(literal 1/2 binary64) #s(literal 0 binary64)) (fma.f64 %14 #s(literal 3 binary64) %14) (fma.f64 %14 #s(literal 4 binary64) #s(literal 0 binary64)) (fma.f64 %14 #s(literal 1 binary64) %135) (fma.f64 %14 #s(literal 1 binary64) %138) (fma.f64 %14 #s(literal 1 binary64) %140) (fma.f64 %14 #s(literal 1 binary64) %142) (fma.f64 #s(literal -4 binary64) %46 #s(literal 0 binary64)) (fma.f64 #s(literal 16 binary64) %52 #s(literal 0 binary64)) (fma.f64 #s(literal -1/2 binary64) %43 #s(literal 0 binary64)) (fma.f64 #s(literal 1/8 binary64) %55 #s(literal 0 binary64)) (fma.f64 #s(literal 1/8 binary64) %57 #s(literal 0 binary64)) (fma.f64 #s(literal 1/8 binary64) %33 %135) (fma.f64 #s(literal 1/8 binary64) %33 %138) (fma.f64 #s(literal 1/8 binary64) %33 %140) (fma.f64 #s(literal 1/8 binary64) %33 %142) (fma.f64 #s(literal 8 binary64) %59 #s(literal 0 binary64)) (fma.f64 #s(literal 8 binary64) %61 #s(literal 0 binary64)) (fma.f64 #s(literal 1/4 binary64) %63 #s(literal 0 binary64)) (fma.f64 #s(literal 1/4 binary64) %65 #s(literal 0 binary64)) (fma.f64 #s(literal 1/4 binary64) %67 #s(literal 0 binary64)) (fma.f64 #s(literal 1/4 binary64) %21 %135) (fma.f64 #s(literal 1/4 binary64) %21 %138) (fma.f64 #s(literal 1/4 binary64) %21 %140) (fma.f64 #s(literal 1/4 binary64) %21 %142) (fma.f64 #s(literal 3 binary64) %14 %14) (fma.f64 #s(literal 4 binary64) %192 %135) (fma.f64 #s(literal 4 binary64) %192 %138) (fma.f64 #s(literal 4 binary64) %192 %140) (fma.f64 #s(literal 4 binary64) %192 %142) (fma.f64 #s(literal 4 binary64) %69 #s(literal 0 binary64)) (fma.f64 #s(literal 4 binary64) %14 #s(literal 0 binary64)) (fma.f64 #s(literal -1 binary64) %72 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) %74 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) %76 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) %33 #s(literal 0 binary64)) (fma.f64 #s(literal 1/2 binary64) y %135) (fma.f64 #s(literal 1/2 binary64) y %138) (fma.f64 #s(literal 1/2 binary64) y %140) (fma.f64 #s(literal 1/2 binary64) y %142) (fma.f64 #s(literal -2 binary64) %28 #s(literal 0 binary64)) (fma.f64 %72 #s(literal -1 binary64) #s(literal 0 binary64)) (fma.f64 %28 #s(literal -2 binary64) #s(literal 0 binary64)) (fma.f64 #s(literal 1 binary64) %14 %135) (fma.f64 #s(literal 1 binary64) %14 %138) (fma.f64 #s(literal 1 binary64) %14 %140) (fma.f64 #s(literal 1 binary64) %14 %142) (fma.f64 #s(literal 1 binary64) %21 #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) %215 %135) (fma.f64 #s(literal 2 binary64) %215 %138) (fma.f64 #s(literal 2 binary64) %215 %140) (fma.f64 #s(literal 2 binary64) %215 %142) (fma.f64 #s(literal 2 binary64) %26 %135) (fma.f64 #s(literal 2 binary64) %26 %138) (fma.f64 #s(literal 2 binary64) %26 %140) (fma.f64 #s(literal 2 binary64) %26 %142) (fma.f64 #s(literal 2 binary64) y #s(literal 0 binary64)) (fma.f64 %21 #s(literal 1/4 binary64) %135) (fma.f64 %21 #s(literal 1/4 binary64) %138) (fma.f64 %21 #s(literal 1/4 binary64) %140) (fma.f64 %21 #s(literal 1/4 binary64) %142) (fma.f64 %21 #s(literal 1 binary64) #s(literal 0 binary64)) (fma.f64 y #s(literal 3/2 binary64) %14) (fma.f64 y #s(literal 1/2 binary64) %135) (fma.f64 y #s(literal 1/2 binary64) %138) (fma.f64 y #s(literal 1/2 binary64) %140) (fma.f64 y #s(literal 1/2 binary64) %142) (fma.f64 y #s(literal 2 binary64) #s(literal 0 binary64)) (-.f64 %21 #s(literal 0 binary64)) (-.f64 y %28) (+.f64 %135 %14) (+.f64 %138 %14) (+.f64 %140 %14) (+.f64 %142 %14) (+.f64 %14 %135) (+.f64 %14 %138) (+.f64 %14 %140) (+.f64 %14 %142) (+.f64 #s(literal 0 binary64) %21) (+.f64 %21 #s(literal 0 binary64)) %21 (*.f64 #s(literal 1 binary64) %248) (pow.f64 %248 #s(literal 1 binary64)) (/.f64 (fma.f64 %251 #s(literal 2 binary64) %21) #s(literal 2 binary64)) (/.f64 (fma.f64 %254 #s(literal 2 binary64) %33) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 %251 #s(literal 2 binary64)) %72) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %248 #s(literal -1 binary64))) (neg.f64 (neg.f64 %248)) (fma.f64 %16 #s(literal 1/4 binary64) %254) (fma.f64 %19 #s(literal 16 binary64) %254) (fma.f64 (*.f64 %268 %269) %269 %21) (fma.f64 %23 #s(literal 8 binary64) %254) (fma.f64 %26 #s(literal 8 binary64) %254) (fma.f64 %30 #s(literal 4 binary64) %254) (fma.f64 %34 #s(literal 1/8 binary64) %254) (fma.f64 %36 #s(literal 1/8 binary64) %254) (fma.f64 %39 #s(literal 1/4 binary64) %254) (fma.f64 %41 #s(literal 1/4 binary64) %254) (fma.f64 %268 %267 %21) (fma.f64 %43 #s(literal -1/2 binary64) %254) (fma.f64 %282 %281 %21) (fma.f64 %46 #s(literal -4 binary64) %254) (fma.f64 %33 #s(literal 1/2 binary64) %254) (fma.f64 %14 #s(literal 4 binary64) %254) (fma.f64 #s(literal -4 binary64) %46 %254) (fma.f64 #s(literal 16 binary64) %52 %254) (fma.f64 #s(literal -1/2 binary64) %43 %254) (fma.f64 #s(literal 1/8 binary64) %55 %254) (fma.f64 #s(literal 1/8 binary64) %57 %254) (fma.f64 #s(literal 8 binary64) %59 %254) (fma.f64 #s(literal 8 binary64) %61 %254) (fma.f64 %281 %282 %21) (fma.f64 #s(literal 1/4 binary64) %63 %254) (fma.f64 #s(literal 1/4 binary64) %65 %254) (fma.f64 #s(literal 1/4 binary64) %67 %254) (fma.f64 %269 (*.f64 %269 %268) %21) (fma.f64 #s(literal 4 binary64) %69 %254) (fma.f64 #s(literal 4 binary64) %14 %254) (fma.f64 #s(literal -1 binary64) %72 %254) (fma.f64 %267 %268 %21) (fma.f64 #s(literal 1/2 binary64) %74 %254) (fma.f64 #s(literal 1/2 binary64) %76 %254) (fma.f64 #s(literal 1/2 binary64) %33 %254) (fma.f64 #s(literal -2 binary64) %28 %254) (fma.f64 %308 %308 %21) (fma.f64 %72 #s(literal -1 binary64) %254) (fma.f64 %28 #s(literal -2 binary64) %254) (fma.f64 %266 %266 %21) (fma.f64 %313 %313 %21) (fma.f64 #s(literal 1 binary64) %21 %254) (fma.f64 #s(literal 1 binary64) %251 y) (fma.f64 #s(literal 1 binary64) %254 %21) (fma.f64 #s(literal 2 binary64) y %254) (fma.f64 %21 #s(literal 1 binary64) %254) (fma.f64 y #s(literal 2 binary64) %254) %248 (-.f64 %21 (*.f64 %313 x)) (-.f64 %251 %28) (-.f64 %254 %72) (-.f64 y (neg.f64 %251)) (+.f64 %21 %254) (+.f64 %251 y) (+.f64 %254 %21) (+.f64 y %251) (*.f64 #s(literal 1 binary64) %331) (pow.f64 %331 #s(literal 1 binary64)) (/.f64 (fma.f64 %5 #s(literal 2 binary64) %21) #s(literal 2 binary64)) (/.f64 (-.f64 (*.f64 %5 #s(literal 2 binary64)) %72) #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %331 #s(literal -1 binary64))) (neg.f64 (neg.f64 %331)) (fma.f64 #s(literal 1 binary64) %5 y) (-.f64 %5 %28) (-.f64 y %11) %331 (+.f64 y %5) |
Compiled 268 to 365 computations (-36.2% saved)
Compiled 20 to 58 computations (-190.0% saved)
2 alts after pruning (0 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 20 | 0 | 20 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 0 | 0 |
| Total | 20 | 2 | 22 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (fma.f64 x x (+.f64 y y)) |
| ✓ | 50.9% | (+.f64 (approx (+ (* x x) y) y) y) |
Compiled 2 to 5 computations (-150.0% saved)
Total -0.0b remaining (-0.0%)
Threshold costs -0.0b (-0.0%)
| 0.0b | 0% |
| -0.0b | -0.0% |
| Inputs |
|---|
(+.f64 (approx (+ (* x x) y) y) y) |
| Outputs |
|---|
(+.f64 (approx (+ (* x x) y) y) y) |
| Inputs |
|---|
(+.f64 (approx (+ (* x x) y) y) y) (fma.f64 x x (+.f64 y y)) |
| Outputs |
|---|
(fma.f64 x x (+.f64 y y)) |
4 calls:
| 2.0ms | y |
| 2.0ms | (+.f64 (+.f64 (*.f64 x x) y) y) |
| 2.0ms | x |
| 2.0ms | (*.f64 x x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 50.9% | 1 | y |
| 50.9% | 1 | x |
| 50.9% | 1 | (+.f64 (+.f64 (*.f64 x x) y) y) |
| 50.9% | 1 | (*.f64 x x) |
Compiled 7 to 13 computations (-85.7% saved)
| 1× | done |
Compiled 2 to 5 computations (-150.0% saved)
Compiled 7 to 22 computations (-214.3% saved)
| Allocated | Percent | Phase |
|---|---|---|
| 458.9 MiB | 63.9% | sample |
| 125.5 MiB | 17.5% | rewrite |
| 40.8 MiB | 5.7% | preprocess |
| 37.9 MiB | 5.3% | reconstruct |
| 28.2 MiB | 3.9% | series |
| 8.9 MiB | 1.2% | regimes |
| 7.4 MiB | 1.0% | derivations |
| 5.8 MiB | 0.8% | eval |
| 3.3 MiB | 0.5% | prune |
| 0.9 MiB | 0.1% | analyze |
| 0.1 MiB | 0.0% | start |
| 0.0 MiB | 0.0% | bsearch |
| 0.0 MiB | 0.0% | end |
| 717.7 MiB | 100.0% | total |
Loading profile data...