Time bar (total: 3.0s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 0% | 99.9% | 0.1% | 1 |
| 0% | 99.9% | 0.1% | 2 |
| 0% | 99.9% | 0.1% | 3 |
| 0% | 99.9% | 0.1% | 4 |
| 0% | 99.9% | 0.1% | 5 |
| 0% | 99.9% | 0.1% | 6 |
| 12.5% | 87.4% | 0.1% | 7 |
| 18.7% | 81.1% | 0.1% | 8 |
| 34.3% | 63.2% | 2.5% | 9 |
| 40.6% | 52.7% | 6.8% | 10 |
| 48.4% | 42.1% | 9.5% | 11 |
| 56.2% | 32.5% | 11.4% | 12 |
| 59.1% | 26.9% | 14% | 13 |
| 63.9% | 21% | 15.1% | 14 |
Compiled 11 to 7 computations (36.4% saved)
| 834.0ms | 8256× | body | 128 | valid |
| 60.0ms | 610× | body | 128 | invalid |
Compiled 32 to 20 computations (37.5% saved)
| 1× | egg-herbie |
| 66× | fma-def_binary64 |
| 8× | associate-*r*_binary64 |
| 8× | associate-*l*_binary64 |
| 7× | +-commutative_binary64 |
| 6× | *-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 10 |
| 1 | 16 | 8 |
| 2 | 26 | 8 |
| 3 | 39 | 8 |
| 4 | 48 | 8 |
| 5 | 55 | 8 |
| 6 | 53 | 8 |
| 7 | 71 | 8 |
| 8 | 75 | 8 |
| 9 | 88 | 8 |
| 10 | 94 | 8 |
| 11 | 99 | 8 |
| 12 | 100 | 8 |
| 13 | 98 | 8 |
1 alts after pruning (1 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 2 | 1 | 3 |
| Status | Error | Program |
| ▶ | 0.0b | (fma.f64 y (+.f64 x z) x) |
Compiled 34 to 18 computations (47.1% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (fma.f64 y (+.f64 x z) x) |
1 calls:
| 9.0ms | (fma.f64 y (+.f64 x z) x) |
| 2× | batch-egg-rewrite |
| 23× | egg-rr |
2 calls:
| 39.0ms | ((fma.f64 y (+.f64 x z) x)) |
| 0.0ms | () |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 8 |
| 1 | 129 | 8 |
| 2 | 1676 | 8 |
| 3 | 5071 | 8 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 66× | fma-def_binary64 |
| 8× | associate-*r*_binary64 |
| 8× | associate-*l*_binary64 |
| 6× | *-commutative_binary64 |
| 5× | +-commutative_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 285 |
| 1 | 31 | 285 |
| 2 | 47 | 258 |
| 3 | 51 | 258 |
| 4 | 70 | 258 |
| 5 | 74 | 258 |
| 6 | 88 | 258 |
| 7 | 94 | 258 |
| 8 | 99 | 258 |
| 9 | 100 | 258 |
| 10 | 98 | 258 |
2 alts after pruning (1 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 31 | 1 | 32 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 31 | 2 | 33 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f64 y (+.f64 x z) x) |
| ▶ | 40.3b | (/.f64 (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) |
Compiled 393 to 119 computations (69.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 2.8b | (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x))) |
| ✓ | 3.0b | (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) |
| ✓ | 4.3b | (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)) |
| ✓ | 39.1b | (/.f64 (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) |
4 calls:
| 546.0ms | (/.f64 (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) |
| 98.0ms | (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) |
| 53.0ms | (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x))) |
| 22.0ms | (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)) |
| 2× | batch-egg-rewrite |
| 150× | egg-rr |
2 calls:
| 91.0ms | ((/.f64 (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)) (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) |
| 0.0ms | () |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 97 |
| 1 | 397 | 60 |
| 2 | 4580 | 60 |
| 3 | 5598 | 60 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 750× | times-frac_binary64 |
| 656× | associate-/l*_binary64 |
| 644× | fma-def_binary64 |
| 228× | +-commutative_binary64 |
| 195× | associate-+r+_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 590 | 13290 |
| 1 | 2161 | 11873 |
| 2 | 5291 | 11873 |
2 alts after pruning (0 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 230 | 0 | 230 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 230 | 2 | 232 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f64 y (+.f64 x z) x) |
| ✓ | 40.3b | (/.f64 (+.f64 (pow.f64 (*.f64 y (+.f64 x z)) 3) (pow.f64 x 3)) (+.f64 (*.f64 (*.f64 y (+.f64 x z)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x x) (*.f64 (*.f64 y (+.f64 x z)) x)))) |
Compiled 17851 to 9022 computations (49.5% saved)
Total -0.0b remaining (-31%)
Threshold costs -0.0b (-31%)
Compiled 4052 to 2066 computations (49% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 9 |
| 1 | 6 | 9 |
Compiled 67 to 31 computations (53.7% saved)
Loading profile data...