HairBSDF, gamma for a refracted ray

Time bar (total: 1.9s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze210.0ms (11.2%)

Memory
3.3MiB live, 83.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%6.3%93.7%0%0%0%0
0%0%6.3%93.7%0%0%0%1
0%0%6.3%93.7%0%0%0%2
0%0%6.3%93.7%0%0%0%3
0%0%6.3%93.7%0%0%0%4
0%0%6.3%93.7%0%0%0%5
12.5%0.8%5.5%93.7%0%0%0%6
12.5%0.8%5.5%93.7%0%0%0%7
16.7%1%4.9%93.7%0%0.4%0%8
23.7%1.4%4.4%93.7%0%0.5%0%9
26.2%1.4%3.9%93.7%0%1%0%10
33.9%1.5%3%93.7%0%1.8%0%11
38.9%1.7%2.7%93.7%0%1.9%0%12
Compiler

Compiled 42 to 28 computations (33.3% saved)

sample70.0ms (3.7%)

Memory
0.3MiB live, 29.9MiB allocated
Samples
24.0ms260×0valid
24.0ms261×0invalid
Precisions
Click to see histograms. Total time spent on operations: 36.0ms
ival-<=: 7.0ms (19.6% of total)
ival-mult: 6.0ms (16.8% of total)
ival-sqrt: 6.0ms (16.8% of total)
ival-div: 5.0ms (14% of total)
ival-sub: 5.0ms (14% of total)
ival-asin: 3.0ms (8.4% of total)
ival-and: 2.0ms (5.6% of total)
exact: 1.0ms (2.8% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
Bogosity

explain1.2s (65.9%)

Memory
4.7MiB live, 922.1MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
250-0-(sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))
00-0-eta
00-0-#s(literal 1 binary32)
00-0-(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))
00-0-(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))
00-0-(-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))
00-0-(sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))
00-0-(/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))))
00-0-(*.f32 eta eta)
00-0-(*.f32 sinTheta_O sinTheta_O)
00-0-(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))
00-0-sinTheta_O
00-0-h
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f32(sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))uflow-rescue250
(*.f32 sinTheta_O sinTheta_O)underflow352
(-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O)))))underflow25
(/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))underflow177
(*.f32 eta eta)underflow25
Confusion
Predicted +Predicted -
+250
-0231
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+2500
-00231
Precision?
1.0
Recall?
1.0
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
0231
125
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
8.383544921875
Average Time
0.03274822235107422
Samples
253.0ms3 072×0valid
Compiler

Compiled 3 660 to 648 computations (82.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 166.0ms
ival-div: 36.0ms (21.7% of total)
ival-mult: 36.0ms (21.7% of total)
ival-sqrt: 36.0ms (21.7% of total)
ival-sub: 28.0ms (16.9% of total)
ival-asin: 24.0ms (14.5% of total)
ival-true: 2.0ms (1.2% of total)
exact: 2.0ms (1.2% of total)
adjust: 1.0ms (0.6% of total)
ival-assert: 1.0ms (0.6% of total)

preprocess335.0ms (17.8%)

Memory
5.4MiB live, 34.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051167
1110167
2220167
3469167
4901167
52008167
62806167
73788167
84947167
95755167
106216167
116594167
126915167
137748167
147844167
157992167
01318
02218
13318
25118
37718
412318
517718
626818
752318
886318
9151318
10277118
11438418
12545718
13588718
14612718
15624418
16628518
17768318
0820418
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))
Outputs
(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))
Symmetry

(abs eta)

(abs sinTheta_O)

Compiler

Compiled 18 to 13 computations (27.8% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.5%
(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))
Compiler

Compiled 36 to 26 computations (27.8% saved)

simplify20.0ms (1.1%)

Memory
2.3MiB live, 18.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01318
12318
23618
34418
44918
55018
Stop Event
saturated
Calls
Call 1
Inputs
(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))
Outputs
(asin.f32 (/.f32 h (sqrt.f32 (-.f32 (*.f32 eta eta) (/.f32 (*.f32 sinTheta_O sinTheta_O) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 sinTheta_O sinTheta_O))))))))

soundness1.0ms (0.1%)

Memory
-9.8MiB live, 0.2MiB allocated
Stop Event
fuel
Compiler

Compiled 18 to 13 computations (27.8% saved)

preprocess4.0ms (0.2%)

Memory
3.0MiB live, 3.0MiB allocated
Remove

(abs sinTheta_O)

(abs eta)

Compiler

Compiled 216 to 156 computations (27.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...