Profiling results ----------------- Total cpu time observed: 15976ms (out of 16152ms) Number of samples taken: 42 (once every 380ms) ========================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================== ??? [34] 100.0% [1] 15976(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [4] 100.0% -------------------------------------------------------------------------- ??? [34] 100.0% [2] 8258(51.7%) 0(0.0%) run-improve47 ...bie/master/src/mainloop.rkt:346:0 for-loop [5] 100.0% -------------------------------------------------------------------------- matcher [27] 100.0% [3] 360(2.3%) 0(0.0%) ??? ...s/herbie/master/src/core/matcher.rkt:130:11 for-loop [6] 100.0% -------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [4] 15976(100.0%) 0(0.0%) run ...et-7.2/share/pkgs/profile-lib/main.rkt:39:2 ??? [34] 100.0% -------------------------------------------------------------------------- run-improve47 [2] 100.0% [5] 8258(51.7%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:365:4 run-iter! [7] 100.0% -------------------------------------------------------------------------- ??? [3] 100.0% [6] 360(2.3%) 0(0.0%) for-loop ...bie/master/src/core/matcher.rkt:132:15 matcher [27] 100.0% -------------------------------------------------------------------------- for-loop [5] 100.0% [7] 8258(51.7%) 0(0.0%) run-iter! .../herbie/master/src/mainloop.rkt:327:0 simplify! [8] 95.6% gen-rewrites! [9] 4.4% -------------------------------------------------------------------------- run-iter! [7] 100.0% [8] 7898(49.4%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:224:0 ??? [10] 95.9% for-loop [12] 4.1% -------------------------------------------------------------------------- run-iter! [7] 100.0% [9] 360(2.3%) 0(0.0%) gen-rewrites! ...bie/master/src/mainloop.rkt:183:0 for-loop [11] 100.0% -------------------------------------------------------------------------- simplify! [8] 100.0% [10] 7574(47.4%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:31:0 for-loop [13] 96.1% loop [15] 3.9% -------------------------------------------------------------------------- gen-rewrites! [9] 100.0% [11] 360(2.3%) 0(0.0%) for-loop .../herbie/master/src/mainloop.rkt:191:11 rewrite-expression-head20 [14] 100.0% -------------------------------------------------------------------------- for-loop [12] 50.0% simplify! [8] 50.0% [12] 324(2.0%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:251:6 for-loop [12] 50.0% ??? [70] 50.0% -------------------------------------------------------------------------- ??? [10] 100.0% [13] 7278(45.6%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:51:2 ??? [16] 95.9% precompute-phase [18] 4.1% -------------------------------------------------------------------------- for-loop [11] 100.0% [14] 360(2.3%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [17] 100.0% -------------------------------------------------------------------------- ??? [10] 100.0% [15] 296(1.9%) 0(0.0%) loop ...herbie/master/src/core/extraction.rkt:25:2 for-loop [19] 100.0% -------------------------------------------------------------------------- for-loop [13] 100.0% [16] 6978(43.7%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:92:0 for-loop [20] 65.1% find-matches [21] 34.9% -------------------------------------------------------------------------- rewrite-expression-head20 [14] 33.3% matcher [27] 66.7% [17] 360(2.3%) 360(2.3%) rewriter ...erbie/master/src/core/matcher.rkt:90:2 for-loop [22] 66.7% -------------------------------------------------------------------------- for-loop [13] 100.0% [18] 300(1.9%) 0(0.0%) precompute-phase ...er/src/core/simplify.rkt:101:0 for-loop [23] 100.0% -------------------------------------------------------------------------- loop [15] 100.0% [19] 296(1.9%) 0(0.0%) for-loop ...ie/master/src/core/extraction.rkt:29:4 for-loop [24] 100.0% -------------------------------------------------------------------------- ??? [16] 100.0% [20] 4540(28.4%) 666(4.2%) for-loop ...rbie/master/src/core/simplify.rkt:93:2 for-loop [25] 85.3% -------------------------------------------------------------------------- ??? [16] 100.0% [21] 2438(15.3%) 0(0.0%) find-matches .../master/src/core/simplify.rkt:84:0 for-loop [26] 100.0% -------------------------------------------------------------------------- rewriter [17] 100.0% [22] 360(2.3%) 0(0.0%) for-loop ...erbie/master/src/core/matcher.rkt:92:4 matcher [27] 100.0% -------------------------------------------------------------------------- precompute-phase [18] 100.0% [23] 300(1.9%) 0(0.0%) for-loop ...bie/master/src/core/simplify.rkt:102:2 set-precompute! [28] 100.0% -------------------------------------------------------------------------- for-loop [19] 100.0% [24] 296(1.9%) 0(0.0%) for-loop ...e/master/src/core/extraction.rkt:37:16 for-loop [29] 100.0% -------------------------------------------------------------------------- for-loop [20] 100.0% [25] 3874(24.2%) 324(2.0%) for-loop ...rbie/master/src/core/simplify.rkt:96:4 merge-egraph-nodes! [31] 58.3% dedup-children! [42] 24.9% mk-enode-rec! [32] 8.5% -------------------------------------------------------------------------- for-loop [26] 50.0% find-matches [21] 50.0% [26] 2438(15.3%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:86:8 for-loop [26] 50.0% match-e [30] 50.0% -------------------------------------------------------------------------- for-loop [6] 50.0% for-loop [22] 50.0% [27] 360(2.3%) 0(0.0%) matcher ...erbie/master/src/core/matcher.rkt:118:2 ??? [3] 50.0% rewriter [17] 50.0% -------------------------------------------------------------------------- for-loop [23] 100.0% [28] 300(1.9%) 0(0.0%) set-precompute! ...ter/src/core/simplify.rkt:110:0 for-loop [33] 100.0% -------------------------------------------------------------------------- for-loop [24] 100.0% [29] 296(1.9%) 296(1.9%) for-loop ...e/master/src/core/extraction.rkt:41:23 -------------------------------------------------------------------------- for-loop [43] 13.1% for-loop [26] 86.9% [30] 2438(15.3%) 306(1.9%) match-e .../herbie/master/src/core/ematch.rkt:39:0 for-loop [35] 81.4% constant? [39] 12.3% -------------------------------------------------------------------------- for-loop [36] 14.6% for-loop [25] 85.4% [31] 2258(14.1%) 0(0.0%) merge-egraph-nodes! ...r/src/core/egraph.rkt:145:0 loop! [50] 57.6% for-loop [36] 27.9% update-leader! [37] 8.0% dedup-children! [42] 6.6% -------------------------------------------------------------------------- loop [41] 50.0% for-loop [25] 50.0% [32] 328(2.1%) 0(0.0%) mk-enode-rec! .../master/src/core/egraph.rkt:117:0 loop [41] 50.0% do-curry [38] 50.0% -------------------------------------------------------------------------- set-precompute! [28] 100.0% [33] 300(1.9%) 0(0.0%) for-loop ...bie/master/src/core/simplify.rkt:112:2 ??? [34] 100.0% -------------------------------------------------------------------------- for-loop [33] 0.6% run [4] 49.7% [34] 15976(100.0%) 312(2.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.7% run-improve47 [2] 25.5% prepare-points-intervals [40] 21.2% eval-errors [45] 1.0% errors [46] 1.0% eval-const-expr [48] 0.6% -------------------------------------------------------------------------- match-e [30] 100.0% [35] 2138(13.4%) 1532(9.6%) for-loop ...erbie/master/src/core/ematch.rkt:52:11 for-loop [43] 22.1% loop [41] 14.0% -------------------------------------------------------------------------- merge-egraph-nodes! [31] 100.0% [36] 958(6.0%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:199:4 merge-egraph-nodes! [31] 68.7% dedup-children! [42] 31.3% -------------------------------------------------------------------------- merge-egraph-nodes! [31] 100.0% [37] 360(2.3%) 0(0.0%) update-leader! ...master/src/core/egraph.rkt:213:0 for-loop [44] 100.0% -------------------------------------------------------------------------- mk-enode-rec! [32] 100.0% [38] 328(2.1%) 328(2.1%) do-curry ...-7.2/collects/racket/function.rkt:71:2 -------------------------------------------------------------------------- match-e [30] 100.0% [39] 300(1.9%) 0(0.0%) constant? ...ie/master/src/syntax/syntax.rkt:726:0 value? [47] 100.0% -------------------------------------------------------------------------- ??? [34] 100.0% [40] 6772(42.4%) 0(0.0%) prepare-points-intervals ...r/src/points.rkt:110:0 loop [49] 95.1% eval-prog [52] 4.9% -------------------------------------------------------------------------- loop! [50] 8.1% for-loop [35] 18.8% mk-enode-rec! [32] 20.6% loop [41] 52.6% [41] 1596(10.0%) 0(0.0%) loop ...-7.2/collects/racket/private/map.rkt:40:19 loop [41] 52.6% mk-enode-rec! [32] 20.6% keyword-apply [56] 18.8% loop! [50] 8.1% -------------------------------------------------------------------------- merge-egraph-nodes! [31] 19.1% for-loop [36] 19.2% for-loop [25] 61.7% [42] 1562(9.8%) 0(0.0%) dedup-children! ...master/src/core/enode.rkt:202:0 loop [51] 59.7% loop [53] 40.3% -------------------------------------------------------------------------- for-loop [35] 100.0% [43] 640(4.0%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:58:37 match-e [30] 100.0% -------------------------------------------------------------------------- update-leader! [37] 100.0% [44] 360(2.3%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:218:6 for-loop [54] 100.0% -------------------------------------------------------------------------- ??? [34] 100.0% [45] 324(2.0%) 0(0.0%) eval-errors .../herbie/master/src/points.rkt:179:0 for-loop [55] 100.0% -------------------------------------------------------------------------- ??? [34] 100.0% [46] 310(1.9%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:201:0 eval-prog [52] 100.0% -------------------------------------------------------------------------- constant? [39] 100.0% [47] 300(1.9%) 300(1.9%) value? .../herbie/master/src/syntax/types.rkt:18:0 -------------------------------------------------------------------------- ??? [34] 100.0% [48] 300(1.9%) 0(0.0%) eval-const-expr ...e/master/src/programs.rkt:118:0 temp85_0 [60] 100.0% -------------------------------------------------------------------------- prepare-points-intervals [40] 100.0% [49] 6438(40.3%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:123:4 ??? [57] 60.2% loop [58] 39.8% -------------------------------------------------------------------------- loop [41] 37.2% merge-egraph-nodes! [31] 62.8% [50] 1300(8.1%) 334(2.1%) loop! ...es/herbie/master/src/core/enode.rkt:194:2 custom-set-union [59] 38.0% loop [41] 37.2% set [62] 11.9% -------------------------------------------------------------------------- dedup-children! [42] 12.6% loop [51] 87.4% [51] 932(5.8%) 0(0.0%) loop ...racket-7.2/collects/racket/list.rkt:417:34 loop [51] 87.4% loop [94] 8.0% member [64] 4.6% -------------------------------------------------------------------------- errors [46] 48.1% prepare-points-intervals [40] 51.9% [52] 644(4.0%) 0(0.0%) eval-prog ...s/herbie/master/src/programs.rkt:83:0 temp85_0 [60] 51.9% eval [63] 48.1% -------------------------------------------------------------------------- dedup-children! [42] 29.7% loop [53] 70.3% [53] 630(3.9%) 630(3.9%) loop ...racket-7.2/collects/racket/list.rkt:434:17 loop [53] 70.3% -------------------------------------------------------------------------- for-loop [44] 100.0% [54] 360(2.3%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:219:8 hash-update! [61] 100.0% -------------------------------------------------------------------------- eval-errors [45] 100.0% [55] 324(2.0%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:181:2 ??? [65] 100.0% -------------------------------------------------------------------------- loop [41] 100.0% [56] 300(1.9%) 300(1.9%) keyword-apply ...lects/racket/private/kw.rkt:423:2 -------------------------------------------------------------------------- loop [49] 100.0% [57] 3878(24.3%) 336(2.1%) ??? ...ightlies/herbie/master/src/points.rkt:106:2 ??? [70] 91.3% -------------------------------------------------------------------------- loop [49] 100.0% [58] 2560(16.0%) 0(0.0%) loop ...ightlies/herbie/master/src/points.rkt:81:2 ??? [65] 100.0% -------------------------------------------------------------------------- loop! [50] 100.0% [59] 656(4.1%) 0(0.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [66] 100.0% -------------------------------------------------------------------------- eval-const-expr [48] 47.3% eval-prog [52] 52.7% [60] 634(4.0%) 0(0.0%) temp85_0 (unknown source) compile15 [67] 100.0% -------------------------------------------------------------------------- for-loop [54] 100.0% [61] 360(2.3%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [68] 100.0% -------------------------------------------------------------------------- loop! [50] 100.0% [62] 310(1.9%) 310(1.9%) set ...collects/racket/private/set-types.rkt:981:0 -------------------------------------------------------------------------- eval-prog [52] 100.0% [63] 310(1.9%) 0(0.0%) eval (unknown source) namespace-syntax-introduce3 [69] 100.0% -------------------------------------------------------------------------- loop [51] 100.0% [64] 300(1.9%) 300(1.9%) member (unknown source) -------------------------------------------------------------------------- for-loop [55] 11.2% loop [58] 88.8% [65] 2884(18.1%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:115:2 ??? [70] 88.5% ??? [73] 11.5% -------------------------------------------------------------------------- custom-set-union [59] 100.0% [66] 656(4.1%) 332(2.1%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [74] 49.4% -------------------------------------------------------------------------- temp85_0 [60] 100.0% [67] 634(4.0%) 0(0.0%) compile15 (unknown source) temp91_0 [71] 100.0% -------------------------------------------------------------------------- hash-update! [61] 100.0% [68] 360(2.3%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:221:24 for-loop [72] 100.0% -------------------------------------------------------------------------- eval [63] 100.0% [69] 310(1.9%) 0(0.0%) namespace-syntax-introduce3 (unknown source) free-identifier=? [75] 100.0% -------------------------------------------------------------------------- for-loop [12] 5.0% ??? [65] 39.8% ??? [57] 55.2% [70] 6418(40.2%) 2226(13.9%) ??? ...tract/private/arrow-higher-order.rkt:360:33 sample-multi-bounded [76] 50.7% mk-ival [78] 9.6% location-do [80] 5.0% -------------------------------------------------------------------------- compile15 [67] 100.0% [71] 634(4.0%) 0(0.0%) temp91_0 (unknown source) temp118_0 [77] 100.0% -------------------------------------------------------------------------- ??? [68] 100.0% [72] 360(2.3%) 360(2.3%) for-loop ...rbie/master/src/core/egraph.rkt:222:26 -------------------------------------------------------------------------- ??? [65] 100.0% [73] 332(2.1%) 0(0.0%) ??? ...t-7.2/collects/racket/private/kw.rkt:594:14 ??? [79] 100.0% -------------------------------------------------------------------------- for-loop [66] 100.0% [74] 324(2.0%) 324(2.0%) for-loop ...cts/racket/private/set-types.rkt:178:5 -------------------------------------------------------------------------- namespace-syntax-introduce3 [69] 100.0% [75] 310(1.9%) 0(0.0%) free-identifier=? (unknown source) resolve+shift28 [81] 100.0% -------------------------------------------------------------------------- ??? [70] 100.0% [76] 3252(20.4%) 304(1.9%) sample-multi-bounded ...master/src/points.rkt:15:0 random-ranges [82] 90.7% -------------------------------------------------------------------------- temp91_0 [71] 100.0% [77] 634(4.0%) 0(0.0%) temp118_0 (unknown source) expand-capturing-lifts [83] 100.0% -------------------------------------------------------------------------- ??? [70] 100.0% [78] 616(3.9%) 0(0.0%) mk-ival .../herbie/master/src/biginterval.rkt:65:0 bf [84] 100.0% -------------------------------------------------------------------------- ??? [73] 100.0% [79] 332(2.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:364:33 ival-add [85] 100.0% -------------------------------------------------------------------------- location-do [80] 50.0% ??? [70] 50.0% [80] 324(2.0%) 0(0.0%) location-do ...herbie/master/src/programs.rkt:64:0 location-do [80] 50.0% ??? [86] 50.0% -------------------------------------------------------------------------- free-identifier=? [75] 100.0% [81] 310(1.9%) 0(0.0%) resolve+shift28 (unknown source) fallback-loop [87] 100.0% -------------------------------------------------------------------------- sample-multi-bounded [76] 100.0% [82] 2948(18.5%) 998(6.2%) random-ranges ...erbie/master/src/common.rkt:171:0 cons/c [88] 66.1% -------------------------------------------------------------------------- temp118_0 [77] 100.0% [83] 634(4.0%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [89] 100.0% -------------------------------------------------------------------------- mk-ival [78] 100.0% [84] 616(3.9%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 ??? [91] 53.2% new-mpfr [95] 46.8% -------------------------------------------------------------------------- ??? [79] 100.0% [85] 332(2.1%) 0(0.0%) ival-add ...erbie/master/src/biginterval.rkt:101:0 bfadd [90] 100.0% -------------------------------------------------------------------------- location-do [80] 100.0% [86] 324(2.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:348:46 ??? [92] 100.0% -------------------------------------------------------------------------- resolve+shift28 [81] 100.0% [87] 310(1.9%) 0(0.0%) fallback-loop (unknown source) for-loop [99] 100.0% -------------------------------------------------------------------------- random-ranges [82] 100.0% [88] 1950(12.2%) 0(0.0%) cons/c .../racket/contract/private/guts.rkt:504:15 coerce-contract [93] 100.0% -------------------------------------------------------------------------- expand-capturing-lifts [83] 100.0% [89] 634(4.0%) 0(0.0%) lambda-clause-expander (unknown source) loop [94] 52.7% finish-bodys [97] 47.3% -------------------------------------------------------------------------- ival-add [85] 100.0% [90] 332(2.1%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [95] 100.0% -------------------------------------------------------------------------- bf [84] 100.0% [91] 328(2.1%) 328(2.1%) ??? /opt/racket-7.2/collects/ffi/unsafe.rkt:905:4 -------------------------------------------------------------------------- ??? [86] 100.0% [92] 324(2.0%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:541:4 ??? [96] 100.0% -------------------------------------------------------------------------- cons/c [88] 100.0% [93] 1950(12.2%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:308:0 coerce-contract/f [98] 100.0% -------------------------------------------------------------------------- lambda-clause-expander [89] 34.6% loop [51] 65.4% [94] 966(6.0%) 632(4.0%) loop (unknown source) dispatch-transformer41 [100] 34.6% -------------------------------------------------------------------------- bf [84] 46.5% bfadd [90] 53.5% [95] 620(3.9%) 620(3.9%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 -------------------------------------------------------------------------- ??? [92] 100.0% [96] 324(2.0%) 0(0.0%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [101] 100.0% -------------------------------------------------------------------------- lambda-clause-expander [89] 100.0% [97] 300(1.9%) 0(0.0%) finish-bodys (unknown source) for-loop [99] 100.0% -------------------------------------------------------------------------- coerce-contract [93] 100.0% [98] 1950(12.2%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:373:0 coerce-simple-value [102] 100.0% -------------------------------------------------------------------------- for-loop [99] 24.6% finish-bodys [97] 24.6% fallback-loop [87] 50.8% [99] 610(3.8%) 310(1.9%) for-loop (unknown source) for-loop [99] 24.6% expand-implicit [104] 24.6% -------------------------------------------------------------------------- loop [94] 100.0% [100] 334(2.1%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [103] 100.0% -------------------------------------------------------------------------- ??? [96] 100.0% [101] 324(2.0%) 324(2.0%) ??? ...ects/racket/contract/private/list.rkt:163:5 -------------------------------------------------------------------------- coerce-contract/f [98] 100.0% [102] 1950(12.2%) 1950(12.2%) coerce-simple-value ...ract/private/guts.rkt:386:0 -------------------------------------------------------------------------- dispatch-transformer41 [100] 100.0% [103] 334(2.1%) 0(0.0%) apply-transformer52 (unknown source) apply-transformer-in-context [105]100.0% -------------------------------------------------------------------------- for-loop [99] 100.0% [104] 300(1.9%) 0(0.0%) expand-implicit (unknown source) binding-lookup52 [106] 100.0% -------------------------------------------------------------------------- apply-transformer52 [103] 100.0% [105] 334(2.1%) 0(0.0%) apply-transformer-in-context (unknown source) ??? [107] 100.0% -------------------------------------------------------------------------- expand-implicit [104] 100.0% [106] 300(1.9%) 300(1.9%) binding-lookup52 (unknown source) -------------------------------------------------------------------------- apply-transformer-in-context [105]100.0% [107] 334(2.1%) 334(2.1%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 --------------------------------------------------------------------------