Time bar (total: 15.4s)
| 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)
| 1.3s | 8255× | body | 128 | valid |
| 0.0ms | 1× | 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:
| 4.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:
| 70.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 |
2 alts after pruning (1 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 38 | 1 | 39 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 38 | 2 | 40 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| ▶ | 0.5b | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
Compiled 432 to 267 computations (38.2% saved)
Found 3 expressions with local error:
| New | Error | Program |
| 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) | |
| ✓ | 0.1b | (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| ✓ | 0.5b | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
2 calls:
| 7.3s | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
| 24.0ms | (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| 2× | batch-egg-rewrite |
| 740× | log1p-expm1-u_binary32 |
| 740× | expm1-log1p-u_binary32 |
| 216× | prod-diff_binary32 |
| 138× | log1p-udef_binary32 |
| 80× | add-sqr-sqrt_binary32 |
2 calls:
| 42.0ms | (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) |
| 42.0ms | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 18 |
| 1 | 170 | 18 |
| 2 | 1874 | 18 |
| 3 | 5054 | 18 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 929× | times-frac_binary32 |
| 307× | cancel-sign-sub-inv_binary32 |
| 211× | sub-neg_binary32 |
| 183× | fma-def_binary32 |
| 170× | fma-neg_binary32 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 216 | 2816 |
| 1 | 706 | 2670 |
| 2 | 2524 | 2570 |
| 3 | 5065 | 2570 |
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 155 | 1 | 156 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 155 | 3 | 158 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| ▶ | 0.3b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
| ✓ | 0.5b | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
Compiled 4206 to 2825 computations (32.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
| 0.1b | (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) | |
| ✓ | 0.2b | (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3) |
| ✓ | 0.2b | (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) |
| ✓ | 0.2b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
3 calls:
| 355.0ms | (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) |
| 22.0ms | (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3) |
| 5.0ms | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
| 2× | batch-egg-rewrite |
| 504× | log-prod_binary32 |
| 226× | prod-diff_binary32 |
| 189× | expm1-udef_binary32 |
| 188× | log1p-udef_binary32 |
| 177× | pow3_binary32 |
3 calls:
| 91.0ms | (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3) |
| 91.0ms | (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) |
| 91.0ms | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 76 |
| 1 | 258 | 43 |
| 2 | 2562 | 43 |
| 3 | 4879 | 43 |
| 4 | 4898 | 43 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 424× | *-commutative_binary32 |
| 358× | +-commutative_binary32 |
| 336× | fma-def_binary32 |
| 308× | associate-+r+_binary32 |
| 166× | associate-*r/_binary32 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 1153 | 15291 |
| 1 | 4383 | 14884 |
| 2 | 5068 | 14884 |
4 alts after pruning (1 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 323 | 1 | 324 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 2 | 2 |
| Total | 323 | 4 | 327 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| ▶ | 0.7b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (-.f32 (fma.f32 7/9 (*.f32 (*.f32 maxCos ux) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9)) (fma.f32 35/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 5))) (fma.f32 35/3 (*.f32 (*.f32 maxCos (pow.f32 ux 3)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 7) 1/9) (*.f32 7/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 7)))))))) (fma.f32 14/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 6))) (fma.f32 140/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 4))) (*.f32 14/3 (*.f32 (*.f32 maxCos (*.f32 ux ux)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9))))))) |
| ✓ | 0.3b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
| ✓ | 0.5b | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
Compiled 31763 to 23693 computations (25.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
| ✓ | 0.5b | (*.f32 14/3 (*.f32 (*.f32 maxCos (*.f32 ux ux)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9))) |
| ✓ | 0.5b | (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) |
| ✓ | 1.0b | (pow.f32 (-.f32 1 ux) 7) |
| ✓ | 2.8b | (pow.f32 (-.f32 1 ux) 56) |
4 calls:
| 402.0ms | (*.f32 14/3 (*.f32 (*.f32 maxCos (*.f32 ux ux)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9))) |
| 5.0ms | (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) |
| 4.0ms | (pow.f32 (-.f32 1 ux) 7) |
| 3.0ms | (pow.f32 (-.f32 1 ux) 56) |
| 2× | batch-egg-rewrite |
| 300× | log1p-udef_binary32 |
| 220× | prod-diff_binary32 |
| 177× | add-sqr-sqrt_binary32 |
| 172× | log1p-expm1-u_binary32 |
| 172× | expm1-log1p-u_binary32 |
4 calls:
| 63.0ms | (*.f32 14/3 (*.f32 (*.f32 maxCos (*.f32 ux ux)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9))) |
| 63.0ms | (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) |
| 63.0ms | (pow.f32 (-.f32 1 ux) 7) |
| 63.0ms | (pow.f32 (-.f32 1 ux) 56) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 46 |
| 1 | 377 | 40 |
| 2 | 4113 | 40 |
| 3 | 4745 | 40 |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 1× | egg-herbie |
| 693× | fma-neg_binary32 |
| 629× | fma-def_binary32 |
| 577× | cancel-sign-sub-inv_binary32 |
| 292× | associate-*l*_binary32 |
| 284× | distribute-lft-out_binary32 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 141 | 1353 |
| 1 | 401 | 1345 |
| 2 | 1066 | 1312 |
| 3 | 2874 | 1288 |
| 4 | 4906 | 1286 |
| 5 | 5025 | 1286 |
4 alts after pruning (0 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 514 | 0 | 514 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 3 | 3 |
| Total | 514 | 4 | 518 |
| Status | Error | Program |
| ✓ | 0.0b | (fma.f32 ux maxCos (-.f32 1 ux)) |
| ✓ | 0.7b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (-.f32 (fma.f32 7/9 (*.f32 (*.f32 maxCos ux) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9)) (fma.f32 35/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 5))) (fma.f32 35/3 (*.f32 (*.f32 maxCos (pow.f32 ux 3)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9)) (+.f32 (pow.f32 (pow.f32 (-.f32 1 ux) 7) 1/9) (*.f32 7/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 7)))))))) (fma.f32 14/3 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 6))) (fma.f32 140/9 (*.f32 (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9) (*.f32 maxCos (pow.f32 ux 4))) (*.f32 14/3 (*.f32 (*.f32 maxCos (*.f32 ux ux)) (pow.f32 (/.f32 1 (pow.f32 (-.f32 1 ux) 56)) 1/9))))))) |
| ✓ | 0.3b | (*.f32 (cbrt.f32 (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3)) (*.f32 (cbrt.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux)))) (pow.f32 (fma.f32 ux maxCos (-.f32 1 ux)) 2/3))) |
| ✓ | 0.5b | (pow.f32 (cbrt.f32 (fma.f32 ux maxCos (-.f32 1 ux))) 3) |
Compiled 72296 to 56964 computations (21.2% saved)
Total 0.0b remaining (51.9%)
Threshold costs 0.0b (51.9%)
Compiled 56685 to 45700 computations (19.4% 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 208 to 161 computations (22.6% saved)
Loading profile data...