
| Date: | Tuesday, August 20th, 2024 |
|---|---|
| Commit: | fce740b4 on ffi-types |
| Hostname: | nightly with Racket 8.11.1 |
| Seed: | 2024233 |
| Parameters: | 256 points for 4 iterations |
| Flags: | localize:costslocalize:errorsreduce:regimesreduce:avg-errorreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs default |
Time bar (total: 6.4min)
| 336× | egg-herbie |
| 2 802 266× | lower-fma.f32 |
| 2 801 634× | lower-fma.f64 |
| 925 704× | lower-*.f32 |
| 924 226× | lower-*.f64 |
| 587 784× | lower-+.f32 |
| 427× | iter limit |
| 216× | node limit |
| 134× | saturated |
| 28.9s | 285 468× | 0 | valid |
| 12.3s | 43 832× | 1 | valid |
| 7.3s | 17 068× | 2 | valid |
| 571.0ms | 4 318× | 0 | invalid |
| 375.0ms | 384× | 3 | valid |
| 121.0ms | 986× | 0 | exit |
| 98.0ms | 101× | 4 | exit |
| 63.0ms | 101× | 3 | exit |
| 8.0ms | 38× | 1 | exit |
ival-mult: 8.4s (22% of total)ival-add: 3.9s (10.2% of total)const: 3.4s (9.1% of total)ival-sub: 3.3s (8.8% of total)ival-pow: 3.3s (8.6% of total)ival-div: 3.2s (8.3% of total)adjust: 2.6s (6.9% of total)ival-<=: 2.5s (6.6% of total)ival-sin: 2.1s (5.6% of total)ival-cos: 1.6s (4.2% of total)ival-sqrt: 584.0ms (1.5% of total)ival-exp: 447.0ms (1.2% of total)exact: 416.0ms (1.1% of total)ival-==: 384.0ms (1% of total)ival-and: 352.0ms (0.9% of total)ival-neg: 333.0ms (0.9% of total)ival-pow2: 277.0ms (0.7% of total)ival-atan: 264.0ms (0.7% of total)ival-true: 139.0ms (0.4% of total)ival-assert: 130.0ms (0.3% of total)ival-expm1: 108.0ms (0.3% of total)ival-log1p: 82.0ms (0.2% of total)ival-<: 80.0ms (0.2% of total)ival-tan: 63.0ms (0.2% of total)ival-pi: 37.0ms (0.1% of total)ival-hypot: 17.0ms (0% of total)ival-if: 4.0ms (0% of total)ival-fabs: 4.0ms (0% of total)| 832 124× | lower-fma.f32 |
| 831 496× | lower-fma.f64 |
| 634 842× | lower-*.f32 |
| 633 380× | lower-*.f64 |
| 527 046× | lower-/.f32 |
| 291× | iter limit |
| 142× | node limit |
| 13× | saturated |
| 1 458 338× | lower-fma.f32 |
| 1 457 972× | lower-fma.f64 |
| 739 210× | lower-*.f32 |
| 738 408× | lower-*.f64 |
| 405 342× | lower-/.f32 |
| 246× | iter limit |
| 163× | node limit |
| 25× | fuel |
| 17× | done |
| 8× | saturated |
Compiled 28 026 to 9 668 computations (65.5% saved)
Compiled 101 046 to 43 726 computations (56.7% saved)
Compiled 4 893 944 to 314 605 computations (93.6% saved)
| 7.5s | 28 723× | 0 | valid |
| 3.7s | 5 671× | 1 | valid |
| 3.5s | 2 902× | 2 | valid |
| 237.0ms | 144× | 3 | valid |
| 44.0ms | 105× | 1 | exit |
| 41.0ms | 13× | 5 | exit |
| 13.0ms | 57× | 0 | exit |
| 6.0ms | 17× | 0 | invalid |
Compiled 34 374 to 4 086 computations (88.1% saved)
ival-mult: 3.2s (29.4% of total)ival-add: 2.0s (18.7% of total)ival-div: 1.5s (13.9% of total)adjust: 994.0ms (9.3% of total)ival-pow: 719.0ms (6.7% of total)const: 536.0ms (5% of total)ival-sub: 522.0ms (4.9% of total)ival-sin: 413.0ms (3.8% of total)ival-cos: 248.0ms (2.3% of total)ival-sqrt: 155.0ms (1.4% of total)ival-neg: 136.0ms (1.3% of total)ival-exp: 135.0ms (1.3% of total)ival-log1p: 57.0ms (0.5% of total)exact: 55.0ms (0.5% of total)ival-true: 31.0ms (0.3% of total)ival-pow2: 21.0ms (0.2% of total)ival-expm1: 16.0ms (0.1% of total)ival-assert: 15.0ms (0.1% of total)ival-atan: 13.0ms (0.1% of total)ival-tan: 6.0ms (0.1% of total)ival-pi: 6.0ms (0.1% of total)| 42× | egg-herbie |
| 284 538× | lower-fma.f32 |
| 284 536× | lower-fma.f64 |
| 55 266× | lower-*.f32 |
| 55 078× | lower-*.f64 |
| 37 652× | lower-+.f32 |
| 82× | iter limit |
| 54× | saturated |
| 32× | node limit |
Compiled 33 153 to 7 474 computations (77.5% saved)
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | #f | cancellation | 1276 | 4 |
+.f64 | #f | cancellation | 381 | 85 |
sqrt.f64 | #f | oflow-rescue | 208 | 0 |
-.f64 | (-.f64 (*.f64 #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64) t) #s(literal 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 binary64)) | oflow-left | 208 | 0 |
log.f64 | (log.f64 (+.f64 #s(literal 1 binary64) x)) | sensitivity | 181 | 0 |
/.f64 | #f | n/o | 159 | 0 |
/.f64 | #f | o/o | 154 | 0 |
pow.f64 | (pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n) | sensitivity | 124 | 0 |
-.f64 | #f | nan-rescue | 113 | 0 |
/.f64 | #f | u/n | 75 | 0 |
+.f64 | (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) (-.f64 (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) #s(literal 3 binary64))) (*.f64 (*.f64 x1 x1) (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) #s(literal 6 binary64)))) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))))) (*.f64 (*.f64 x1 x1) x1)) | nan-rescue | 56 | 0 |
| ↳ | (*.f64 x1 x1) | overflow | 420 | |
| ↳ | (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)) | overflow | 350 | |
| ↳ | (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) | overflow | 1 | |
| ↳ | (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) (-.f64 (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) #s(literal 3 binary64))) (*.f64 (*.f64 x1 x1) (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) #s(literal 6 binary64)))) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) | overflow | 128 | |
| ↳ | (*.f64 #s(literal 3 binary64) x1) | overflow | 5 | |
| ↳ | (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) (-.f64 (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) #s(literal 3 binary64))) | overflow | 20 | |
| ↳ | (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) | overflow | 280 | |
| ↳ | (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) | overflow | 280 | |
| ↳ | (+.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) (-.f64 (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) #s(literal 3 binary64))) (*.f64 (*.f64 x1 x1) (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) #s(literal 6 binary64)))) | overflow | 90 | |
| ↳ | (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) | overflow | 70 | |
| ↳ | (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) | overflow | 350 | |
| ↳ | (*.f64 (*.f64 x1 x1) (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) #s(literal 6 binary64))) | overflow | 70 | |
| ↳ | (+.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) (-.f64 (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) #s(literal 3 binary64))) (*.f64 (*.f64 x1 x1) (-.f64 (*.f64 #s(literal 4 binary64) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64)))) #s(literal 6 binary64)))) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))) (*.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (/.f64 (-.f64 (+.f64 (*.f64 (*.f64 #s(literal 3 binary64) x1) x1) (*.f64 #s(literal 2 binary64) x2)) x1) (+.f64 (*.f64 x1 x1) #s(literal 1 binary64))))) | overflow | 128 | |
| ↳ | (*.f64 x1 x1) | overflow | 70 | |
| ↳ | (*.f64 (*.f64 x1 x1) x1) | overflow | 97 | |
/.f64 | #f | n/u | 54 | 0 |
/.f64 | #f | u/u | 43 | 0 |
/.f64 | #f | o/n | 41 | 0 |
*.f64 | #f | n*u | 41 | 0 |
*.f64 | #f | n*o | 31 | 0 |
pow.f64 | (pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n) | oflow-rescue | 17 | 0 |
| ↳ | (pow.f64 (+.f64 #s(literal 1 binary64) (/.f64 i n)) n) | overflow | 47 | |
| ↳ | (/.f64 i n) | overflow | 17 | |
| ↳ | (+.f64 #s(literal 1 binary64) (/.f64 i n)) | overflow | 17 | |
sqrt.f64 | #f | uflow-rescue | 8 | 0 |
exp.f64 | #f | sensitivity | 2 | 0 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 3858 | 240 |
| - | 120 | 6534 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 3858 | 158 | 82 |
| - | 120 | 186 | 6348 |
| number | freq |
|---|---|
| 0 | 6774 |
| 1 | 3548 |
| 2 | 391 |
| 3 | 39 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 30 | 1 | 0 |
| - | 2 | 0 | 9 |
| 1.7s | 16 424× | 0 | valid |
| 1.3s | 3 728× | 1 | valid |
| 505.0ms | 1 316× | 2 | valid |
| 26.0ms | 36× | 3 | valid |
Compiled 7 615 to 1 486 computations (80.5% saved)
ival-mult: 564.0ms (24.4% of total)ival-add: 411.0ms (17.8% of total)ival-div: 338.0ms (14.6% of total)adjust: 204.0ms (8.8% of total)ival-pow: 160.0ms (6.9% of total)ival-sub: 151.0ms (6.5% of total)ival-sin: 145.0ms (6.3% of total)const: 110.0ms (4.8% of total)ival-cos: 67.0ms (2.9% of total)ival-exp: 44.0ms (1.9% of total)ival-sqrt: 22.0ms (1% of total)ival-true: 19.0ms (0.8% of total)exact: 18.0ms (0.8% of total)ival-neg: 15.0ms (0.6% of total)ival-pow2: 14.0ms (0.6% of total)ival-assert: 9.0ms (0.4% of total)ival-atan: 5.0ms (0.2% of total)ival-log1p: 5.0ms (0.2% of total)ival-expm1: 5.0ms (0.2% of total)ival-tan: 3.0ms (0.1% of total)ival-pi: 2.0ms (0.1% of total)96 calls:
| 1.2s | x |
| 614.0ms | x1 |
| 326.0ms | b |
| 325.0ms | (-.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) eps)) (exp.f64 (neg.f64 (*.f64 (-.f64 #s(literal 1 binary64) eps) x)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) eps) #s(literal 1 binary64)) (exp.f64 (neg.f64 (*.f64 (+.f64 #s(literal 1 binary64) eps) x))))) |
| 320.0ms | c |
Compiled 11 825 to 6 129 computations (48.2% saved)
5256 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 403.0ms | x | @ | inf | (* eps (+ (* eps (/ 1/8 (* x x))) 1/2)) |
| 200.0ms | t | @ | -inf | (pow (+ (* t 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) -170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) 15/16) |
| 93.0ms | t | @ | 0 | (* (pow (+ (* t 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) -170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) 7/8) (pow (+ (* t 170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) -170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000) 1/8)) |
| 78.0ms | b | @ | -inf | (- (neg b) (sqrt (- (* b b) (* 4 (* a c))))) |
| 67.0ms | x | @ | inf | (/ (- (* (+ 1 (/ 1 eps)) (exp (neg (* (- 1 eps) x)))) (* (- (/ 1 eps) 1) (exp (neg (* (+ 1 eps) x))))) 2) |
| 43× | search |
| 2× | random |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 54.5% | 45.5% | 0% | 0% | 0% | 0 |
| 21.4% | 11.7% | 42.9% | 45.5% | 0% | 0% | 0% | 1 |
| 37.4% | 20.4% | 34.1% | 45.5% | 0% | 0% | 0% | 2 |
| 48.7% | 26.2% | 27.7% | 45.5% | 0% | 0.6% | 0% | 3 |
| 57.7% | 30.7% | 22.6% | 45.5% | 0% | 1.2% | 0% | 4 |
| 71.2% | 37.7% | 15.3% | 45.5% | 0% | 1.6% | 0% | 5 |
| 72.9% | 38.4% | 14.3% | 45.5% | 0% | 1.8% | 0% | 6 |
| 77.9% | 40.7% | 11.6% | 45.5% | 0% | 2.2% | 0% | 7 |
| 81.5% | 42.6% | 9.7% | 45.5% | 0% | 2.3% | 0% | 8 |
| 84.1% | 43.8% | 8.3% | 45.5% | 0% | 2.5% | 0% | 9 |
| 86.2% | 44.6% | 7.2% | 45.5% | 0% | 2.7% | 0% | 10 |
| 88.2% | 45.6% | 6.1% | 45.5% | 0% | 2.8% | 0% | 11 |
| 89.1% | 45.9% | 5.6% | 45.5% | 0% | 2.9% | 0% | 12 |
Compiled 1 402 to 721 computations (48.6% saved)
| 204× | binary-search |
| 117× | left-value |
| 197× | narrow-enough |
| 7× | predicate-same |
| 1.4s | 11 001× | 0 | valid |
| 280.0ms | 951× | 1 | valid |
| 100.0ms | 265× | 2 | valid |
| 100.0ms | 722× | 0 | invalid |
| 5.0ms | 7× | 3 | valid |
| 2.0ms | 17× | 0 | exit |
Compiled 71 511 to 40 225 computations (43.7% saved)
ival-mult: 539.0ms (36.5% of total)ival-div: 253.0ms (17.2% of total)ival-sub: 209.0ms (14.2% of total)ival-add: 173.0ms (11.7% of total)adjust: 97.0ms (6.6% of total)ival-pow: 79.0ms (5.4% of total)ival-exp: 44.0ms (3% of total)ival-neg: 27.0ms (1.8% of total)ival-sqrt: 16.0ms (1.1% of total)ival-expm1: 13.0ms (0.9% of total)exact: 10.0ms (0.7% of total)ival-true: 9.0ms (0.6% of total)ival-assert: 5.0ms (0.3% of total)ival-log1p: 1.0ms (0.1% of total)ival-pi: 0.0ms (0% of total)Loading profile data...