HairBSDF, Mp, lower

Time bar (total: 2.5s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze335.0ms (13.3%)

Memory
34.1MiB live, 357.0MiB allocated; 56ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%3%97%0%0%0%0
0%0%3%97%0%0%0%1
0%0%3%97%0%0%0%2
0%0%3%97%0%0%0%3
0%0%3%97%0%0%0%4
0%0%3%97%0%0%0%5
0%0%1.5%97%0%1.5%0%6
0%0%1.5%97%0%1.5%0%7
0%0%1.5%97%0%1.5%0%8
0%0%1.5%97%0%1.5%0%9
0%0%1.5%97%0%1.5%0%10
0%0%1.5%97%0%1.5%0%11
0%0%1.5%97%0%1.5%0%12
Compiler

Compiled 65 to 44 computations (32.3% saved)

sample1.8s (71%)

Memory
25.4MiB live, 1 847.9MiB allocated; 307ms collecting garbage
Samples
1.3s8 256×0valid
19.0ms129×0invalid
Precisions
Click to see histograms. Total time spent on operations: 1.0s
ival-div: 239.0ms (23.2% of total)
const: 196.0ms (19% of total)
ival-mult: 182.0ms (17.7% of total)
ival-log: 92.0ms (8.9% of total)
ival-<=: 87.0ms (8.4% of total)
ival-add: 72.0ms (7% of total)
ival-exp: 68.0ms (6.6% of total)
ival-sub: 67.0ms (6.5% of total)
exact: 12.0ms (1.2% of total)
ival-and: 10.0ms (1% of total)
adjust: 3.0ms (0.3% of total)
ival-assert: 3.0ms (0.3% of total)
Bogosity

explain249.0ms (9.9%)

Memory
-94.8MiB live, 273.7MiB allocated; 51ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
893(-2.510824670005249e-23 -1.9507974098294463e-31 -1.4683198190928054e-24 -7.448658643510912e-29 6.608070979297054e-9)29(-1.8022246405760534e-37 3.651396340842439e-8 -0.9401121139526367 0.009680032730102539 1.0604609231761389e-13)(/.f32 (*.f32 cosTheta_i cosTheta_O) v)
854(-2.510824670005249e-23 -1.9507974098294463e-31 -1.4683198190928054e-24 -7.448658643510912e-29 6.608070979297054e-9)33(-2.2730530100554654e-36 2.4062487113951647e-7 -4.452617778892529e-23 -1.752719824178664e-18 1.3090720347996854e-11)(/.f32 (*.f32 sinTheta_i sinTheta_O) v)
30-0-(log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))
23(-5.692393136462605e-28 1.7844130440816828e-38 -1.398646337635867e-10 8.373729810872157e-32 0.001665049814619124)2(2.095283705152011e-28 3.619143526534252e-11 0.01887393929064274 -2.233670351139321e-16 0.014556970447301865)(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))
00-0-(/.f32 #s(literal 1 binary32) v)
00-0-(/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))
00-0-#s(literal 2 binary32)
00-0-(+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))))
00-0-sinTheta_i
00-0-v
00-0-cosTheta_i
00-0-(+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32))
00-0-sinTheta_O
00-0-(*.f32 #s(literal 2 binary32) v)
00-0-(*.f32 sinTheta_i sinTheta_O)
00-0-#s(literal 1 binary32)
00-0-(*.f32 cosTheta_i cosTheta_O)
00-0-#s(literal 6931/10000 binary32)
00-0-(-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v))
00-0-(-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v))
00-0-cosTheta_O
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f32(/.f32 (*.f32 sinTheta_i sinTheta_O) v)u/n80
(*.f32 sinTheta_i sinTheta_O)underflow79
exp.f32(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 #s(literal 1 binary32) v)) #s(literal 6931/10000 binary32)) (log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))))sensitivity35
/.f32(/.f32 (*.f32 cosTheta_i cosTheta_O) v)u/n30
(*.f32 cosTheta_i cosTheta_O)underflow82
log.f32(log.f32 (/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v)))oflow-rescue30
(/.f32 #s(literal 1 binary32) (*.f32 #s(literal 2 binary32) v))overflow3
Confusion
Predicted +Predicted -
+34
-14235
Precision
0.17647058823529413
Recall
0.42857142857142855
Confusion?
Predicted +Predicted MaybePredicted -
+331
-142233
Precision?
0.2727272727272727
Recall?
0.8571428571428571
Freqs
test
numberfreq
0239
117
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
73.0ms512×0valid
Compiler

Compiled 295 to 67 computations (77.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 51.0ms
ival-div: 14.0ms (27.5% of total)
ival-mult: 9.0ms (17.7% of total)
ival-log: 7.0ms (13.7% of total)
const: 7.0ms (13.7% of total)
ival-exp: 4.0ms (7.8% of total)
ival-add: 4.0ms (7.8% of total)
ival-sub: 4.0ms (7.8% of total)
exact: 1.0ms (2% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess143.0ms (5.7%)

Memory
14.3MiB live, 61.8MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0170504
1465439
21183422
33829420
03033
04333
14633
25033
36133
411133
540733
6380033
0810733
Stop Event
saturated
node limit
iter limit
node limit

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...