Details

Time bar (total: 5.1s)

analyze1.6s (32.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.8%99.2%0
0%0.8%99.2%1
0%0.8%99.2%2
0%0.8%99.2%3
0%0.8%99.2%4
0%0.8%99.2%5
0.2%0.4%99.4%6
0.2%0.4%99.4%7
0.2%0.4%99.4%8
0.2%0.4%99.4%9
0.3%0.2%99.5%10
0.3%0.2%99.5%11
0.3%0.2%99.5%12
0.3%0.2%99.5%13
0.3%0.1%99.6%14
Compiler

Compiled 62 to 45 computations (27.4% saved)

sample3.2s (63.5%)

Results
2.8s8256×body128valid
395.0ms1079×body128invalid
Compiler

Compiled 124 to 90 computations (27.4% saved)

preprocess53.0ms (1%)

Algorithm
egg-herbie
Rules
516×fma-neg_binary32
426×fma-def_binary32
304×distribute-rgt-in_binary32
225×unsub-neg_binary32
193×cancel-sign-sub-inv_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
075259
1186217
2445217
3942182
41406182
51644182
61945182
72744182
84465182
044
Stop Event
saturated
node limit
Compiler

Compiled 29 to 20 computations (31% saved)

simplify32.0ms (0.6%)

Algorithm
egg-herbie
Rules
717×fma-def_binary32
598×times-frac_binary32
385×fma-neg_binary32
232×div-sub_binary32
205×distribute-neg-frac_binary32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01837
13831
28431
317226
426126
531226
638226
748626
874626
988026
10108526
11176426
12392226
Stop Event
node limit
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
8.7b
(/.f32 (fma.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) n0_i (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 146 to 89 computations (39% saved)

localize53.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
0.2b
(*.f32 (-.f32 1 u) normAngle)
0.4b
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
1.4b
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle)))

series83.0ms (1.6%)

Counts
4 → 96
Calls

27 calls:

13.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
normAngle
0
6.0ms
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
normAngle
0
6.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
n0_i
-inf
4.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
n0_i
0
4.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
n0_i
inf

rewrite0.0ms (0%)

Algorithm
batch-egg-rewrite

end0.0ms (0%)

Profiling

Loading profile data...