
| Date: | Thursday, August 29th, 2024 |
|---|---|
| Commit: | 1756e4cd on tiny-egraph-speedups |
| Hostname: | nightly with Racket 8.11.1 |
| Seed: | 2024242 |
| 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: 4.7min)
| 28.6s | 41 559× | 2 | valid |
| 25.3s | 144 802× | 0 | invalid |
| 18.7s | 92 033× | 1 | valid |
| 9.8s | 4 809× | 5 | exit |
| 9.5s | 94 630× | 0 | valid |
| 2.2s | 2 941× | 3 | valid |
| 443.0ms | 2 352× | 1 | exit |
| 336.0ms | 4 167× | 0 | exit |
| 59.0ms | 11× | 4 | exit |
| 29.0ms | 5× | 2 | exit |
| 8.0ms | 2× | 3 | exit |
| 5.0ms | 5× | 4 | valid |
ival-tan: 13.4s (17.3% of total)ival-pow: 10.0s (12.9% of total)ival-mult: 6.2s (7.9% of total)const: 5.2s (6.8% of total)adjust: 5.1s (6.6% of total)ival-cos: 4.7s (6% of total)ival-div: 3.9s (5% of total)ival-sin: 3.5s (4.6% of total)ival-sub: 3.4s (4.4% of total)ival-log: 3.3s (4.3% of total)ival-add: 3.2s (4.1% of total)ival-expm1: 2.7s (3.5% of total)ival-<=: 2.2s (2.8% of total)ival-fabs: 2.1s (2.8% of total)ival-exp: 2.1s (2.7% of total)ival-log1p: 1.1s (1.4% of total)ival-sqrt: 1.0s (1.3% of total)ival-<: 942.0ms (1.2% of total)ival-atan: 651.0ms (0.8% of total)ival-and: 599.0ms (0.8% of total)ival-fmin: 498.0ms (0.6% of total)ival-neg: 397.0ms (0.5% of total)exact: 335.0ms (0.4% of total)ival->: 324.0ms (0.4% of total)ival-cbrt: 267.0ms (0.3% of total)ival-assert: 183.0ms (0.2% of total)ival-true: 69.0ms (0.1% of total)| 242× | egg-herbie |
| 318× | iter limit |
| 164× | node limit |
| 81× | saturated |
| 203× | iter limit |
| 137× | node limit |
| 22× | fuel |
| 6× | done |
| 2× | saturated |
Compiled 8 552 to 5 220 computations (39% saved)
| 215× | iter limit |
| 106× | node limit |
| 3× | saturated |
| 7.8s | 5 598× | 2 | valid |
| 5.8s | 9 785× | 1 | valid |
| 3.2s | 10 625× | 0 | valid |
| 905.0ms | 392× | 3 | valid |
| 388.0ms | 915× | 0 | invalid |
| 40.0ms | 66× | 0 | exit |
| 17.0ms | 9× | 5 | exit |
| 5.0ms | 2× | 4 | valid |
Compiled 22 375 to 3 290 computations (85.3% saved)
ival-mult: 2.4s (16.3% of total)ival-tan: 2.0s (13.5% of total)adjust: 1.8s (12.3% of total)ival-div: 1.7s (11.8% of total)ival-add: 1.2s (8.1% of total)ival-pow: 858.0ms (5.9% of total)ival-sub: 741.0ms (5.1% of total)ival-cos: 641.0ms (4.4% of total)const: 620.0ms (4.3% of total)ival-sin: 513.0ms (3.5% of total)ival-log: 400.0ms (2.8% of total)ival-exp: 371.0ms (2.6% of total)ival-log1p: 268.0ms (1.9% of total)ival-neg: 258.0ms (1.8% of total)ival-pow2: 220.0ms (1.5% of total)ival-sqrt: 182.0ms (1.3% of total)ival-expm1: 147.0ms (1% of total)ival-cosh: 77.0ms (0.5% of total)ival-cbrt: 55.0ms (0.4% of total)exact: 44.0ms (0.3% of total)ival-atan2: 24.0ms (0.2% of total)ival-hypot: 23.0ms (0.2% of total)ival-true: 23.0ms (0.2% of total)ival-atan: 21.0ms (0.1% of total)ival-assert: 11.0ms (0.1% of total)ival-fabs: 1.0ms (0% of total)Compiled 2 691 730 to 293 031 computations (89.1% saved)
Compiled 57 093 to 32 215 computations (43.6% saved)
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
-.f64 | #f | cancellation | 4142 | 25 |
log.f64 | #f | sensitivity | 760 | 3 |
/.f64 | #f | u/u | 443 | 0 |
sqrt.f64 | #f | oflow-rescue | 426 | 0 |
+.f64 | #f | cancellation | 364 | 1 |
/.f64 | #f | u/n | 101 | 0 |
pow.f64 | (pow.f64 (+.f64 x #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) n)) | sensitivity | 67 | 0 |
-.f64 | #f | nan-rescue | 29 | 0 |
/.f64 | (/.f64 (*.f64 eps (-.f64 (exp.f64 (*.f64 (+.f64 a b) eps)) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)))) | n/u | 24 | 0 |
| ↳ | (*.f64 b eps) | underflow | 144 | |
| ↳ | (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) | underflow | 142 | |
| ↳ | (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64)) | underflow | 144 | |
| ↳ | (*.f64 (-.f64 (exp.f64 (*.f64 a eps)) #s(literal 1 binary64)) (-.f64 (exp.f64 (*.f64 b eps)) #s(literal 1 binary64))) | underflow | 232 | |
| ↳ | (*.f64 a eps) | underflow | 142 | |
sqrt.f64 | #f | uflow-rescue | 16 | 0 |
/.f64 | (/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 x x)) | n/o | 4 | 0 |
| ↳ | (*.f64 x x) | overflow | 59 | |
exp.f64 | (exp.f64 (neg.f64 x)) | sensitivity | 2 | 0 |
/.f64 | (/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a) | o/n | 1 | 0 |
| ↳ | (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) | overflow | 1 | |
| ↳ | (*.f64 b_2 b_2) | overflow | 90 | |
| ↳ | (*.f64 a c) | overflow | 28 | |
| ↳ | (-.f64 (*.f64 b_2 b_2) (*.f64 a c)) | overflow | 105 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 5198 | 11 |
| - | 159 | 1800 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 5198 | 8 | 3 |
| - | 159 | 19 | 1781 |
| number | freq |
|---|---|
| 0 | 1811 |
| 1 | 4551 |
| 2 | 641 |
| 3 | 114 |
| 4 | 51 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 28 | 0 | 0 |
| - | 0 | 0 | 0 |
| 1.9s | 2 622× | 2 | valid |
| 1.1s | 5 722× | 1 | valid |
| 491.0ms | 5 808× | 0 | valid |
| 110.0ms | 182× | 3 | valid |
| 2.0ms | 2× | 4 | valid |
Compiled 2 154 to 763 computations (64.6% saved)
ival-tan: 1.1s (36.7% of total)adjust: 235.0ms (7.9% of total)ival-div: 206.0ms (7% of total)ival-cos: 204.0ms (6.9% of total)ival-log: 180.0ms (6.1% of total)ival-sub: 147.0ms (5% of total)ival-sin: 139.0ms (4.7% of total)ival-exp: 131.0ms (4.4% of total)ival-sqrt: 130.0ms (4.4% of total)ival-add: 105.0ms (3.5% of total)ival-pow: 95.0ms (3.2% of total)ival-mult: 94.0ms (3.2% of total)ival-log1p: 59.0ms (2% of total)ival-atan: 56.0ms (1.9% of total)ival-expm1: 25.0ms (0.8% of total)ival-neg: 22.0ms (0.7% of total)ival-cbrt: 18.0ms (0.6% of total)ival-true: 12.0ms (0.4% of total)exact: 8.0ms (0.3% of total)ival-assert: 6.0ms (0.2% of total)492 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 97.0ms | eps | @ | inf | ((/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ (/ (+ b a) b) a) (/ (+ b a) b) (+ b a) (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ 1 a) (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ 1 b) (+ (* (/ (* (+ (* (* b a) b) (* (* b a) a)) -1/2) (* b b)) (/ (/ (+ b a) a) a)) (* (/ 1/2 b) (/ (pow (+ b a) 2) a))) (/ (* (+ (* (* b a) b) (* (* b a) a)) -1/2) (* b b)) (+ (* (* b a) b) (* (* b a) a)) (/ (* eps (- (exp (* (+ a b) eps)) 1)) (* (- (exp (* a eps)) 1) (- (exp (* b eps)) 1))) (/ (/ (* (- (exp (* eps (+ b a))) 1) eps) (- (exp (* eps b)) 1)) (- (exp (* eps a)) 1)) (/ (* (- (exp (* eps (+ b a))) 1) eps) (- (exp (* eps b)) 1)) (* (- (exp (* eps (+ b a))) 1) eps) (- (exp (* eps (+ b a))) 1) (/ (pow (+ b a) 2) a) (* (/ 1/2 b) (/ (pow (+ b a) 2) a)) (* eps (+ b a))) |
| 59.0ms | x | @ | 0 | ((- (cbrt (+ x 1)) (cbrt x)) (* (cbrt (/ (/ 1 x) x)) 1/3) (cbrt (/ (/ 1 x) x)) (/ (/ 1 x) x) (- (cbrt (+ x 1)) (cbrt x)) (cbrt (+ x 1)) (cbrt x) (pow (pow x 1/6) 2) (- (cbrt (+ x 1)) (pow (pow x 1/6) 2)) (cbrt (+ x 1)) (+ x 1) (- (pow (exp 1/3) (log (+ 1 x))) (cbrt x)) (pow (exp 1/3) (log (+ 1 x))) (exp 1/3) (log (+ 1 x)) (- (cbrt (+ x 1)) (cbrt x)) (/ (+ (* (cbrt (pow x 4)) 1/3) (+ (* (cbrt (/ (/ 1 x) x)) 5/81) (* -1/9 (cbrt x)))) (* x x)) (+ (* (cbrt (pow x 4)) 1/3) (+ (* (cbrt (/ (/ 1 x) x)) 5/81) (* -1/9 (cbrt x)))) (cbrt (pow x 4)) (pow x 1/6)) |
| 53.0ms | a | @ | 0 | ((/ (- (neg b_2) (sqrt (+ (* b_2 b_2) (* (neg a) c)))) a) (- (neg b_2) (sqrt (+ (* b_2 b_2) (* (neg a) c)))) (neg b_2) (sqrt (+ (* b_2 b_2) (* (neg a) c))) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (* -1/2 (/ c b_2)) (/ c b_2) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (* (* (/ a b_2) -1/2) c) (* (/ a b_2) -1/2) (/ (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (- (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (sqrt (- (* b_2 b_2) (* a c))) (+ (* b_2 b_2) (+ (* c a) (* b_2 b_2))) (+ (* c a) (* b_2 b_2)) (* b_2 b_2) (* (- (sqrt (neg (+ (* c a) (* b_2 b_2)))) b_2) a) (neg a) (+ (* (* -1/2 c) (/ a b_2)) b_2) (/ (+ (* b_2 b_2) (+ (* c a) (* b_2 b_2))) (* (- (sqrt (neg (+ (* c a) (* b_2 b_2)))) b_2) a)) (sqrt (neg (+ (* c a) (* b_2 b_2))))) |
| 53.0ms | c | @ | -inf | ((/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (* (/ c b_2) -1/2) (/ c b_2) (/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) (* -2 b_2) (* (neg b_2) (+ (* (/ (/ c b_2) b_2) -1/2) (/ 2 a))) (/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (neg b_2) (+ (* (/ (/ c b_2) b_2) -1/2) (/ 2 a)) (* (+ (* (* c -1/8) (/ a (pow b_2 3))) (/ -1/2 b_2)) c) (/ (+ (neg b_2) (sqrt (- (* b_2 b_2) (* a c)))) a) (+ (* (* c -1/8) (/ a (pow b_2 3))) (/ -1/2 b_2)) (* c -1/8) (+ (neg b_2) (sqrt (/ (- (pow b_2 12) (pow (* c a) 6)) (* (+ (* c a) (* b_2 b_2)) (+ (pow (* (+ (* c a) (* b_2 b_2)) (* c a)) 2) (pow b_2 8)))))) (/ (+ (neg b_2) (sqrt (/ (- (pow b_2 12) (pow (* c a) 6)) (* (+ (* c a) (* b_2 b_2)) (+ (pow (* (+ (* c a) (* b_2 b_2)) (* c a)) 2) (pow b_2 8)))))) a) (sqrt (/ (- (pow b_2 12) (pow (* c a) 6)) (* (+ (* c a) (* b_2 b_2)) (+ (pow (* (+ (* c a) (* b_2 b_2)) (* c a)) 2) (pow b_2 8))))) (/ (/ c b_2) b_2) (/ a (pow b_2 3)) (/ (- (pow b_2 12) (pow (* c a) 6)) (* (+ (* c a) (* b_2 b_2)) (+ (pow (* (+ (* c a) (* b_2 b_2)) (* c a)) 2) (pow b_2 8)))) (- (pow b_2 12) (pow (* c a) 6))) |
| 49.0ms | n | @ | 0 | ((/ (- (- (log x) (log (+ 1 x))) (/ (+ (* (- (pow (log (+ 1 x)) 2) (pow (log x) 2)) 1/2) (* 1/6 (/ (- (pow (log (+ 1 x)) 3) (pow (log x) 3)) n))) n)) (neg n)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (- (- (log x) (log (+ 1 x))) (/ (+ (* (- (pow (log (+ 1 x)) 2) (pow (log x) 2)) 1/2) (* 1/6 (/ (- (pow (log (+ 1 x)) 3) (pow (log x) 3)) n))) n)) (- (log x) (log (+ 1 x))) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n)) (/ 1 n) (/ (/ (pow x (/ 1 n)) x) n) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (pow x (/ 1 n)) x) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (- (log (+ 1 x)) (log x)) n) (- (log (+ 1 x)) (log x)) (log (+ 1 x)) (+ (* (/ (pow x (/ 1 n)) x) (- (/ 1/2 (* n n)) (/ 1/2 n))) (/ (pow x (/ 1 n)) n)) (- (pow (+ x 1) (/ 1 n)) (pow x (/ 1 n))) (/ (+ (* (/ (pow x (/ 1 n)) x) (- (/ 1/2 (* n n)) (/ 1/2 n))) (/ (pow x (/ 1 n)) n)) x) (- (pow (log (+ 1 x)) 3) (pow (log x) 3)) (- (pow (log (+ 1 x)) 2) (pow (log x) 2)) (log x) (/ 1/2 (* n n))) |
| 28× | egg-herbie |
| 56× | iter limit |
| 50× | saturated |
| 6× | node limit |
Compiled 9 460 to 4 177 computations (55.8% saved)
43 calls:
| 919.0ms | x |
| 210.0ms | eps |
| 176.0ms | b |
| 134.0ms | c |
| 127.0ms | a |
Compiled 2 152 to 2 009 computations (6.6% saved)
| 28× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 61.1% | 38.9% | 0% | 0% | 0% | 0 |
| 7.4% | 4.5% | 56.6% | 38.9% | 0% | 0% | 0% | 1 |
| 22.3% | 13.6% | 47.5% | 38.9% | 0% | 0% | 0% | 2 |
| 40.2% | 23.5% | 34.9% | 38.9% | 0% | 2.7% | 0% | 3 |
| 53.4% | 31.1% | 27.2% | 38.9% | 0% | 2.8% | 0% | 4 |
| 63% | 36.3% | 21.3% | 38.9% | 0% | 3.6% | 0% | 5 |
| 65.9% | 37.5% | 19.4% | 38.9% | 0% | 4.2% | 0% | 6 |
| 70.4% | 38.8% | 16.3% | 38.9% | 0% | 6% | 0% | 7 |
| 73.6% | 40.2% | 14.4% | 38.9% | 0% | 6.5% | 0% | 8 |
| 76.3% | 40.9% | 12.7% | 38.9% | 0% | 7.5% | 0% | 9 |
| 78.4% | 41.4% | 11.4% | 38.9% | 0% | 8.3% | 0% | 10 |
| 81.1% | 42.4% | 9.9% | 38.9% | 0% | 8.8% | 0% | 11 |
| 82.3% | 42.7% | 9.2% | 38.9% | 0% | 9.3% | 0% | 12 |
Compiled 483 to 337 computations (30.2% saved)
| 80× | binary-search |
| 18× | left-value |
| 75× | narrow-enough |
| 5× | predicate-same |
| 485.0ms | 3 871× | 0 | valid |
| 114.0ms | 580× | 1 | valid |
| 70.0ms | 217× | 2 | valid |
| 67.0ms | 696× | 0 | invalid |
| 3.0ms | 42× | 0 | exit |
| 1.0ms | 4× | 3 | valid |
Compiled 12 229 to 12 334 computations (-0.9% saved)
ival-mult: 92.0ms (22.1% of total)ival-pow: 74.0ms (17.8% of total)ival-div: 60.0ms (14.4% of total)ival-sqrt: 55.0ms (13.2% of total)ival-sub: 40.0ms (9.6% of total)adjust: 21.0ms (5% of total)ival-add: 18.0ms (4.3% of total)ival-neg: 17.0ms (4.1% of total)ival-cos: 15.0ms (3.6% of total)ival-cbrt: 5.0ms (1.2% of total)ival-expm1: 5.0ms (1.2% of total)ival-sin: 4.0ms (1% of total)ival-true: 4.0ms (1% of total)exact: 3.0ms (0.7% of total)ival-assert: 2.0ms (0.5% of total)ival-exp: 1.0ms (0.2% of total)Loading profile data...