Profiling results ----------------- Total cpu time observed: 295208ms (out of 295952ms) Number of samples taken: 1901 (once every 155ms) (Hiding functions with self<1.0% and local<2.0%: 3 of 89 hidden) ====================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ====================================================================== ??? [5] 100.0% [1] 295208(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ---------------------------------------------------------------------- ??? [5] 100.0% [2] 104(0.0%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:228:0 for-loop [4] 100.0% ---------------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 295208(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% ---------------------------------------------------------------------- errors [2] 100.0% [4] 104(0.0%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:230:2 ??? [5] 100.0% ---------------------------------------------------------------------- for-loop [4] 0.0% run [3] 50.0% [5] 295208(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 50.0% run-improve40 [6] 49.9% prepare-points-intervals [7] 0.1% errors [2] 0.0% ??? [17] 0.0% oracle-error [8] 0.0% ---------------------------------------------------------------------- ??? [5] 100.0% [6] 294578(99.8%) 0(0.0%) run-improve40 ...ie/develop/src/mainloop.rkt:336:0 simplify! [9] 100.0% ---------------------------------------------------------------------- ??? [5] 100.0% [7] 476(0.2%) 0(0.0%) prepare-points-intervals ...p/src/points.rkt:133:0 loop [10] 100.0% ---------------------------------------------------------------------- ??? [5] 100.0% [8] 50(0.0%) 0(0.0%) oracle-error ...erbie/develop/src/points.rkt:212:0 for-loop [11] 100.0% ---------------------------------------------------------------------- run-improve40 [6] 100.0% [9] 294578(99.8%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:213:0 ??? [12] 100.0% ---------------------------------------------------------------------- prepare-points-intervals [7]100.0% [10] 476(0.2%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:145:4 loop [13] 67.2% ??? [14] 32.8% ---------------------------------------------------------------------- oracle-error [8] 100.0% [11] 50(0.0%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:213:2 map [15] 100.0% ---------------------------------------------------------------------- simplify! [9] 100.0% [12] 294578(99.8%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:26:0 for-loop [16] 100.0% ---------------------------------------------------------------------- loop [10] 100.0% [13] 320(0.1%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:104:2 ??? [17] 48.8% ??? [20] 34.4% ??? [80] 16.9% ---------------------------------------------------------------------- loop [10] 100.0% [14] 156(0.1%) 0(0.0%) ??? ...ghtlies/herbie/develop/src/points.rkt:129:2 ??? [20] 100.0% ---------------------------------------------------------------------- for-loop [11] 100.0% [15] 50(0.0%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 point-error [18] 100.0% ---------------------------------------------------------------------- ??? [12] 100.0% [16] 294578(99.8%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:33:2 one-iter [19] 100.0% ---------------------------------------------------------------------- ??? [5] 40.0% loop [13] 60.0% [17] 260(0.1%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:146:2 ??? [20] 59.2% ??? [21] 40.8% ---------------------------------------------------------------------- map [15] 100.0% [18] 50(0.0%) 0(0.0%) point-error ...herbie/develop/src/points.rkt:195:0 ulp-difference [22] 100.0% ---------------------------------------------------------------------- for-loop [16] 100.0% [19] 294578(99.8%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:86:0 for-loop [23] 75.2% find-matches [24] 24.4% for-loop [25] 0.4% ---------------------------------------------------------------------- loop [13] 26.2% ??? [17] 36.7% ??? [14] 37.1% [20] 420(0.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ->flonum [26] 37.6% sample-multi-bounded [27] 37.1% mk-ival [28] 25.2% ---------------------------------------------------------------------- ??? [17] 100.0% [21] 106(0.0%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [29] 52.8% ??? [30] 47.2% ---------------------------------------------------------------------- point-error [18] 100.0% [22] 50(0.0%) 0(0.0%) ulp-difference ...erbie/develop/src/float.rkt:14:0 ??? [35] 100.0% ---------------------------------------------------------------------- one-iter [19] 100.0% [23] 221450(75.0%) 330(0.1%) for-loop ...bie/develop/src/core/simplify.rkt:95:2 loop [31] 99.9% ---------------------------------------------------------------------- one-iter [19] 100.0% [24] 71882(24.3%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:56:0 for-loop [32] 100.0% ---------------------------------------------------------------------- one-iter [19] 100.0% [25] 1246(0.4%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:111:2 set-precompute! [33] 100.0% ---------------------------------------------------------------------- ??? [20] 100.0% [26] 158(0.1%) 48(0.0%) ->flonum ...s/herbie/develop/src/programs.rkt:38:0 keyword-apply [37] 35.4% ??? [35] 34.2% ---------------------------------------------------------------------- ??? [20] 100.0% [27] 156(0.1%) 156(0.1%) sample-multi-bounded ...evelop/src/points.rkt:16:0 ---------------------------------------------------------------------- ??? [20] 100.0% [28] 106(0.0%) 0(0.0%) mk-ival ...herbie/develop/src/biginterval.rkt:59:0 bf [34] 100.0% ---------------------------------------------------------------------- ??? [21] 100.0% [29] 56(0.0%) 0(0.0%) ??? ...herbie/develop/src/syntax/syntax.rkt:317:17 return/no-unsupplied [36] 100.0% ---------------------------------------------------------------------- ??? [21] 100.0% [30] 50(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [38] 100.0% ---------------------------------------------------------------------- loop [31] 0.9% for-loop [23] 99.1% [31] 221120(74.9%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:100:4 apply-match [39] 99.1% loop [31] 0.9% ---------------------------------------------------------------------- for-loop [32] 49.2% find-matches [24] 50.8% [32] 71882(24.3%) 18670(6.3%) for-loop ...bie/develop/src/core/simplify.rkt:58:8 for-loop [32] 49.2% match-e [43] 37.0% ??? [69] 0.0% ---------------------------------------------------------------------- for-loop [25] 100.0% [33] 1246(0.4%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:117:0 for-loop [40] 100.0% ---------------------------------------------------------------------- mk-ival [28] 100.0% [34] 106(0.0%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [54] 100.0% ---------------------------------------------------------------------- ulp-difference [22] 48.1% ->flonum [26] 51.9% [35] 104(0.0%) 104(0.0%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ---------------------------------------------------------------------- ??? [29] 100.0% [36] 56(0.0%) 56(0.0%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 ---------------------------------------------------------------------- ->flonum [26] 100.0% [37] 56(0.0%) 56(0.0%) keyword-apply ...lects/racket/private/kw.rkt:421:2 ---------------------------------------------------------------------- ??? [30] 100.0% [38] 50(0.0%) 0(0.0%) ival-add ...erbie/develop/src/biginterval.rkt:87:0 ??? [41] 100.0% ---------------------------------------------------------------------- loop [31] 100.0% [39] 221120(74.9%) 220(0.1%) apply-match .../develop/src/core/simplify.rkt:65:0 for-loop [42] 98.3% match-e [43] 1.1% set [67] 0.4% ---------------------------------------------------------------------- set-precompute! [33] 100.0% [40] 1246(0.4%) 224(0.1%) for-loop ...ie/develop/src/core/simplify.rkt:119:2 setfindf [44] 58.3% compose [45] 23.8% ---------------------------------------------------------------------- ival-add [38] 100.0% [41] 50(0.0%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfadd [46] 100.0% ---------------------------------------------------------------------- apply-match [39] 100.0% [42] 217280(73.6%) 656(0.2%) for-loop ...bie/develop/src/core/simplify.rkt:78:2 merge-egraph-nodes! [47] 49.8% dedup-children! [55] 49.6% substitute-e [53] 0.1% ---------------------------------------------------------------------- apply-match [39] 2.8% for-loop [57] 13.1% for-loop [32] 84.0% [43] 55702(18.9%) 18034(6.1%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [48] 63.9% make-sequence [50] 3.2% variable? [49] 2.3% ??? [80] 1.6% custom-in-set [52] 0.6% ---------------------------------------------------------------------- for-loop [40] 100.0% [44] 726(0.2%) 0(0.0%) setfindf ...es/herbie/develop/src/common.rkt:139:0 for-loop [51] 92.8% custom-in-set [52] 7.2% ---------------------------------------------------------------------- for-loop [40] 100.0% [45] 296(0.1%) 296(0.1%) compose ...collects/racket/private/list.rkt:385:12 ---------------------------------------------------------------------- ??? [41] 100.0% [46] 50(0.0%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [54] 100.0% ---------------------------------------------------------------------- merge-egraph-nodes! [47] 2.4% for-loop [42] 97.6% [47] 108278(36.7%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:145:0 loop! [56] 92.1% dedup-children! [55] 3.0% update-leader! [58] 2.6% merge-egraph-nodes! [47] 2.4% enode-merge! [64] 0.0% ---------------------------------------------------------------------- match-e [43] 100.0% [48] 40406(13.7%) 21668(7.3%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [57] 35.4% cartesian-product [59] 5.1% foldr [60] 3.3% curry* [61] 3.1% foldl [62] 1.0% cp-2 [70] 0.6% ---------------------------------------------------------------------- match-e [43] 100.0% [49] 2730(0.9%) 0(0.0%) variable? .../develop/src/syntax/syntax.rkt:1159:0 ??? [80] 100.0% ---------------------------------------------------------------------- match-e [43] 100.0% [50] 2202(0.7%) 2202(0.7%) make-sequence ...ects/racket/private/for.rkt:528:2 ---------------------------------------------------------------------- setfindf [44] 100.0% [51] 674(0.2%) 350(0.1%) for-loop ...es/herbie/develop/src/common.rkt:140:2 ??? [80] 48.1% ---------------------------------------------------------------------- setfindf [44] 12.9% match-e [43] 87.1% [52] 404(0.1%) 404(0.1%) custom-in-set ...acket/private/set-types.rkt:577:0 ---------------------------------------------------------------------- for-loop [63] 50.0% for-loop [42] 50.0% [53] 300(0.1%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [63] 50.0% ??? [80] 50.0% ---------------------------------------------------------------------- bfadd [46] 32.1% bf [34] 67.9% [54] 156(0.1%) 156(0.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ---------------------------------------------------------------------- merge-egraph-nodes! [47] 2.9% for-loop [42] 97.1% [55] 110946(37.6%) 0(0.0%) dedup-children! ...evelop/src/core/enode.rkt:199:0 loop [65] 100.0% ---------------------------------------------------------------------- loop [66] 24.5% merge-egraph-nodes! [47] 75.5% [56] 102250(34.6%) 17422(5.9%) loop! ...s/herbie/develop/src/core/enode.rkt:191:2 custom-set-union [74] 47.2% loop [66] 29.0% set [67] 12.8% update-en-expr [86] 1.8% ---------------------------------------------------------------------- for-loop [48] 100.0% [57] 16174(5.5%) 1246(0.4%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [43] 86.7% ??? [69] 6.5% ---------------------------------------------------------------------- merge-egraph-nodes! [47] 100.0% [58] 2774(0.9%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:213:0 for-loop [68] 100.0% ---------------------------------------------------------------------- for-loop [48] 100.0% [59] 2076(0.7%) 2076(0.7%) cartesian-product ...ollects/racket/list.rkt:822:0 ---------------------------------------------------------------------- for-loop [48] 100.0% [60] 1500(0.5%) 1048(0.4%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [70] 30.1% ---------------------------------------------------------------------- for-loop [48] 100.0% [61] 1362(0.5%) 914(0.3%) curry* ...et-7.0/collects/racket/function.rkt:44:2 procedure-arity [71] 32.9% ---------------------------------------------------------------------- for-loop [48] 100.0% [62] 498(0.2%) 198(0.1%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [72] 60.2% ---------------------------------------------------------------------- substitute-e [53] 100.0% [63] 300(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 substitute-e [53] 100.0% ---------------------------------------------------------------------- merge-egraph-nodes! [47] 100.0% [64] 50(0.0%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:128:0 adopt-enode! [73] 100.0% ---------------------------------------------------------------------- dedup-children! [55] 3.9% loop [65] 96.1% [65] 110946(37.6%) 110946(37.6%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [65] 96.1% ---------------------------------------------------------------------- loop! [56] 4.0% loop [66] 96.0% [66] 54732(18.5%) 4534(1.5%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [66] 96.0% loop! [56] 3.5% ---------------------------------------------------------------------- apply-match [39] 3.3% loop! [56] 96.7% [67] 26862(9.1%) 26176(8.9%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [76] 2.6% ---------------------------------------------------------------------- update-leader! [58] 100.0% [68] 2774(0.9%) 348(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:218:6 hash-update! [81] 55.7% for-loop [75] 31.7% ---------------------------------------------------------------------- for-loop [32] 4.6% for-loop [57] 95.4% [69] 1096(0.4%) 516(0.2%) ??? ...ies/herbie/develop/src/core/ematch.rkt:43:5 for-loop [77] 52.9% ---------------------------------------------------------------------- for-loop [48] 35.6% foldr [60] 64.4% [70] 702(0.2%) 402(0.1%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 for-loop [78] 42.7% ---------------------------------------------------------------------- curry* [61] 100.0% [71] 448(0.2%) 448(0.2%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ---------------------------------------------------------------------- foldl [62] 100.0% [72] 300(0.1%) 300(0.1%) merge2 .../herbie/develop/src/core/ematch.rkt:24:0 ---------------------------------------------------------------------- enode-merge! [64] 100.0% [73] 50(0.0%) 0(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:104:0 custom-set-union [74] 100.0% ---------------------------------------------------------------------- adopt-enode! [73] 0.1% loop! [56] 99.9% [74] 50672(17.2%) 21418(7.3%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [79] 54.6% for-loop [82] 3.1% ---------------------------------------------------------------------- for-loop [68] 100.0% [75] 880(0.3%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:219:8 hash-update! [81] 100.0% ---------------------------------------------------------------------- set [67] 100.0% [76] 686(0.2%) 686(0.2%) for-loop ...cts/racket/private/set-types.rkt:937:4 ---------------------------------------------------------------------- ??? [69] 100.0% [77] 580(0.2%) 350(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:44:7 ??? [80] 39.7% ---------------------------------------------------------------------- cp-2 [70] 100.0% [78] 300(0.1%) 300(0.1%) for-loop ...ket-7.0/collects/racket/list.rkt:827:4 ---------------------------------------------------------------------- custom-set-union [74] 100.0% [79] 27690(9.4%) 13636(4.6%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [83] 50.8% ---------------------------------------------------------------------- loop [13] 0.9% for-loop [77] 4.0% substitute-e [53] 5.2% for-loop [51] 5.7% match-e [43] 36.5% variable? [49] 47.7% [80] 5726(1.9%) 5726(1.9%) ??? ...contract/private/arrow-val-first.rkt:388:18 ---------------------------------------------------------------------- for-loop [75] 36.3% for-loop [68] 63.7% [81] 2426(0.8%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [84] 100.0% ---------------------------------------------------------------------- custom-set-union [74] 100.0% [82] 1564(0.5%) 1564(0.5%) for-loop ...cts/racket/private/set-types.rkt:152:2 ---------------------------------------------------------------------- for-loop [79] 100.0% [83] 14054(4.8%) 14054(4.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------------- hash-update! [81] 100.0% [84] 2426(0.8%) 104(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:221:24 for-loop [85] 95.7% ---------------------------------------------------------------------- ??? [84] 100.0% [85] 2322(0.8%) 1796(0.6%) for-loop ...bie/develop/src/core/egraph.rkt:222:26 update-en-expr [86] 22.7% ---------------------------------------------------------------------- for-loop [85] 12.4% loop! [56] 87.6% [86] 4228(1.4%) 4228(1.4%) update-en-expr ...evelop/src/core/egraph.rkt:207:0 ----------------------------------------------------------------------