Details

Time bar (total: 5.7s)

analyze10.0ms (0.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.1%99.9%0
0.1%0%99.9%1
Compiler

Compiled 33 to 24 computations (27.3% saved)

sample3.0s (52%)

Results
2.8s8254×body128valid
1.0msbody256valid
Compiler

Compiled 76 to 55 computations (27.6% saved)

simplify28.0ms (0.5%)

Algorithm
egg-herbie
Rules
199×fma-def_binary32
155×fma-neg_binary32
47×cancel-sign-sub-inv_binary32
34×sub-neg_binary32
26×unsub-neg_binary32
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0710
1158
2358
3638
41428
52628
63818
74348
84588
94638
104288

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(fma.f32 ux maxCos (-.f32 1 ux))
Compiler

Compiled 34 to 22 computations (35.3% saved)

localize30.0ms (0.5%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f32 ux maxCos (-.f32 1 ux))

series8.0ms (0.1%)

Counts
1 → 24
Calls

1 calls:

8.0ms
(fma.f32 ux maxCos (-.f32 1 ux))

rewrite96.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
583×log1p-expm1-u_binary32
583×expm1-log1p-u_binary32
265×log-prod_binary32
227×prod-diff_binary32
110×expm1-udef_binary32
Counts
1 → 31
Calls

1 calls:

94.0ms
(fma.f32 ux maxCos (-.f32 1 ux))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11238
214548
349608
449658
000
100

simplify46.0ms (0.8%)

Algorithm
egg-herbie
Rules
161×fma-def_binary32
149×fma-neg_binary32
26×associate--r+_binary32
26×sub-neg_binary32
24×distribute-rgt-in_binary32
Counts
55 → 39
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
014207
133171
269171
3120171
4206171
5332171
6438171
7446171
8457171
9422171

prune64.0ms (1.1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New35439
Fresh000
Picked011
Done000
Total35540
Error
0.0b
Counts
40 → 5
Alt Table
StatusErrorProgram
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)
Compiler

Compiled 522 to 333 computations (36.2% saved)

localize46.0ms (0.8%)

Local error

Found 3 expressions with local error:

NewErrorProgram
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))))

series38.0ms (0.7%)

Counts
2 → 48
Calls

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))))

rewrite126.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
658×expm1-log1p-u_binary32
657×log1p-expm1-u_binary32
251×prod-diff_binary32
155×fma-udef_binary32
125×expm1-udef_binary32
Counts
2 → 64
Calls

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))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
114218
2164618
3488918
4498118
5496518
000
100

simplify107.0ms (1.9%)

Algorithm
egg-herbie
Rules
785×fma-def_binary32
382×times-frac_binary32
342×fma-neg_binary32
272×sub-neg_binary32
196×distribute-rgt-in_binary32
Counts
112 → 118
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01741217
15691147
221461123
349911122
451691122

prune260.0ms (4.5%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1561157
Fresh123
Picked011
Done011
Total1575162
Error
0b
Counts
162 → 5
Alt Table
StatusErrorProgram
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))
Compiler

Compiled 2871 to 1913 computations (33.4% saved)

localize85.0ms (1.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
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)))

series116.0ms (2%)

Counts
4 → 51
Calls

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))

rewrite97.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
706×prod-diff_binary32
221×expm1-udef_binary32
220×log1p-udef_binary32
127×add-sqr-sqrt_binary32
121×log1p-expm1-u_binary32
Counts
4 → 115
Calls

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)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01250
126149
2308549
3504449
000
100

simplify106.0ms (1.8%)

Algorithm
egg-herbie
Rules
611×times-frac_binary32
493×unswap-sqr_binary32
336×div-sub_binary32
279×fma-def_binary32
271×associate-*l*_binary32
Counts
166 → 149
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
046772
1119680
2302680
3730678
42202678
54568678
64975678

prune241.0ms (4.2%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New1481149
Fresh112
Picked011
Done022
Total1495154
Error
0b
Counts
154 → 5
Alt Table
StatusErrorProgram
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)
Compiler

Compiled 3326 to 1963 computations (41% saved)

localize88.0ms (1.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
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))

series265.0ms (4.6%)

Counts
3 → 48
Calls

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))

rewrite155.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
610×prod-diff_binary32
402×fma-udef_binary32
284×fma-def_binary32
206×expm1-udef_binary32
205×log1p-udef_binary32
Counts
3 → 100
Calls

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))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01342
126436
2275436
3474836
4480536
5500736
000
100

simplify117.0ms (2%)

Algorithm
egg-herbie
Rules
795×times-frac_binary32
505×associate-*l*_binary32
476×sub-neg_binary32
324×fma-neg_binary32
317×cancel-sign-sub-inv_binary32
Counts
148 → 146
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
073950
1213748
2535704
31442664
43630664
55128664

prune270.0ms (4.7%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New1780178
Fresh011
Picked011
Done033
Total1785183
Error
0b
Counts
183 → 5
Alt Table
StatusErrorProgram
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)
Compiler

Compiled 3786 to 2053 computations (45.8% saved)

regimes287.0ms (5%)

Accuracy

Total 0.0b remaining (75.7%)

Threshold costs 0.0b (75.7%)

Counts
33 → 1
Compiler

Compiled 2030 to 1489 computations (26.7% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary32
sub-neg_binary32
*-commutative_binary32
neg-sub0_binary32
neg-mul-1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
1108
2148
3168
4178
5168

end63.0ms (1.1%)

Compiler

Compiled 90 to 63 computations (30% saved)

Profiling

Loading profile data...