Time bar (total: 5.7s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 0.1% | 99.9% | 0 |
| 0.1% | 0% | 99.9% | 1 |
Compiled 33 to 24 computations (27.3% saved)
| 2.8s | 8254× | body | 128 | valid |
| 1.0ms | 2× | body | 256 | valid |
Compiled 76 to 55 computations (27.6% saved)
| 1× | egg-herbie |
| 199× | fma-def_binary32 |
| 155× | fma-neg_binary32 |
| 47× | cancel-sign-sub-inv_binary32 |
| 34× | sub-neg_binary32 |
| 26× | unsub-neg_binary32 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 10 |
| 1 | 15 | 8 |
| 2 | 35 | 8 |
| 3 | 63 | 8 |
| 4 | 142 | 8 |
| 5 | 262 | 8 |
| 6 | 381 | 8 |
| 7 | 434 | 8 |
| 8 | 458 | 8 |
| 9 | 463 | 8 |
| 10 | 428 | 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.f32 ux maxCos (-.f32 1 ux)) |
Compiled 34 to 22 computations (35.3% saved)
Found 1 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
1 calls:
| 8.0ms | (fma.f32 ux maxCos (-.f32 1 ux)) |
| 2× | batch-egg-rewrite |
| 583× | log1p-expm1-u_binary32 |
| 583× | expm1-log1p-u_binary32 |
| 265× | log-prod_binary32 |
| 227× | prod-diff_binary32 |
| 110× | expm1-udef_binary32 |
1 calls:
| 94.0ms | (fma.f32 ux maxCos (-.f32 1 ux)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 8 |
| 1 | 123 | 8 |
| 2 | 1454 | 8 |
| 3 | 4960 | 8 |
| 4 | 4965 | 8 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 161× | fma-def_binary32 |
| 149× | fma-neg_binary32 |
| 26× | associate--r+_binary32 |
| 26× | sub-neg_binary32 |
| 24× | distribute-rgt-in_binary32 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 207 |
| 1 | 33 | 171 |
| 2 | 69 | 171 |
| 3 | 120 | 171 |
| 4 | 206 | 171 |
| 5 | 332 | 171 |
| 6 | 438 | 171 |
| 7 | 446 | 171 |
| 8 | 457 | 171 |
| 9 | 422 | 171 |
5 alts after pruning (4 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 35 | 4 | 39 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 35 | 5 | 40 |
| Status | Error | Program |
| ▶ | 0.4b | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
| 0.6b | (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) | |
| 0.5b | (log.f32 (+.f32 1 (expm1.f32 (fma.f32 ux maxCos (-.f32 1 ux))))) | |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| 0.4b | (-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1) |
Compiled 522 to 333 computations (36.2% saved)
Found 3 expressions with local error:
| New | Error | Program |
| 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) | |
| ✓ | 0.1b | (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| ✓ | 0.4b | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
2 calls:
| 29.0ms | (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| 8.0ms | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
| 2× | batch-egg-rewrite |
| 658× | expm1-log1p-u_binary32 |
| 657× | log1p-expm1-u_binary32 |
| 251× | prod-diff_binary32 |
| 155× | fma-udef_binary32 |
| 125× | expm1-udef_binary32 |
2 calls:
| 124.0ms | (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| 124.0ms | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 18 |
| 1 | 142 | 18 |
| 2 | 1646 | 18 |
| 3 | 4889 | 18 |
| 4 | 4981 | 18 |
| 5 | 4965 | 18 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 785× | fma-def_binary32 |
| 382× | times-frac_binary32 |
| 342× | fma-neg_binary32 |
| 272× | sub-neg_binary32 |
| 196× | distribute-rgt-in_binary32 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 174 | 1217 |
| 1 | 569 | 1147 |
| 2 | 2146 | 1123 |
| 3 | 4991 | 1122 |
| 4 | 5169 | 1122 |
5 alts after pruning (3 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 156 | 1 | 157 |
| Fresh | 1 | 2 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 157 | 5 | 162 |
| Status | Error | Program |
| ✓ | 0.4b | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
| 0.6b | (*.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 2)) | |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| 0.4b | (-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1) | |
| ▶ | 0.4b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
Compiled 2871 to 1913 computations (33.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.0b | (+.f32 1 (fma.f32 ux ux ux)) |
| ✓ | 0.0b | (-.f32 1 (pow.f32 ux 3)) |
| ✓ | 0.1b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
| ✓ | 0.4b | (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) |
4 calls:
| 101.0ms | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
| 6.0ms | (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) |
| 5.0ms | (-.f32 1 (pow.f32 ux 3)) |
| 4.0ms | (+.f32 1 (fma.f32 ux ux ux)) |
| 2× | batch-egg-rewrite |
| 706× | prod-diff_binary32 |
| 221× | expm1-udef_binary32 |
| 220× | log1p-udef_binary32 |
| 127× | add-sqr-sqrt_binary32 |
| 121× | log1p-expm1-u_binary32 |
4 calls:
| 92.0ms | (+.f32 1 (fma.f32 ux ux ux)) |
| 92.0ms | (-.f32 1 (pow.f32 ux 3)) |
| 92.0ms | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
| 92.0ms | (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 50 |
| 1 | 261 | 49 |
| 2 | 3085 | 49 |
| 3 | 5044 | 49 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 611× | times-frac_binary32 |
| 493× | unswap-sqr_binary32 |
| 336× | div-sub_binary32 |
| 279× | fma-def_binary32 |
| 271× | associate-*l*_binary32 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 46 | 772 |
| 1 | 119 | 680 |
| 2 | 302 | 680 |
| 3 | 730 | 678 |
| 4 | 2202 | 678 |
| 5 | 4568 | 678 |
| 6 | 4975 | 678 |
5 alts after pruning (2 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 148 | 1 | 149 |
| Fresh | 1 | 1 | 2 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 149 | 5 | 154 |
| Status | Error | Program |
| ▶ | 0.1b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) (*.f32 ux maxCos)) |
| ✓ | 0.4b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
| ✓ | 0.4b | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| 0.4b | (-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1) |
Compiled 3326 to 1963 computations (41% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.0b | (-.f32 1 (pow.f32 ux 3)) | |
| ✓ | 0.0b | (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) |
| ✓ | 0.1b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) (*.f32 ux maxCos)) |
| ✓ | 0.3b | (log1p.f32 (fma.f32 ux ux ux)) |
3 calls:
| 251.0ms | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) (*.f32 ux maxCos)) |
| 8.0ms | (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) |
| 5.0ms | (log1p.f32 (fma.f32 ux ux ux)) |
| 2× | batch-egg-rewrite |
| 610× | prod-diff_binary32 |
| 402× | fma-udef_binary32 |
| 284× | fma-def_binary32 |
| 206× | expm1-udef_binary32 |
| 205× | log1p-udef_binary32 |
3 calls:
| 151.0ms | (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) |
| 151.0ms | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) (*.f32 ux maxCos)) |
| 151.0ms | (log1p.f32 (fma.f32 ux ux ux)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 42 |
| 1 | 264 | 36 |
| 2 | 2754 | 36 |
| 3 | 4748 | 36 |
| 4 | 4805 | 36 |
| 5 | 5007 | 36 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 795× | times-frac_binary32 |
| 505× | associate-*l*_binary32 |
| 476× | sub-neg_binary32 |
| 324× | fma-neg_binary32 |
| 317× | cancel-sign-sub-inv_binary32 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 73 | 950 |
| 1 | 213 | 748 |
| 2 | 535 | 704 |
| 3 | 1442 | 664 |
| 4 | 3630 | 664 |
| 5 | 5128 | 664 |
5 alts after pruning (1 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 178 | 0 | 178 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 3 | 3 |
| Total | 178 | 5 | 183 |
| Status | Error | Program |
| ✓ | 0.1b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (exp.f32 (neg.f32 (log1p.f32 (fma.f32 ux ux ux)))) (*.f32 ux maxCos)) |
| ✓ | 0.4b | (fma.f32 (-.f32 1 (pow.f32 ux 3)) (/.f32 1 (+.f32 1 (fma.f32 ux ux ux))) (*.f32 ux maxCos)) |
| ✓ | 0.4b | (expm1.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| 0.4b | (-.f32 (exp.f32 (log1p.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) 1) |
Compiled 3786 to 2053 computations (45.8% saved)
Total 0.0b remaining (75.7%)
Threshold costs 0.0b (75.7%)
Compiled 2030 to 1489 computations (26.7% saved)
| 1× | egg-herbie |
| 2× | +-commutative_binary32 |
| 2× | sub-neg_binary32 |
| 1× | *-commutative_binary32 |
| 1× | neg-sub0_binary32 |
| 1× | neg-mul-1_binary32 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 8 |
| 1 | 10 | 8 |
| 2 | 14 | 8 |
| 3 | 16 | 8 |
| 4 | 17 | 8 |
| 5 | 16 | 8 |
Compiled 90 to 63 computations (30% saved)
Loading profile data...