
Time bar (total: 996.0ms)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0.0% | 0.0% | 99.8% | 0.2% | 0.0% | 0.0% | 0.0% | 0 |
| 100.0% | 99.8% | 0.0% | 0.2% | 0.0% | 0.0% | 0.0% | 1 |
Compiled 9 to 9 computations (0.0% saved)
| 364.0ms | 8 256× | 0 | valid |
Mul: 7.0ms (73.1% of total, 0.0 MiB)Add: 3.0ms (31.3% of total, 0.0 MiB)Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 37 | 109 |
| 1 | 138 | 105 |
| 2 | 277 | 105 |
| 3 | 415 | 105 |
| 4 | 469 | 105 |
| 5 | 861 | 105 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 99.6% | (+.f64 (*.f64 x y) (*.f64 z t)) |
(sort x y)
(sort z t)
Compiled 2 to 14 computations (-600.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 59 | 193 |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (*.f64 x y) %5 = (*.f64 z t) x y %2 z t %5 (+.f64 %2 %5) |
| Outputs |
|---|
%5 = (* x y) %6 = (*.f64 x y) %11 = (+ %5 (* z t)) %12 = (*.f64 t z) %16 = (/.f64 %12 x) %27 = (/.f64 %12 y) %37 = (/.f64 %6 z) %47 = (/.f64 %6 t) (approx x #s(literal 0 binary64)) (approx x x) (approx %5 %6) (approx %11 %12) (approx %11 (fma.f64 t z %6)) (approx %11 (*.f64 x (+.f64 y %16))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %16))))) (approx y y) (approx %11 (*.f64 y (+.f64 x %27))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %27))))) (approx z z) (approx %11 (*.f64 z (+.f64 t %37))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) t (*.f64 #s(literal -1 binary64) %37))))) (approx t t) (approx %11 (*.f64 t (+.f64 z %47))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) z (*.f64 #s(literal -1 binary64) %47))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 3.0ms | x | inf |
| 2.0ms | y | inf |
| 2.0ms | t | inf |
| 2.0ms | z | inf |
| 2.0ms | x | -inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 17 |
| 0 | 10 | 17 |
| 1 | 26 | 17 |
| 2 | 60 | 17 |
| 3 | 122 | 17 |
| 4 | 221 | 17 |
| 5 | 585 | 17 |
| 0 | 4039 | 17 |
| 0 | 4161 | 16 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (*.f64 x y) %5 = (*.f64 z t) x y %2 z t %5 (+.f64 %2 %5) |
| Outputs |
|---|
%3 = (neg.f64 x) %4 = (*.f64 %3 y) %6 = (neg.f64 y) %10 = (*.f64 y x) %19 = (neg.f64 z) %20 = (*.f64 %19 t) %22 = (neg.f64 t) %25 = (*.f64 t z) %32 = (fma.f64 t z %10) %33 = (neg.f64 %32) %48 = (*.f64 %10 #s(literal 1 binary64)) %51 = (*.f64 %25 #s(literal 1 binary64)) x y (*.f64 #s(literal -1 binary64) %4) (*.f64 %6 %3) (*.f64 %3 %6) (*.f64 #s(literal 1 binary64) %10) %10 (*.f64 x y) (pow.f64 %10 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %10 #s(literal -1 binary64))) (neg.f64 %4) z t (*.f64 #s(literal -1 binary64) %20) (*.f64 %22 %19) (*.f64 %19 %22) (*.f64 #s(literal 1 binary64) %25) %25 (*.f64 z t) (pow.f64 %25 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %25 #s(literal -1 binary64))) (neg.f64 %20) (*.f64 #s(literal -1 binary64) %33) (*.f64 #s(literal 1 binary64) %32) (pow.f64 %32 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %32 #s(literal -1 binary64))) (neg.f64 %33) (fma.f64 #s(literal -1 binary64) %4 %25) (fma.f64 #s(literal -1 binary64) %20 %10) (fma.f64 %6 %3 %25) (fma.f64 %3 %6 %25) (fma.f64 %22 %19 %10) (fma.f64 %19 %22 %10) (fma.f64 #s(literal 1 binary64) %25 %10) (fma.f64 #s(literal 1 binary64) %10 %25) (fma.f64 %25 #s(literal 1 binary64) %48) %32 (fma.f64 z t %10) (fma.f64 %10 #s(literal 1 binary64) %51) (fma.f64 y x %25) (fma.f64 x y %25) (-.f64 %25 %4) (-.f64 %10 %20) (+.f64 %51 %48) (+.f64 %48 %51) (+.f64 %25 %10) (+.f64 %10 %25) |
Compiled 63 to 91 computations (-44.4% saved)
Compiled 15 to 40 computations (-166.7% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 13 | 2 | 15 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 14 | 2 | 16 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 100.0% | (approx (+ (* x y) (* z t)) (fma.f64 t z (*.f64 x y))) |
| ▶ | 54.7% | (approx (+ (* x y) (* z t)) (*.f64 t z)) |
Compiled 2 to 7 computations (-250.0% saved)
| Inputs |
|---|
| Outputs |
|---|
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 59 | 193 |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (*.f64 x y) %5 = (*.f64 t z) %8 = (+ (* x y) (* z t)) %10 = (fma.f64 t z %2) x y %2 z t %5 (approx %8 %5) %10 (approx %8 %10) |
| Outputs |
|---|
%5 = (* x y) %6 = (*.f64 x y) %11 = (+ %5 (* z t)) %12 = (*.f64 t z) %16 = (/.f64 %12 x) %27 = (/.f64 %12 y) %37 = (/.f64 %6 z) %47 = (/.f64 %6 t) (approx x #s(literal 0 binary64)) (approx x x) (approx %5 %6) (approx %11 %12) (approx %11 (fma.f64 t z %6)) (approx %11 (*.f64 x (+.f64 y %16))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) y (*.f64 #s(literal -1 binary64) %16))))) (approx y y) (approx %11 (*.f64 y (+.f64 x %27))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal -1 binary64) %27))))) (approx z z) (approx %11 (*.f64 z (+.f64 t %37))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) t (*.f64 #s(literal -1 binary64) %37))))) (approx t t) (approx %11 (*.f64 t (+.f64 z %47))) (approx %11 (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) z (*.f64 #s(literal -1 binary64) %47))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 2.0ms | x | inf |
| 2.0ms | x | -inf |
| 1.0ms | y | inf |
| 1.0ms | z | inf |
| 1.0ms | t | inf |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 41 |
| 0 | 16 | 39 |
| 1 | 42 | 39 |
| 2 | 87 | 39 |
| 3 | 144 | 39 |
| 4 | 224 | 39 |
| 5 | 592 | 39 |
| 0 | 4052 | 39 |
| 0 | 4182 | 39 |
| 1× | iter-limit |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
%2 = (*.f64 x y) %5 = (*.f64 t z) %8 = (+ (* x y) (* z t)) %10 = (fma.f64 t z %2) x y %2 z t %5 (approx %8 %5) %10 (approx %8 %10) |
| Outputs |
|---|
%3 = (neg.f64 x) %4 = (*.f64 %3 y) %6 = (neg.f64 y) %10 = (*.f64 y x) %19 = (neg.f64 z) %20 = (*.f64 %19 t) %22 = (neg.f64 t) %25 = (*.f64 t z) %34 = (+ (* t z) (* y x)) %35 = (approx %34 %25) %40 = (fma.f64 t z %10) %41 = (neg.f64 %40) %56 = (*.f64 %10 #s(literal 1 binary64)) %59 = (*.f64 %25 #s(literal 1 binary64)) %69 = (approx %34 %40) x y (*.f64 #s(literal -1 binary64) %4) (*.f64 %6 %3) (*.f64 %3 %6) (*.f64 #s(literal 1 binary64) %10) %10 (*.f64 x y) (pow.f64 %10 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %10 #s(literal -1 binary64))) (neg.f64 %4) z t (*.f64 #s(literal -1 binary64) %20) (*.f64 %22 %19) (*.f64 %19 %22) (*.f64 #s(literal 1 binary64) %25) %25 (*.f64 z t) (pow.f64 %25 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %25 #s(literal -1 binary64))) (neg.f64 %20) (*.f64 #s(literal 1 binary64) %35) (pow.f64 %35 #s(literal 1 binary64)) %35 (/.f64 #s(literal 1 binary64) (pow.f64 %35 #s(literal -1 binary64))) (*.f64 #s(literal -1 binary64) %41) (*.f64 #s(literal 1 binary64) %40) (pow.f64 %40 #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (pow.f64 %40 #s(literal -1 binary64))) (neg.f64 %41) (fma.f64 #s(literal -1 binary64) %4 %25) (fma.f64 #s(literal -1 binary64) %20 %10) (fma.f64 %6 %3 %25) (fma.f64 %22 %19 %10) (fma.f64 %3 %6 %25) (fma.f64 %19 %22 %10) (fma.f64 #s(literal 1 binary64) %25 %10) (fma.f64 #s(literal 1 binary64) %10 %25) (fma.f64 %25 #s(literal 1 binary64) %56) %40 (fma.f64 z t %10) (fma.f64 %10 #s(literal 1 binary64) %59) (fma.f64 y x %25) (fma.f64 x y %25) (-.f64 %25 %4) (-.f64 %10 %20) (+.f64 %59 %56) (+.f64 %56 %59) (+.f64 %25 %10) (+.f64 %10 %25) (*.f64 #s(literal 1 binary64) %69) (pow.f64 %69 #s(literal 1 binary64)) %69 (/.f64 #s(literal 1 binary64) (pow.f64 %69 #s(literal -1 binary64))) |
Compiled 71 to 99 computations (-39.4% saved)
Compiled 18 to 40 computations (-122.2% saved)
2 alts after pruning (0 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 18 | 0 | 18 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 0 | 0 |
| Total | 18 | 2 | 20 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 100.0% | (approx (+ (* x y) (* z t)) (fma.f64 t z (*.f64 x y))) |
| ✓ | 54.7% | (approx (+ (* x y) (* z t)) (*.f64 t z)) |
Compiled 2 to 7 computations (-250.0% saved)
Total -0.0b remaining (-0.0%)
Threshold costs -0.0b (-0.0%)
| 0.0b | 0% |
| -0.0b | -0.0% |
| Inputs |
|---|
(approx (+ (* x y) (* z t)) (*.f64 t z)) |
| Outputs |
|---|
(approx (+ (* x y) (* z t)) (*.f64 t z)) |
| Inputs |
|---|
%6 = (+ (* x y) (* z t)) (approx %6 (*.f64 t z)) (approx %6 (fma.f64 t z (*.f64 x y))) |
| Outputs |
|---|
(approx (+ (* x y) (* z t)) (fma.f64 t z (*.f64 x y))) |
7 calls:
| 4.0ms | y |
| 2.0ms | x |
| 2.0ms | z |
| 2.0ms | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 2.0ms | t |
| Accuracy | Segments | Branch |
|---|---|---|
| 54.7% | 1 | t |
| 54.7% | 1 | z |
| 54.7% | 1 | y |
| 54.7% | 1 | x |
| 54.7% | 1 | (+.f64 (*.f64 x y) (*.f64 z t)) |
| 54.7% | 1 | (*.f64 x y) |
| 54.7% | 1 | (*.f64 z t) |
Compiled 10 to 16 computations (-60.0% saved)
| 1× | done |
Compiled 2 to 7 computations (-250.0% saved)
Compiled 11 to 50 computations (-354.5% saved)
| Allocated | Percent | Phase |
|---|---|---|
| 643.7 MiB | 64.8% | sample |
| 137.5 MiB | 13.8% | rewrite |
| 76.5 MiB | 7.7% | preprocess |
| 42.0 MiB | 4.2% | series |
| 39.7 MiB | 4.0% | reconstruct |
| 37.3 MiB | 3.7% | regimes |
| 7.7 MiB | 0.8% | eval |
| 5.1 MiB | 0.5% | prune |
| 2.8 MiB | 0.3% | derivations |
| 1.1 MiB | 0.1% | analyze |
| 0.1 MiB | 0.0% | start |
| 0.1 MiB | 0.0% | bsearch |
| 0.0 MiB | 0.0% | end |
| 993.5 MiB | 100.0% | total |
Loading profile data...