Profiling results ----------------- Total cpu time observed: 657722ms (out of 660004ms) Number of samples taken: 1915 (once every 343ms) (Hiding functions with self<1.0% and local<2.0%: 15 of 206 hidden) =========================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================== ??? [49] 100.0% [1] 499768(76.0%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [10] 100.0% --------------------------------------------------------------------------- ??? [49] 100.0% [2] 469806(71.4%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [11] 99.4% loop [63] 0.4% setup-alt-simplified [17] 0.2% --------------------------------------------------------------------------- table-ref [61] 100.0% [3] 146714(22.3%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:215:2 pass [12] 100.0% --------------------------------------------------------------------------- rewriter [62] 100.0% [4] 30480(4.6%) 1744(0.3%) *rules* ...rbie/develop/src/syntax/rules.rkt:512:0 for-loop [13] 79.1% flag-set? [33] 6.6% ormap [24] 5.5% dict? [185] 2.1% --------------------------------------------------------------------------- pattern-match [20] 2.2% matcher [76] 10.4% substitute-e [100] 17.9% match-e [97] 69.5% [5] 13116(2.0%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:660:0 ??? [42] 100.0% --------------------------------------------------------------------------- for-loop [14] 18.5% rewriter [62] 81.5% [6] 12352(1.9%) 0(0.0%) expression->type ...evelop/src/type-check.rkt:45:0 for-loop [14] 100.0% --------------------------------------------------------------------------- map-enodes [80] 3.8% loop [135] 96.2% [7] 9418(1.4%) 668(0.1%) for-loop ...ie/develop/src/core/simplify.rkt:173:2 eval-const-expr [15] 57.4% setfindf [16] 21.7% compose [19] 10.3% ??? [35] 3.5% --------------------------------------------------------------------------- matcher [76] 100.0% [8] 1924(0.3%) 332(0.1%) for-loop ...bie/develop/src/core/matcher.rkt:159:6 pattern-substitute [18] 50.7% pattern-match [20] 32.0% --------------------------------------------------------------------------- loop [135] 100.0% [9] 1738(0.3%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [118] 95.5% map [89] 4.5% --------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [10] 499768(76.0%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [49] 100.0% --------------------------------------------------------------------------- run-improve50 [2] 100.0% [11] 467056(71.0%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [21] 100.0% --------------------------------------------------------------------------- loop [3] 100.0% [12] 146714(22.3%) 1080(0.2%) pass ...herbie/develop/src/core/simplify.rkt:205:2 for-loop [22] 98.8% --------------------------------------------------------------------------- *rules* [4] 98.7% [13] 24422(3.7%) 7816(1.2%) for-loop ...ies/herbie/develop/src/common.rkt:99:9 ormap [24] 51.4% flag-set? [33] 16.6% --------------------------------------------------------------------------- expression->type [6] 100.0% [14] 12352(1.9%) 0(0.0%) for-loop ...herbie/develop/src/type-check.rkt:52:5 f137 [23] 81.5% expression->type [6] 18.5% --------------------------------------------------------------------------- for-loop [7] 100.0% [15] 5406(0.8%) 1738(0.3%) eval-const-expr .../develop/src/programs.rkt:166:0 f137 [23] 43.8% ??? [149] 12.2% ??? [26] 11.9% --------------------------------------------------------------------------- for-loop [7] 100.0% [16] 2040(0.3%) 1360(0.2%) setfindf ...es/herbie/develop/src/common.rkt:184:0 for-loop [27] 33.3% --------------------------------------------------------------------------- run-improve50 [2] 100.0% [17] 1020(0.2%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [25] 100.0% --------------------------------------------------------------------------- pattern-substitute [18] 40.0% for-loop [8] 60.0% [18] 976(0.1%) 976(0.1%) pattern-substitute ...op/src/core/matcher.rkt:73:0 pattern-substitute [18] 40.0% --------------------------------------------------------------------------- for-loop [7] 100.0% [19] 972(0.1%) 972(0.1%) compose ...collects/racket/private/list.rkt:385:12 --------------------------------------------------------------------------- for-loop [28] 50.0% for-loop [8] 50.0% [20] 616(0.1%) 0(0.0%) pattern-match ...develop/src/core/matcher.rkt:48:0 for-loop [28] 50.0% ??? [42] 26.5% variable? [5] 23.5% --------------------------------------------------------------------------- for-loop [11] 100.0% [21] 467056(71.0%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [29] 77.5% gen-rewrites! [31] 15.7% finalize-iter! [32] 6.3% gen-series! [39] 0.1% --------------------------------------------------------------------------- pass [12] 100.0% [22] 145002(22.0%) 1718(0.3%) for-loop ...e/develop/src/core/simplify.rkt:208:29 argmin [30] 83.8% loop [34] 10.7% for-loop [36] 4.3% --------------------------------------------------------------------------- hash-ref! [118] 0.8% eval-prog [90] 2.7% eval-const-expr [15] 5.4% f137 [23] 13.7% for-loop [14] 28.2% rewriter [62] 49.2% [23] 43772(6.7%) 1702(0.3%) f137 .../collects/racket/match/compiler.rkt:507:40 table-ref [61] 24.1% ??? [139] 23.6% ??? [42] 18.6% f137 [23] 13.7% ...velop/src/common.rkt:47:2 [140] 11.0% ??? [35] 2.7% ??? [38] 1.6% map [89] 0.8% --------------------------------------------------------------------------- *rules* [4] 11.8% for-loop [13] 88.2% [24] 14234(2.2%) 3026(0.5%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [33] 74.1% curried [145] 4.6% --------------------------------------------------------------------------- setup-alt-simplified [17] 100.0% [25] 1020(0.2%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 table-ref [61] 100.0% --------------------------------------------------------------------------- for-loop [69] 34.2% eval-const-expr [15] 65.8% [26] 978(0.1%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [37] 100.0% --------------------------------------------------------------------------- setfindf [16] 100.0% [27] 680(0.1%) 680(0.1%) for-loop ...es/herbie/develop/src/common.rkt:185:2 --------------------------------------------------------------------------- pattern-match [20] 100.0% [28] 616(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/matcher.rkt:66:9 pattern-match [20] 100.0% --------------------------------------------------------------------------- run-iter! [21] 100.0% [29] 361830(55.0%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [40] 100.0% --------------------------------------------------------------------------- for-loop [22] 100.0% [30] 121548(18.5%) 300(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [41] 89.3% expression-cost [44] 10.5% --------------------------------------------------------------------------- run-iter! [21] 100.0% [31] 73346(11.2%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [43] 100.0% --------------------------------------------------------------------------- run-iter! [21] 100.0% [32] 29426(4.5%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [42] 100.0% --------------------------------------------------------------------------- *rules* [4] 12.1% for-loop [13] 24.4% ormap [24] 63.5% [33] 16614(2.5%) 8496(1.3%) flag-set? ...es/herbie/develop/src/config.rkt:34:0 return/no-unsupplied [160] 28.0% ??? [159] 20.9% --------------------------------------------------------------------------- for-loop [22] 100.0% [34] 15570(2.4%) 360(0.1%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [41] 78.7% expression-cost [44] 19.0% --------------------------------------------------------------------------- for-loop [7] 3.1% ??? [57] 3.4% for-loop [66] 3.4% map [89] 6.2% loop [135] 6.6% for-loop [88] 9.8% f137 [23] 67.6% [35] 10606(1.6%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 table-ref [61] 57.8% ...velop/src/common.rkt:47:2 [140] 13.5% ??? [178] 12.3% ??? [45] 6.6% arrow-higher-order:lnp [83] 3.4% best-alt [48] 3.4% ??? [139] 3.0% --------------------------------------------------------------------------- for-loop [22] 100.0% [36] 6166(0.9%) 6166(0.9%) for-loop ...e/develop/src/core/simplify.rkt:195:13 --------------------------------------------------------------------------- ??? [26] 100.0% [37] 978(0.1%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [46] 65.8% ??? [156] 34.2% --------------------------------------------------------------------------- f137 [23] 100.0% [38] 688(0.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [178] 100.0% --------------------------------------------------------------------------- run-iter! [21] 100.0% [39] 358(0.1%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:129:0 for-loop [47] 100.0% --------------------------------------------------------------------------- simplify! [29] 98.5% [40] 367278(55.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [49] 99.7% debug-print [54] 0.3% --------------------------------------------------------------------------- loop [34] 10.1% argmin [30] 89.9% [41] 120800(18.4%) 2978(0.5%) for-loop .../herbie/develop/src/programs.rkt:199:2 table-ref [61] 70.0% ...velop/src/common.rkt:47:2 [140] 26.1% ??? [139] 1.4% --------------------------------------------------------------------------- pattern-match [20] 0.4% ??? [178] 1.9% substitute-e [100] 2.8% f137 [23] 10.0% match-e [97] 12.6% variable? [5] 16.1% get-sigs [134] 20.1% finalize-iter! [32] 35.6% [42] 81252(12.4%) 18056(2.7%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [51] 41.7% for-loop [52] 34.8% atab-add-altns [55] 0.8% ??? [57] 0.4% --------------------------------------------------------------------------- gen-rewrites! [31] 100.0% [43] 73346(11.2%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [50] 100.0% --------------------------------------------------------------------------- loop [34] 18.9% argmin [30] 81.1% [44] 15658(2.4%) 0(0.0%) expression-cost .../develop/src/programs.rkt:198:0 compile [53] 100.0% --------------------------------------------------------------------------- ??? [35] 100.0% [45] 700(0.1%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [56] 52.6% integer->bigfloat [60] 47.4% --------------------------------------------------------------------------- unpack245 [37] 100.0% [46] 644(0.1%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 arrow-higher-order:lnp [83] 100.0% --------------------------------------------------------------------------- gen-series! [39] 100.0% [47] 358(0.1%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:135:7 taylor-alt [58] 100.0% --------------------------------------------------------------------------- ??? [35] 100.0% [48] 358(0.1%) 0(0.0%) best-alt ...tlies/herbie/develop/src/glue.rkt:71:0 argmins [59] 100.0% --------------------------------------------------------------------------- for-loop [40] 19.6% run [10] 29.6% [49] 640176(97.3%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 table-ref [61] 40.5% profile-thunk16 [1] 29.6% run-improve50 [2] 27.4% loop [63] 2.5% --------------------------------------------------------------------------- for-loop [43] 100.0% [50] 73346(11.2%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [62] 100.0% --------------------------------------------------------------------------- mk-enode! [106] 7.2% ??? [42] 92.8% [51] 37084(5.6%) 13120(2.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [70] 62.7% --------------------------------------------------------------------------- ??? [42] 100.0% [52] 28768(4.4%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [64] 100.0% --------------------------------------------------------------------------- expression-cost [44] 100.0% [53] 15658(2.4%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:175:0 hash-ref! [118] 100.0% --------------------------------------------------------------------------- for-loop [40] 100.0% [54] 1008(0.2%) 0(0.0%) debug-print .../herbie/develop/src/debug.rkt:107:0 for-loop [65] 100.0% --------------------------------------------------------------------------- ??? [42] 100.0% [55] 658(0.1%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [64] 100.0% --------------------------------------------------------------------------- ??? [45] 100.0% [56] 368(0.1%) 368(0.1%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 --------------------------------------------------------------------------- ??? [42] 100.0% [57] 358(0.1%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [35] 100.0% --------------------------------------------------------------------------- for-loop [47] 100.0% [58] 358(0.1%) 0(0.0%) taylor-alt ...es/herbie/develop/src/glue.rkt:134:0 for-loop [66] 100.0% --------------------------------------------------------------------------- best-alt [48] 100.0% [59] 358(0.1%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:150:0 composed [67] 100.0% --------------------------------------------------------------------------- ??? [45] 100.0% [60] 332(0.1%) 332(0.1%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 --------------------------------------------------------------------------- simplify-alt [25] 0.1% ??? [35] 1.1% f137 [23] 1.8% get-sigs [134] 3.0% for-loop [41] 5.4% table-ref [61] 15.5% for-loop [69] 28.7% ??? [49] 43.6% [61] 523548(79.6%) 34656(5.3%) table-ref .../racket/private/norm-define.rkt:53:83 iterate-egraph!13 [68] 32.6% for-loop [69] 28.8% table-ref [61] 15.5% loop [3] 11.3% ??? [70] 7.6% ??? [159] 0.4% mk-egraph [74] 0.3% return/no-unsupplied [160] 0.3% ??? [156] 0.1% dict? [185] 0.1% --------------------------------------------------------------------------- ??? [50] 14.5% matcher [76] 85.5% [62] 73346(11.2%) 4306(0.7%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [71] 86.4% *rules* [4] 5.8% f137 [23] 4.0% expression->type [6] 3.1% --------------------------------------------------------------------------- run-improve50 [2] 5.2% ??? [49] 94.8% [63] 32972(5.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:193:2 make-exacts* [79] 48.9% loop [73] 48.9% loop [81] 2.2% --------------------------------------------------------------------------- atab-add-altns [55] 2.2% for-loop [52] 97.8% [64] 29426(4.5%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [72] 100.0% --------------------------------------------------------------------------- debug-print [54] 100.0% [65] 1008(0.2%) 1008(0.2%) for-loop ...ies/herbie/develop/src/debug.rkt:113:2 --------------------------------------------------------------------------- taylor-alt [58] 100.0% [66] 358(0.1%) 0(0.0%) for-loop ...lies/herbie/develop/src/glue.rkt:139:6 ??? [35] 100.0% --------------------------------------------------------------------------- argmins [59] 100.0% [67] 358(0.1%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [78] 100.0% --------------------------------------------------------------------------- table-ref [61] 100.0% [68] 357566(54.4%) 690(0.1%) iterate-egraph!13 ...p/src/core/simplify.rkt:102:0 one-iter [75] 97.0% map-enodes [80] 2.8% --------------------------------------------------------------------------- table-ref [61] 100.0% [69] 326284(49.6%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:63:12 table-ref [61] 99.9% ??? [26] 0.1% --------------------------------------------------------------------------- hash-has-key? [51] 18.6% table-ref [61] 81.4% [70] 124906(19.0%) 53572(8.1%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [77] 42.3% ??? [87] 12.7% ??? [156] 1.9% arrow-higher-order:lnp [83] 0.3% --------------------------------------------------------------------------- rewriter [62] 100.0% [71] 73346(11.2%) 1040(0.2%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [76] 99.8% --------------------------------------------------------------------------- atab-add-altn [64] 100.0% [72] 29426(4.5%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [78] 98.9% --------------------------------------------------------------------------- loop [63] 100.0% [73] 16116(2.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:151:2 loop [81] 56.1% make-exacts* [79] 33.0% eval-prog [90] 10.8% --------------------------------------------------------------------------- table-ref [61] 100.0% [74] 3602(0.5%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:123:0 expr->enode [82] 91.6% mk-enode! [106] 8.4% --------------------------------------------------------------------------- iterate-egraph!13 [68] 100.0% [75] 346762(52.7%) 4364(0.7%) one-iter ...ie/develop/src/core/simplify.rkt:113:0 loop [84] 74.5% for-loop [85] 22.8% apply-match [92] 1.5% --------------------------------------------------------------------------- for-loop [86] 24.3% matcher [76] 25.9% for-loop [71] 49.8% [76] 73346(11.2%) 0(0.0%) matcher ...rbie/develop/src/core/matcher.rkt:167:2 rewriter [62] 49.5% matcher [76] 25.9% for-loop [86] 24.3% for-loop [8] 0.2% variable? [5] 0.1% --------------------------------------------------------------------------- ??? [70] 100.0% [77] 52846(8.0%) 24384(3.7%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [87] 32.5% for-loop [147] 18.9% ??? [165] 1.9% ??? [178] 0.6% --------------------------------------------------------------------------- composed [67] 1.2% best-and-tied-at-points [72] 98.8% [78] 29452(4.5%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:218:0 for-loop [88] 73.6% eval-prog [90] 26.4% --------------------------------------------------------------------------- loop [73] 24.8% loop [63] 75.2% [79] 21440(3.3%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 map [89] 47.8% loop [135] 43.5% eval-prog [90] 8.7% --------------------------------------------------------------------------- iterate-egraph!13 [68] 100.0% [80] 10114(1.5%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:139:0 loop [135] 96.5% for-loop [7] 3.5% --------------------------------------------------------------------------- loop [63] 7.5% loop [73] 92.5% [81] 9784(1.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 map [89] 100.0% --------------------------------------------------------------------------- mk-egraph [74] 27.8% expr->enode [82] 72.2% [82] 3300(0.5%) 328(0.0%) expr->enode ...e/develop/src/core/egraph.rkt:124:2 expr->enode [82] 72.2% mk-enode! [106] 22.8% --------------------------------------------------------------------------- ??? [70] 25.0% ??? [35] 26.8% maybe-cons-kwd [46] 48.2% [83] 1336(0.2%) 1014(0.2%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [91] 24.1% --------------------------------------------------------------------------- one-iter [75] 100.0% [84] 258172(39.3%) 698(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [92] 99.7% --------------------------------------------------------------------------- for-loop [85] 49.3% one-iter [75] 50.7% [85] 78932(12.0%) 14670(2.2%) for-loop ...e/develop/src/core/simplify.rkt:123:12 for-loop [85] 49.3% match-e [97] 40.3% ??? [121] 0.4% --------------------------------------------------------------------------- matcher [76] 100.0% [86] 69856(10.6%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:183:21 matcher [76] 100.0% --------------------------------------------------------------------------- ??? [70] 47.9% for-loop [77] 52.1% [87] 32996(5.0%) 17130(2.6%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [94] 48.1% --------------------------------------------------------------------------- errors [78] 100.0% [88] 21666(3.3%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:221:4 ??? [93] 90.6% ??? [35] 4.8% ??? [95] 3.2% --------------------------------------------------------------------------- f137 [23] 1.7% ??? [9] 3.1% loop [81] 46.5% make-exacts* [79] 48.7% [89] 21058(3.2%) 360(0.1%) map ...acket/collects/racket/private/map.rkt:20:13 loop [135] 95.2% ??? [35] 3.1% --------------------------------------------------------------------------- loop [73] 15.3% make-exacts* [79] 16.3% errors [78] 68.4% [90] 11390(1.7%) 666(0.1%) eval-prog ...herbie/develop/src/programs.rkt:148:0 f137 [23] 62.9% hash-ref! [118] 31.2% --------------------------------------------------------------------------- arrow-higher-order:lnp [83] 100.0% [91] 322(0.0%) 322(0.0%) ??? ...et/contract/private/arity-checking.rkt:19:2 --------------------------------------------------------------------------- one-iter [75] 2.0% loop [84] 98.0% [92] 262768(40.0%) 326(0.0%) apply-match ...develop/src/core/simplify.rkt:130:2 for-loop [96] 90.0% match-e [97] 9.8% reduce-to-single! [99] 0.1% --------------------------------------------------------------------------- for-loop [88] 40.6% loop [135] 59.4% [93] 48294(7.3%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:154:4 ??? [98] 100.0% --------------------------------------------------------------------------- ??? [87] 100.0% [94] 15866(2.4%) 15866(2.4%) make-keyword-procedure ...ket/private/kw.rkt:260:4 --------------------------------------------------------------------------- for-loop [88] 100.0% [95] 684(0.1%) 684(0.1%) ??? ...ket/collects/racket/private/for.rkt:1151:14 --------------------------------------------------------------------------- apply-match [92] 100.0% [96] 236402(35.9%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:145:10 mk-enode! [106] 34.3% substitute-e [100] 30.1% merge-egraph-nodes! [101] 25.0% loop! [141] 8.2% list-member? [103] 2.4% --------------------------------------------------------------------------- apply-match [92] 16.7% for-loop [107] 25.9% for-loop [85] 57.4% [97] 89288(13.6%) 28762(4.4%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [102] 49.1% for-loop [107] 9.1% ??? [42] 5.7% variable? [5] 4.0% list-cartesian-product [109] 2.6% custom-in-set [175] 1.7% loop [135] 1.2% filter [174] 0.2% --------------------------------------------------------------------------- ??? [93] 100.0% [98] 48294(7.3%) 22516(3.4%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [149] 30.2% bf* [143] 10.3% ??? [104] 6.3% ??? [105] 3.4% parse-loop12 [130] 1.6% --------------------------------------------------------------------------- apply-match [92] 100.0% [99] 328(0.0%) 0(0.0%) reduce-to-single! ...lop/src/core/egraph.rkt:324:0 make-sequence [154] 100.0% --------------------------------------------------------------------------- substitute-e [100] 4.6% for-loop [96] 95.4% [100] 71126(10.8%) 2072(0.3%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [106] 90.6% substitute-e [100] 4.6% variable? [5] 1.4% ??? [42] 1.2% --------------------------------------------------------------------------- for-loop [111] 4.0% merge-egraph-nodes! [101] 6.7% for-loop [96] 89.3% [101] 59208(9.0%) 2816(0.4%) merge-egraph-nodes! ...p/src/core/egraph.rkt:152:0 update-leader! [108] 52.5% loop! [141] 12.6% for-loop [110] 12.1% merge-egraph-nodes! [101] 6.7% for-loop [111] 6.6% enode-merge! [113] 4.2% make-sequence [154] 0.6% --------------------------------------------------------------------------- match-e [97] 100.0% [102] 58000(8.8%) 17872(2.7%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [107] 55.0% list-cartesian-product [109] 8.3% loop [135] 3.5% foldl [144] 2.7% curry* [115] 0.9% curried [145] 0.6% filter [174] 0.6% --------------------------------------------------------------------------- for-loop [96] 100.0% [103] 5736(0.9%) 0(0.0%) list-member? ...llects/racket/private/set.rkt:24:0 loop [112] 65.4% member [114] 34.6% --------------------------------------------------------------------------- ??? [98] 100.0% [104] 3050(0.5%) 1408(0.2%) ??? ...herbie/develop/src/syntax/syntax.rkt:153:17 return/no-unsupplied [160] 32.3% ??? [159] 21.5% --------------------------------------------------------------------------- ??? [98] 100.0% [105] 1660(0.3%) 1660(0.3%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 --------------------------------------------------------------------------- mk-egraph [74] 0.2% expr->enode [82] 2.0% substitute-e [100] 43.3% for-loop [96] 54.5% [106] 148684(22.6%) 10052(1.5%) mk-enode! ...bie/develop/src/core/egraph.rkt:101:0 new-enode [116] 91.2% hash-has-key? [51] 1.8% mutable-set [124] 0.2% --------------------------------------------------------------------------- match-e [97] 30.4% for-loop [102] 69.6% [107] 45326(6.9%) 5216(0.8%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [97] 89.7% ??? [121] 0.8% --------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [108] 34118(5.2%) 3746(0.6%) update-leader! ...evelop/src/core/egraph.rkt:217:0 for-loop [117] 78.9% update-en-expr [162] 3.0% custom-set-union! [122] 3.0% hash-ref! [118] 2.0% mutable-set [124] 1.1% make-sequence [154] 1.0% --------------------------------------------------------------------------- match-e [97] 21.3% list-cartesian-product [109] 25.9% for-loop [102] 52.8% [109] 8504(1.3%) 7132(1.1%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [109] 25.9% for-loop [120] 12.1% --------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [110] 7150(1.1%) 6218(0.9%) for-loop ...rbie/develop/src/core/egraph.rkt:232:6 update-en-expr [162] 13.0% --------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [111] 6116(0.9%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:200:10 merge-egraph-nodes! [101] 74.9% loop! [141] 25.1% --------------------------------------------------------------------------- list-member? [103] 100.0% [112] 3754(0.6%) 3754(0.6%) loop (unknown source) --------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [113] 3018(0.5%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:129:0 adopt-enode! [119] 76.2% custom-set-intersect! [123] 23.8% --------------------------------------------------------------------------- list-member? [103] 100.0% [114] 1982(0.3%) 1982(0.3%) member (unknown source) --------------------------------------------------------------------------- for-loop [102] 100.0% [115] 666(0.1%) 0(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [125] 100.0% --------------------------------------------------------------------------- mk-enode! [106] 100.0% [116] 135616(20.6%) 358(0.1%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [126] 99.0% set [153] 0.8% --------------------------------------------------------------------------- update-leader! [108] 100.0% [117] 26928(4.1%) 692(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:222:6 for-loop [127] 96.2% update-en-expr [162] 1.2% --------------------------------------------------------------------------- update-leader! [108] 3.2% eval-prog [90] 3.4% ??? [9] 6.4% loop [135] 13.0% compile [53] 31.6% ??? [128] 40.8% [118] 21648(3.3%) 14970(2.3%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [128] 58.7% parse-loop12 [130] 7.8% bigfloat-hash [129] 2.0% f137 [23] 0.2% --------------------------------------------------------------------------- enode-merge! [113] 100.0% [119] 2300(0.3%) 332(0.1%) adopt-enode! ...e/develop/src/core/enode.rkt:105:0 custom-set-union [151] 85.6% --------------------------------------------------------------------------- list-cartesian-product [109] 100.0% [120] 1372(0.2%) 1372(0.2%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 --------------------------------------------------------------------------- for-loop [107] 34.4% for-loop [85] 65.6% [121] 1046(0.2%) 686(0.1%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [131] 34.4% --------------------------------------------------------------------------- update-leader! [108] 100.0% [122] 1022(0.2%) 1022(0.2%) custom-set-union! ...t/private/set-types.rkt:245:0 --------------------------------------------------------------------------- enode-merge! [113] 100.0% [123] 718(0.1%) 360(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 for-loop [132] 49.9% --------------------------------------------------------------------------- mk-enode! [106] 47.5% update-leader! [108] 52.5% [124] 690(0.1%) 362(0.1%) mutable-set .../racket/private/set-types.rkt:999:0 for-loop [133] 47.5% --------------------------------------------------------------------------- curry* [115] 100.0% [125] 666(0.1%) 666(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 --------------------------------------------------------------------------- new-enode [116] 100.0% [126] 134240(20.4%) 2382(0.4%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [134] 98.2% --------------------------------------------------------------------------- for-loop [117] 100.0% [127] 25906(3.9%) 332(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:223:8 hash-update! [136] 98.7% --------------------------------------------------------------------------- hash-ref! [118] 100.0% [128] 16564(2.5%) 2360(0.4%) ??? ...tlies/herbie/develop/src/programs.rkt:183:5 hash-ref! [118] 72.1% loop [135] 21.5% --------------------------------------------------------------------------- hash-ref! [118] 100.0% [129] 2580(0.4%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [137] 58.7% bfcanonicalize [138] 41.3% --------------------------------------------------------------------------- ??? [98] 30.7% hash-ref! [118] 69.3% [130] 2508(0.4%) 770(0.1%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [135] 69.3% --------------------------------------------------------------------------- ??? [121] 100.0% [131] 360(0.1%) 360(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 --------------------------------------------------------------------------- custom-set-intersect! [123] 100.0% [132] 358(0.1%) 358(0.1%) for-loop ...cts/racket/private/set-types.rkt:272:4 --------------------------------------------------------------------------- mutable-set [124] 100.0% [133] 328(0.0%) 328(0.0%) for-loop ...cts/racket/private/set-types.rkt:943:2 --------------------------------------------------------------------------- type-of-enode-expr [126] 100.0% [134] 131858(20.0%) 4922(0.7%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 table-ref [61] 36.1% ??? [139] 35.5% ??? [42] 12.4% ...velop/src/common.rkt:47:2 [140] 12.4% --------------------------------------------------------------------------- make-exacts* [79] 0.0% map [89] 0.3% parse-loop12 [130] 0.9% match-e [97] 1.7% map-enodes [80] 2.4% for-loop [102] 3.8% ??? [128] 5.6% loop! [141] 6.8% loop [135] 78.5% [135] 63902(9.7%) 1772(0.3%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [135] 78.5% loop! [141] 6.8% hash-ref! [118] 5.6% for-loop [7] 2.3% foldl [144] 1.6% curried [145] 1.1% ??? [9] 0.9% ??? [93] 0.4% bf* [143] 0.0% ??? [149] 0.0% ??? [35] 0.0% --------------------------------------------------------------------------- for-loop [127] 100.0% [136] 25574(3.9%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [142] 100.0% --------------------------------------------------------------------------- bigfloat-hash [129] 100.0% [137] 1514(0.2%) 1514(0.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 --------------------------------------------------------------------------- bigfloat-hash [129] 100.0% [138] 1066(0.2%) 1066(0.2%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 --------------------------------------------------------------------------- ??? [35] 0.5% for-loop [41] 2.8% f137 [23] 17.5% get-sigs [134] 79.1% [139] 59068(9.0%) 4082(0.6%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [146] 55.0% for-loop [147] 29.9% get/build-late-neg-projection [183] 5.2% ??? [165] 1.2% --------------------------------------------------------------------------- ??? [35] 2.7% f137 [23] 8.9% get-sigs [134] 30.1% for-loop [41] 58.3% [140] 54090(8.2%) 17886(2.7%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [150] 38.3% ??? [152] 28.0% --------------------------------------------------------------------------- for-loop [111] 2.8% merge-egraph-nodes! [101] 23.6% loop [135] 25.5% for-loop [96] 48.0% [141] 31088(4.7%) 5146(0.8%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 custom-set-union [151] 47.0% loop [135] 25.5% set [153] 11.8% update-en-expr [162] 4.6% --------------------------------------------------------------------------- hash-update! [136] 100.0% [142] 25574(3.9%) 1008(0.2%) ??? ...s/herbie/develop/src/core/egraph.rkt:225:24 for-loop [148] 93.3% make-sequence [154] 2.8% --------------------------------------------------------------------------- loop [135] 6.8% ??? [98] 93.2% [143] 5360(0.8%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [149] 100.0% --------------------------------------------------------------------------- loop [135] 43.8% for-loop [102] 56.2% [144] 3056(0.5%) 1640(0.2%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [155] 46.3% --------------------------------------------------------------------------- for-loop [102] 16.9% ormap [24] 33.3% loop [135] 49.7% [145] 1974(0.3%) 1974(0.3%) curried ...cket/collects/racket/function.rkt:71:18 --------------------------------------------------------------------------- ??? [139] 100.0% [146] 32488(4.9%) 1714(0.3%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [157] 94.7% --------------------------------------------------------------------------- for-loop [77] 36.1% ??? [139] 63.9% [147] 27638(4.2%) 7408(1.1%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [156] 71.9% ??? [179] 1.3% --------------------------------------------------------------------------- ??? [142] 100.0% [148] 23848(3.6%) 21068(3.2%) for-loop ...bie/develop/src/core/egraph.rkt:226:26 update-en-expr [162] 11.7% --------------------------------------------------------------------------- loop [135] 1.7% eval-const-expr [15] 3.1% bf* [143] 25.5% ??? [98] 69.6% [149] 20980(3.2%) 6374(1.0%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfadd [158] 65.8% bfneg [166] 3.8% --------------------------------------------------------------------------- for-loop [172] 4.9% ??? [156] 17.2% ...velop/src/common.rkt:47:2 [140] 77.9% [150] 20724(3.2%) 5126(0.8%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [156] 66.2% ??? [178] 13.9% ??? [165] 3.3% --------------------------------------------------------------------------- adopt-enode! [119] 11.3% loop! [141] 88.7% [151] 17376(2.6%) 4138(0.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [161] 60.6% for-loop [164] 15.6% --------------------------------------------------------------------------- ...velop/src/common.rkt:47:2 [140] 100.0% [152] 15124(2.3%) 4778(0.7%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [159] 28.9% assoc-ref [163] 24.8% return/no-unsupplied [160] 14.6% --------------------------------------------------------------------------- new-enode [116] 11.9% loop! [141] 88.1% [153] 8562(1.3%) 8562(1.3%) set ...collects/racket/private/set-types.rkt:981:0 --------------------------------------------------------------------------- reduce-to-single! [99] 19.0% update-leader! [108] 19.3% merge-egraph-nodes! [101] 20.1% ??? [142] 41.6% [154] 1728(0.3%) 1022(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [167] 40.9% --------------------------------------------------------------------------- foldl [144] 100.0% [155] 1416(0.2%) 1416(0.2%) merge2 .../herbie/develop/src/core/ematch.rkt:31:0 --------------------------------------------------------------------------- unpack245 [37] 0.8% table-ref [61] 4.4% ??? [70] 5.5% ??? [150] 42.8% for-loop [147] 46.5% [156] 42750(6.5%) 8770(1.3%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [169] 42.5% ??? [150] 16.7% for-loop [172] 15.6% ??? [179] 4.8% --------------------------------------------------------------------------- ??? [146] 100.0% [157] 30774(4.7%) 664(0.1%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [168] 97.8% --------------------------------------------------------------------------- ??? [149] 100.0% [158] 13804(2.1%) 9832(1.5%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [173] 28.8% --------------------------------------------------------------------------- ??? [104] 5.5% table-ref [61] 28.6% flag-set? [33] 29.2% ??? [152] 36.7% [159] 11906(1.8%) 2026(0.3%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [170] 72.8% ??? [178] 10.1% --------------------------------------------------------------------------- ??? [104] 8.5% ??? [152] 19.1% table-ref [61] 32.5% flag-set? [33] 40.0% [160] 11618(1.8%) 9004(1.4%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [174] 22.5% --------------------------------------------------------------------------- custom-set-union [151] 100.0% [161] 10524(1.6%) 2368(0.4%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [171] 77.5% --------------------------------------------------------------------------- for-loop [117] 4.1% for-loop [110] 11.6% update-leader! [108] 12.8% for-loop [148] 34.5% loop! [141] 37.1% [162] 8062(1.2%) 8062(1.2%) update-en-expr ...evelop/src/core/egraph.rkt:211:0 --------------------------------------------------------------------------- ??? [152] 100.0% [163] 3758(0.6%) 3758(0.6%) assoc-ref ...collects/racket/private/dict.rkt:56:0 --------------------------------------------------------------------------- custom-set-union [151] 100.0% [164] 2714(0.4%) 2714(0.4%) for-loop ...cts/racket/private/set-types.rkt:152:2 --------------------------------------------------------------------------- ??? [150] 28.5% ??? [139] 29.4% for-loop [77] 42.0% [165] 2364(0.4%) 704(0.1%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [176] 70.2% --------------------------------------------------------------------------- ??? [149] 100.0% [166] 802(0.1%) 426(0.1%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [173] 46.9% --------------------------------------------------------------------------- make-sequence [154] 100.0% [167] 706(0.1%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [175] 100.0% --------------------------------------------------------------------------- ??? [157] 100.0% [168] 30110(4.6%) 1676(0.3%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [177] 94.4% --------------------------------------------------------------------------- ??? [156] 100.0% [169] 18150(2.8%) 1694(0.3%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [178] 83.3% ??? [179] 7.4% --------------------------------------------------------------------------- ??? [159] 100.0% [170] 8672(1.3%) 8338(1.3%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [181] 3.9% --------------------------------------------------------------------------- for-loop [161] 100.0% [171] 8156(1.2%) 8156(1.2%) for-loop ...cts/racket/private/set-types.rkt:178:5 --------------------------------------------------------------------------- ??? [156] 100.0% [172] 6662(1.0%) 4636(0.7%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [150] 30.4% --------------------------------------------------------------------------- bfneg [166] 8.6% bfadd [158] 91.4% [173] 4348(0.7%) 4348(0.7%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 --------------------------------------------------------------------------- for-loop [102] 10.1% match-e [97] 10.5% return/no-unsupplied [160] 79.5% [174] 3290(0.5%) 3290(0.5%) filter ...t/collects/racket/private/list.rkt:256:2 --------------------------------------------------------------------------- ??? [167] 28.9% match-e [97] 71.1% [175] 2442(0.4%) 2442(0.4%) custom-in-set ...acket/private/set-types.rkt:577:0 --------------------------------------------------------------------------- ??? [165] 100.0% [176] 1660(0.3%) 708(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [180] 57.3% --------------------------------------------------------------------------- ??? [168] 100.0% [177] 28434(4.3%) 7458(1.1%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [182] 48.0% get/build-late-neg-projection [183] 25.7% --------------------------------------------------------------------------- for-loop [77] 1.3% ??? [38] 2.8% ??? [159] 5.0% ??? [35] 5.4% ??? [150] 23.7% ??? [169] 61.9% [178] 24400(3.7%) 17462(2.7%) ??? ...ects/racket/contract/private/guts.rkt:644:8 contract? [184] 16.5% ??? [42] 8.2% dict? [185] 3.7% --------------------------------------------------------------------------- for-loop [147] 9.6% ??? [169] 35.9% ??? [156] 54.5% [179] 3746(0.6%) 2068(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [186] 44.8% --------------------------------------------------------------------------- check-hash/c [176] 100.0% [180] 952(0.1%) 952(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 --------------------------------------------------------------------------- ??? [170] 100.0% [181] 334(0.1%) 334(0.1%) ??? ...ects/racket/contract/private/prop.rkt:256:4 --------------------------------------------------------------------------- for-loop [177] 100.0% [182] 13658(2.1%) 13658(2.1%) add-list-context ...ontract/private/list.rkt:752:0 --------------------------------------------------------------------------- ??? [188] 13.3% ??? [139] 16.4% for-loop [177] 70.3% [183] 10414(1.6%) 668(0.1%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [187] 78.7% ??? [188] 13.3% --------------------------------------------------------------------------- ??? [178] 100.0% [184] 4038(0.6%) 4038(0.6%) contract? ...acket/contract/private/guts.rkt:109:0 --------------------------------------------------------------------------- *rules* [4] 25.4% ??? [178] 35.6% table-ref [61] 39.0% [185] 2540(0.4%) 2540(0.4%) dict? ...ollects/racket/private/generic.rkt:146:11 --------------------------------------------------------------------------- ??? [179] 100.0% [186] 1678(0.3%) 332(0.1%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [189] 80.2% --------------------------------------------------------------------------- get/build-late-neg-projection [183]100.0% [187] 9420(1.4%) 2040(0.3%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [190] 78.3% --------------------------------------------------------------------------- get/build-late-neg-projection [183]100.0% [188] 2768(0.4%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [183]100.0% --------------------------------------------------------------------------- ??? [186] 100.0% [189] 1346(0.2%) 1346(0.2%) ??? ...ects/racket/contract/private/list.rkt:141:5 --------------------------------------------------------------------------- contract-struct-name [191] 19.3% ??? [187] 80.7% [190] 7380(1.1%) 5302(0.8%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [191] 45.4% --------------------------------------------------------------------------- build-compound-type-name [190] 100.0% [191] 4618(0.7%) 2078(0.3%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [190] 58.3% ---------------------------------------------------------------------------