Profiling results ----------------- Total cpu time observed: 665164ms (out of 667808ms) Number of samples taken: 1988 (once every 335ms) (Hiding functions with self<1.0% and local<2.0%: 13 of 195 hidden) ======================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================================== ??? [31] 100.0% [1] 513112(77.1%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [8] 100.0% ---------------------------------------------------------------------------------------- ??? [31] 100.0% [2] 487542(73.3%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [9] 99.3% prepare-points [35] 0.4% setup-alt-simplified [12] 0.2% ??? [47] 0.1% ---------------------------------------------------------------------------------------- ??? [46] 100.0% [3] 145498(21.9%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:237:2 pass [10] 100.0% ---------------------------------------------------------------------------------------- rewriter [34] 100.0% [4] 27986(4.2%) 2364(0.4%) *rules* ...rbie/develop/src/syntax/rules.rkt:565:0 for-loop [11] 85.5% ormap [16] 4.8% curry* [144] 1.2% ---------------------------------------------------------------------------------------- loop [124] 4.3% loop [119] 5.9% for-loop [78] 18.6% f137 [44] 71.2% [5] 7030(1.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [46] 67.5% ??? [168] 23.0% ...velop/src/common.rkt:47:2 [127] 9.5% ---------------------------------------------------------------------------------------- matcher [39] 15.9% substitute-e [75] 20.4% match-e [70] 63.8% [6] 6784(1.0%) 364(0.1%) variable? ...e/develop/src/syntax/syntax.rkt:665:0 ??? [47] 94.6% ---------------------------------------------------------------------------------------- loop [119] 100.0% [7] 1398(0.2%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [100] 100.0% ---------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [8] 513112(77.1%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [31] 100.0% ---------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [9] 484316(72.8%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [13] 100.0% ---------------------------------------------------------------------------------------- loop [3] 100.0% [10] 145498(21.9%) 0(0.0%) pass ...herbie/develop/src/core/simplify.rkt:227:2 for-loop [14] 100.0% ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 5.2% *rules* [4] 94.8% [11] 25258(3.8%) 7718(1.2%) for-loop ...ies/herbie/develop/src/common.rkt:99:9 loop [15] 34.2% flag-set? [23] 17.1% ormap [16] 17.0% list-member? [81] 1.2% ---------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [12] 1026(0.2%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [17] 100.0% ---------------------------------------------------------------------------------------- for-loop [9] 100.0% [13] 484316(72.8%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [18] 76.2% gen-rewrites! [20] 16.7% finalize-iter! [21] 6.6% localize-error [25] 0.5% ---------------------------------------------------------------------------------------- pass [10] 100.0% [14] 145498(21.9%) 1286(0.2%) for-loop ...e/develop/src/core/simplify.rkt:230:29 argmin [19] 81.8% loop [22] 12.9% for-loop [24] 4.2% make-sequence [145] 0.2% ---------------------------------------------------------------------------------------- for-loop [30] 3.5% for-loop [11] 96.5% [15] 8946(1.3%) 1580(0.2%) loop ...ket/collects/racket/private/map.rkt:112:23 flag-set? [23] 74.5% list-member? [81] 4.1% curried [132] 3.7% ---------------------------------------------------------------------------------------- for-loop [30] 5.5% *rules* [4] 22.6% for-loop [11] 71.8% [16] 5966(0.9%) 630(0.1%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [23] 83.9% list-member? [81] 5.5% ---------------------------------------------------------------------------------------- setup-alt-simplified [12] 100.0% [17] 1026(0.2%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [46] 100.0% ---------------------------------------------------------------------------------------- run-iter! [13] 100.0% [18] 368852(55.5%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [26] 100.0% ---------------------------------------------------------------------------------------- for-loop [14] 100.0% [19] 119008(17.9%) 622(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [27] 86.4% expression-cost [29] 13.1% ---------------------------------------------------------------------------------------- run-iter! [13] 100.0% [20] 80930(12.2%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [28] 100.0% ---------------------------------------------------------------------------------------- run-iter! [13] 100.0% [21] 32194(4.8%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [47] 100.0% ---------------------------------------------------------------------------------------- for-loop [14] 100.0% [22] 18782(2.8%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [27] 87.8% expression-cost [29] 12.2% ---------------------------------------------------------------------------------------- for-loop [11] 27.0% ormap [16] 31.3% loop [15] 41.7% [23] 15996(2.4%) 8088(1.2%) flag-set? ...es/herbie/develop/src/config.rkt:34:0 return/no-unsupplied [152] 27.0% ??? [150] 22.5% ---------------------------------------------------------------------------------------- for-loop [14] 100.0% [24] 6088(0.9%) 6088(0.9%) for-loop ...e/develop/src/core/simplify.rkt:217:13 ---------------------------------------------------------------------------------------- run-iter! [13] 100.0% [25] 2340(0.4%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [100] 72.6% for-loop [30] 27.4% ---------------------------------------------------------------------------------------- simplify! [18] 98.3% [26] 375418(56.4%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [31] 100.0% ---------------------------------------------------------------------------------------- loop [22] 13.8% argmin [19] 86.2% [27] 119260(17.9%) 3282(0.5%) for-loop .../herbie/develop/src/programs.rkt:210:2 ??? [46] 66.4% ...velop/src/common.rkt:47:2 [127] 30.1% ??? [126] 0.8% ---------------------------------------------------------------------------------------- gen-rewrites! [20] 100.0% [28] 80930(12.2%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [32] 100.0% ---------------------------------------------------------------------------------------- loop [22] 12.8% argmin [19] 87.2% [29] 17908(2.7%) 352(0.1%) expression-cost .../develop/src/programs.rkt:209:0 compile [33] 98.0% ---------------------------------------------------------------------------------------- localize-error [25] 100.0% [30] 642(0.1%) 0(0.0%) for-loop ...ie/develop/src/core/localize.rkt:61:10 ormap [16] 51.4% loop [15] 48.6% ---------------------------------------------------------------------------------------- for-loop [26] 19.8% run [8] 29.9% [31] 653330(98.2%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 ??? [46] 39.8% profile-thunk16 [1] 29.9% run-improve50 [2] 28.1% prepare-points [35] 2.3% ---------------------------------------------------------------------------------------- for-loop [28] 100.0% [32] 80930(12.2%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [34] 100.0% ---------------------------------------------------------------------------------------- expression-cost [29] 100.0% [33] 17556(2.6%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:186:0 hash-ref! [100] 100.0% ---------------------------------------------------------------------------------------- ??? [32] 14.2% matcher [39] 85.8% [34] 80930(12.2%) 8400(1.3%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [36] 86.8% *rules* [4] 4.7% f137 [44] 4.0% expression->type [37] 3.1% ---------------------------------------------------------------------------------------- run-improve50 [2] 6.1% ??? [31] 93.9% [35] 30712(4.6%) 0(0.0%) prepare-points ...bie/develop/src/points.rkt:214:0 loop [38] 37.2% make-exacts* [40] 34.7% loop [42] 28.1% ---------------------------------------------------------------------------------------- rewriter [34] 100.0% [36] 80930(12.2%) 992(0.1%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [39] 99.8% ---------------------------------------------------------------------------------------- f137 [44] 0.5% for-loop [41] 27.6% rewriter [34] 72.0% [37] 14830(2.2%) 0(0.0%) expression->type ...evelop/src/type-check.rkt:45:0 for-loop [41] 100.0% ---------------------------------------------------------------------------------------- prepare-points [35] 100.0% [38] 11412(1.7%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [40] 57.6% loop [42] 42.4% ---------------------------------------------------------------------------------------- for-loop [43] 24.7% matcher [39] 25.6% for-loop [36] 49.7% [39] 80930(12.2%) 1018(0.2%) matcher ...rbie/develop/src/core/matcher.rkt:167:2 rewriter [34] 49.4% matcher [39] 25.6% for-loop [43] 24.7% for-loop [45] 0.2% variable? [6] 0.1% ---------------------------------------------------------------------------------------- loop [38] 38.1% prepare-points [35] 61.9% [40] 17242(2.6%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [119] 75.7% eval-prog [80] 24.3% ---------------------------------------------------------------------------------------- expression->type [37] 100.0% [41] 14830(2.2%) 0(0.0%) for-loop ...herbie/develop/src/type-check.rkt:52:5 f137 [44] 72.4% expression->type [37] 27.6% ---------------------------------------------------------------------------------------- loop [38] 35.9% prepare-points [35] 64.1% [42] 13470(2.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [119] 97.7% ??? [85] 2.3% ---------------------------------------------------------------------------------------- matcher [39] 100.0% [43] 78894(11.9%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:183:21 matcher [39] 100.0% ---------------------------------------------------------------------------------------- eval-prog [80] 1.7% eval-const-expr [142] 8.1% f137 [44] 9.2% for-loop [41] 30.0% rewriter [34] 51.0% [44] 48784(7.3%) 2066(0.3%) f137 .../collects/racket/match/compiler.rkt:507:40 ??? [126] 29.3% ??? [46] 21.7% ??? [47] 19.3% f137 [44] 9.2% ...velop/src/common.rkt:47:2 [127] 8.9% ??? [48] 6.0% ??? [5] 1.6% expression->type [37] 0.4% ---------------------------------------------------------------------------------------- matcher [39] 100.0% [45] 1248(0.2%) 0(0.0%) for-loop ...bie/develop/src/core/matcher.rkt:159:6 pattern-substitute [49] 51.3% pattern-match [50] 48.7% ---------------------------------------------------------------------------------------- simplify-alt [17] 0.1% ??? [5] 0.9% f137 [44] 1.9% get-sigs [118] 2.8% for-loop [27] 5.0% ??? [46] 16.0% for-loop [52] 28.6% ??? [31] 44.3% [46] 523736(78.7%) 41894(6.3%) ??? ...llects/racket/private/norm-define.rkt:53:83 iterate-egraph!13 [51] 33.1% for-loop [52] 28.6% ??? [46] 16.0% loop [3] 11.4% ??? [59] 6.2% ??? [150] 0.3% return/no-unsupplied [152] 0.2% ??? [148] 0.2% mk-egraph [55] 0.2% dict? [176] 0.0% ---------------------------------------------------------------------------------------- run-improve50 [2] 0.4% pattern-substitute [49] 0.8% substitute-e [75] 1.7% ??? [168] 4.6% variable? [6] 7.9% f137 [44] 11.6% match-e [70] 16.1% get-sigs [118] 18.5% finalize-iter! [21] 38.5% [47] 81552(12.3%) 17656(2.7%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [53] 39.4% for-loop [54] 37.3% atab-add-altns [56] 1.6% ---------------------------------------------------------------------------------------- f137 [44] 100.0% [48] 2924(0.4%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [168] 100.0% ---------------------------------------------------------------------------------------- for-loop [45] 41.5% pattern-substitute [49] 58.5% [49] 640(0.1%) 0(0.0%) pattern-substitute ...op/src/core/matcher.rkt:73:0 pattern-substitute [49] 58.5% ??? [47] 41.5% ---------------------------------------------------------------------------------------- for-loop [45] 100.0% [50] 608(0.1%) 306(0.0%) pattern-match ...develop/src/core/matcher.rkt:48:0 for-loop [57] 49.7% ---------------------------------------------------------------------------------------- ??? [46] 100.0% [51] 361412(54.3%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:105:0 one-iter [58] 96.0% map-enodes [61] 4.0% ---------------------------------------------------------------------------------------- ??? [46] 100.0% [52] 324914(48.8%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:66:12 ??? [46] 100.0% ---------------------------------------------------------------------------------------- mk-enode! [84] 6.7% ??? [47] 93.3% [53] 35338(5.3%) 9484(1.4%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [59] 71.3% ---------------------------------------------------------------------------------------- ??? [47] 100.0% [54] 31208(4.7%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [60] 100.0% ---------------------------------------------------------------------------------------- ??? [46] 100.0% [55] 2536(0.4%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:131:0 mk-enode-rec! [62] 88.1% mk-enode! [84] 11.9% ---------------------------------------------------------------------------------------- ??? [47] 100.0% [56] 1326(0.2%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [60] 100.0% ---------------------------------------------------------------------------------------- pattern-match [50] 100.0% [57] 302(0.0%) 302(0.0%) for-loop ...rbie/develop/src/core/matcher.rkt:66:9 ---------------------------------------------------------------------------------------- iterate-egraph!13 [51] 100.0% [58] 346872(52.1%) 5228(0.8%) one-iter ...ie/develop/src/core/simplify.rkt:116:0 for-loop [63] 73.4% for-loop [64] 24.8% ---------------------------------------------------------------------------------------- hash-has-key? [53] 23.2% ??? [46] 76.8% [59] 108774(16.4%) 48454(7.3%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [65] 41.4% ??? [72] 12.6% ??? [148] 0.9% successfully-got-the-right-kind-of-function [68] 0.6% ---------------------------------------------------------------------------------------- atab-add-altns [56] 4.1% for-loop [54] 95.9% [60] 32534(4.9%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [66] 97.9% override-at-pnts [67] 2.1% ---------------------------------------------------------------------------------------- iterate-egraph!13 [51] 100.0% [61] 14540(2.2%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:140:0 loop [119] 95.6% for-loop [129] 4.4% ---------------------------------------------------------------------------------------- mk-egraph [55] 30.9% mk-enode-rec! [62] 69.1% [62] 2234(0.3%) 0(0.0%) mk-enode-rec! ...develop/src/core/egraph.rkt:122:0 mk-enode-rec! [62] 69.1% mk-enode! [84] 30.9% ---------------------------------------------------------------------------------------- one-iter [58] 100.0% [63] 254614(38.3%) 938(0.1%) for-loop ...ie/develop/src/core/simplify.rkt:166:2 for-loop [69] 91.7% match-e [70] 7.4% reduce-to-single! [73] 0.5% ---------------------------------------------------------------------------------------- for-loop [64] 47.8% one-iter [58] 52.2% [64] 86038(12.9%) 24038(3.6%) for-loop ...e/develop/src/core/simplify.rkt:126:12 for-loop [64] 47.8% match-e [70] 35.8% ??? [101] 0.2% ---------------------------------------------------------------------------------------- ??? [59] 100.0% [65] 45024(6.8%) 19832(3.0%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [72] 34.7% for-loop [136] 16.8% ??? [155] 2.1% ??? [168] 1.5% ---------------------------------------------------------------------------------------- atab-add-altn [60] 100.0% [66] 31854(4.8%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [71] 99.0% ---------------------------------------------------------------------------------------- atab-add-altn [60] 100.0% [67] 680(0.1%) 0(0.0%) override-at-pnts ...p/src/core/alt-table.rkt:145:0 errors [71] 100.0% ---------------------------------------------------------------------------------------- ??? [59] 100.0% [68] 614(0.1%) 304(0.0%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [74] 50.5% ---------------------------------------------------------------------------------------- for-loop [63] 100.0% [69] 233452(35.1%) 310(0.0%) for-loop ...e/develop/src/core/simplify.rkt:148:10 mk-enode! [84] 35.8% substitute-e [75] 28.9% merge-egraph-nodes! [76] 24.1% loop! [98] 9.8% list-member? [81] 1.4% ---------------------------------------------------------------------------------------- for-loop [63] 14.2% for-loop [86] 22.7% for-loop [64] 63.1% [70] 80550(12.1%) 28552(4.3%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [77] 40.8% for-loop [86] 11.2% ??? [47] 8.0% loop [119] 2.8% list-cartesian-product [89] 2.7% variable? [6] 2.3% custom-in-set [166] 1.0% ---------------------------------------------------------------------------------------- override-at-pnts [67] 2.1% best-and-tied-at-points [66] 97.9% [71] 32212(4.8%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:271:0 for-loop [78] 77.2% eval-prog [80] 22.8% ---------------------------------------------------------------------------------------- ??? [59] 46.7% for-loop [65] 53.3% [72] 29320(4.4%) 14124(2.1%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [79] 51.8% ---------------------------------------------------------------------------------------- for-loop [63] 100.0% [73] 1312(0.2%) 624(0.1%) reduce-to-single! ...lop/src/core/egraph.rkt:325:0 for-loop [82] 52.4% ---------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [68]100.0% [74] 310(0.0%) 0(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [83] 100.0% ---------------------------------------------------------------------------------------- substitute-e [75] 3.5% for-loop [69] 96.5% [75] 67384(10.1%) 2262(0.3%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [84] 92.6% substitute-e [75] 3.5% variable? [6] 0.9% ??? [47] 0.7% ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 5.5% for-loop [88] 5.6% for-loop [69] 88.8% [76] 56154(8.4%) 1618(0.2%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 update-leader! [87] 51.6% loop! [98] 13.0% for-loop [90] 11.6% for-loop [88] 10.3% merge-egraph-nodes! [76] 5.5% enode-merge! [92] 2.4% for-loop [11] 1.8% make-sequence [145] 1.1% ---------------------------------------------------------------------------------------- match-e [70] 100.0% [77] 43020(6.5%) 14996(2.3%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [86] 54.0% list-cartesian-product [89] 11.1% loop [119] 2.3% curry* [144] 0.7% curried [132] 0.4% ---------------------------------------------------------------------------------------- errors [71] 100.0% [78] 24854(3.7%) 1026(0.2%) for-loop ...es/herbie/develop/src/points.rkt:274:4 ??? [85] 87.8% ??? [5] 5.3% ulp-difference [135] 1.4% ---------------------------------------------------------------------------------------- ??? [72] 100.0% [79] 15196(2.3%) 15196(2.3%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ---------------------------------------------------------------------------------------- make-exacts* [40] 36.3% errors [71] 63.7% [80] 11548(1.7%) 1392(0.2%) eval-prog ...herbie/develop/src/programs.rkt:150:0 f137 [44] 46.1% hash-ref! [100] 36.3% ??? [94] 2.9% go [95] 2.6% ---------------------------------------------------------------------------------------- for-loop [11] 7.1% ormap [16] 7.7% loop [15] 8.6% for-loop [69] 76.6% [81] 4234(0.6%) 992(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 loop [91] 60.8% member [93] 15.7% ---------------------------------------------------------------------------------------- reduce-to-single! [73] 100.0% [82] 688(0.1%) 688(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:326:8 ---------------------------------------------------------------------------------------- arity-checking-wrapper [74] 100.0% [83] 310(0.0%) 310(0.0%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ---------------------------------------------------------------------------------------- mk-egraph [55] 0.2% mk-enode-rec! [62] 1.5% substitute-e [75] 42.0% for-loop [69] 56.3% [84] 148444(22.3%) 10834(1.6%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [96] 91.1% hash-has-key? [53] 1.6% ---------------------------------------------------------------------------------------- loop [42] 0.7% for-loop [78] 45.9% loop [119] 53.4% [85] 47508(7.1%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:156:4 ??? [97] 100.0% ---------------------------------------------------------------------------------------- match-e [70] 38.5% for-loop [77] 61.5% [86] 38102(5.7%) 4322(0.6%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [70] 86.4% ??? [101] 3.5% ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [87] 30828(4.6%) 4530(0.7%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [99] 78.6% custom-set-union! [102] 3.4% make-sequence [145] 1.2% update-en-expr [153] 1.1% hash-ref! [100] 1.1% ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [88] 8642(1.3%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:201:10 merge-egraph-nodes! [76] 69.3% loop! [98] 30.7% ---------------------------------------------------------------------------------------- match-e [70] 22.1% list-cartesian-product [89] 26.5% for-loop [77] 51.4% [89] 8304(1.2%) 7382(1.1%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [89] 26.5% for-loop [103] 9.2% ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [90] 6500(1.0%) 4602(0.7%) for-loop ...rbie/develop/src/core/egraph.rkt:233:6 update-en-expr [153] 29.2% ---------------------------------------------------------------------------------------- list-member? [81] 100.0% [91] 2576(0.4%) 2576(0.4%) loop (unknown source) ---------------------------------------------------------------------------------------- merge-egraph-nodes! [76] 100.0% [92] 1706(0.3%) 682(0.1%) enode-merge! ...e/develop/src/core/enode.rkt:129:0 custom-set-intersect! [104] 40.3% adopt-enode! [105] 19.7% ---------------------------------------------------------------------------------------- list-member? [81] 100.0% [93] 666(0.1%) 666(0.1%) member (unknown source) ---------------------------------------------------------------------------------------- eval-prog [80] 100.0% [94] 340(0.1%) 340(0.1%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ---------------------------------------------------------------------------------------- eval-prog [80] 100.0% [95] 302(0.0%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [106] 100.0% ---------------------------------------------------------------------------------------- mk-enode! [84] 100.0% [96] 135250(20.3%) 1318(0.2%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [107] 98.0% set [111] 1.0% ---------------------------------------------------------------------------------------- ??? [85] 100.0% [97] 47508(7.1%) 22172(3.3%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [140] 26.9% bf* [130] 11.5% ??? [113] 7.0% ??? [114] 6.4% ---------------------------------------------------------------------------------------- for-loop [88] 6.1% merge-egraph-nodes! [76] 20.2% loop [119] 34.3% for-loop [69] 39.4% [98] 36376(5.5%) 6276(0.9%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 loop [119] 35.7% custom-set-union [110] 33.4% set [111] 16.0% update-en-expr [153] 4.4% ---------------------------------------------------------------------------------------- update-leader! [87] 100.0% [99] 24234(3.6%) 680(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [108] 95.9% update-en-expr [153] 1.3% ---------------------------------------------------------------------------------------- update-leader! [87] 1.4% localize-error [25] 2.3% eval-prog [80] 4.4% ??? [7] 4.9% loop [119] 13.3% compile [33] 25.5% ??? [109] 48.4% [100] 23770(3.6%) 16936(2.5%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [109] 62.7% parse-loop12 [115] 7.1% bigfloat-hash [112] 4.1% ---------------------------------------------------------------------------------------- for-loop [64] 21.1% for-loop [86] 78.9% [101] 1714(0.3%) 1036(0.2%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [117] 39.6% ---------------------------------------------------------------------------------------- update-leader! [87] 100.0% [102] 1034(0.2%) 312(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [116] 69.8% ---------------------------------------------------------------------------------------- list-cartesian-product [89] 100.0% [103] 922(0.1%) 922(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ---------------------------------------------------------------------------------------- enode-merge! [92] 100.0% [104] 688(0.1%) 688(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ---------------------------------------------------------------------------------------- enode-merge! [92] 100.0% [105] 336(0.1%) 0(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:105:0 custom-set-union [110] 100.0% ---------------------------------------------------------------------------------------- go [95] 7.1% loop [106] 92.9% [106] 302(0.0%) 302(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [106] 92.9% ---------------------------------------------------------------------------------------- new-enode [96] 100.0% [107] 132592(19.9%) 2594(0.4%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [118] 98.0% ---------------------------------------------------------------------------------------- for-loop [99] 100.0% [108] 23242(3.5%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [120] 100.0% ---------------------------------------------------------------------------------------- hash-ref! [100] 100.0% [109] 20520(3.1%) 1300(0.2%) ??? ...tlies/herbie/develop/src/programs.rkt:194:5 hash-ref! [100] 78.3% loop [119] 20.4% ---------------------------------------------------------------------------------------- adopt-enode! [105] 2.4% loop! [98] 97.6% [110] 14214(2.1%) 6054(0.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [121] 52.9% for-loop [123] 4.5% ---------------------------------------------------------------------------------------- new-enode [96] 9.9% loop! [98] 90.1% [111] 13550(2.0%) 13550(2.0%) set ...collects/racket/private/set-types.rkt:981:0 ---------------------------------------------------------------------------------------- hash-ref! [100] 100.0% [112] 3836(0.6%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [122] 89.3% sig+exp->bigfloat [125] 10.7% ---------------------------------------------------------------------------------------- ??? [97] 100.0% [113] 3302(0.5%) 3302(0.5%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ---------------------------------------------------------------------------------------- ??? [97] 100.0% [114] 3026(0.5%) 1708(0.3%) ??? ...herbie/develop/src/syntax/syntax.rkt:156:17 return/no-unsupplied [152] 33.2% ??? [150] 10.3% ---------------------------------------------------------------------------------------- hash-ref! [100] 100.0% [115] 1698(0.3%) 0(0.0%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [119] 77.6% loop [124] 22.4% ---------------------------------------------------------------------------------------- custom-set-union! [102] 100.0% [116] 722(0.1%) 722(0.1%) for-loop ...cts/racket/private/set-types.rkt:253:4 ---------------------------------------------------------------------------------------- ??? [101] 100.0% [117] 678(0.1%) 678(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ---------------------------------------------------------------------------------------- type-of-enode-expr [107] 100.0% [118] 129998(19.5%) 1882(0.3%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [126] 38.1% ??? [46] 34.3% ...velop/src/common.rkt:47:2 [127] 14.5% ??? [47] 11.6% ---------------------------------------------------------------------------------------- make-exacts* [40] 0.0% loop [42] 0.2% for-loop [77] 0.6% parse-loop12 [115] 1.0% map-enodes [61] 3.6% match-e [70] 3.7% ??? [109] 5.7% loop! [98] 10.9% loop [119] 74.3% [119] 73760(11.1%) 2414(0.4%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [119] 74.3% loop! [98] 10.6% hash-ref! [100] 5.7% for-loop [129] 3.6% foldl [133] 1.6% curried [132] 1.4% ??? [7] 0.9% ??? [85] 0.2% ??? [140] 0.1% bf* [130] 0.0% set-precompute! [134] 0.0% ??? [5] 0.0% ---------------------------------------------------------------------------------------- for-loop [108] 100.0% [120] 23242(3.5%) 304(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [128] 98.7% ---------------------------------------------------------------------------------------- custom-set-union [110] 100.0% [121] 7526(1.1%) 2290(0.3%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [131] 69.6% ---------------------------------------------------------------------------------------- bigfloat-hash [112] 100.0% [122] 3424(0.5%) 3424(0.5%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 ---------------------------------------------------------------------------------------- custom-set-union [110] 100.0% [123] 634(0.1%) 634(0.1%) for-loop ...cts/racket/private/set-types.rkt:152:2 ---------------------------------------------------------------------------------------- parse-loop12 [115] 4.5% loop [124] 95.5% [124] 624(0.1%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [124] 95.5% ulp-difference [135] 3.5% ??? [5] 1.0% ---------------------------------------------------------------------------------------- bigfloat-hash [112] 100.0% [125] 412(0.1%) 412(0.1%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ---------------------------------------------------------------------------------------- for-loop [27] 1.4% f137 [44] 22.3% get-sigs [118] 76.3% [126] 64898(9.8%) 2568(0.4%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [137] 47.4% for-loop [136] 40.4% get/build-late-neg-projection [174] 7.7% ??? [155] 0.5% ---------------------------------------------------------------------------------------- ??? [5] 1.1% f137 [44] 7.3% get-sigs [118] 31.6% for-loop [27] 60.0% [127] 59834(9.0%) 20778(3.1%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [139] 35.1% ??? [141] 29.1% ---------------------------------------------------------------------------------------- hash-update! [120] 100.0% [128] 22938(3.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [138] 100.0% ---------------------------------------------------------------------------------------- map-enodes [61] 4.8% loop [119] 95.2% [129] 13492(2.0%) 3718(0.6%) for-loop ...ie/develop/src/core/simplify.rkt:195:2 eval-const-expr [142] 41.9% setfindf [143] 18.7% curry* [144] 9.4% compose [147] 2.4% ---------------------------------------------------------------------------------------- loop [119] 6.1% ??? [97] 93.9% [130] 5844(0.9%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [140] 100.0% ---------------------------------------------------------------------------------------- for-loop [121] 100.0% [131] 5236(0.8%) 5236(0.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------------------------------- for-loop [77] 20.0% loop [15] 20.0% loop [119] 60.1% [132] 1674(0.3%) 1674(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ---------------------------------------------------------------------------------------- loop [119] 100.0% [133] 1630(0.2%) 322(0.0%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [146] 80.2% ---------------------------------------------------------------------------------------- loop [119] 100.0% [134] 702(0.1%) 340(0.1%) set-precompute! ...lop/src/core/simplify.rkt:193:0 make-sequence [145] 51.6% ---------------------------------------------------------------------------------------- loop [124] 48.2% for-loop [78] 51.8% [135] 672(0.1%) 324(0.0%) ulp-difference ...erbie/develop/src/float.rkt:19:0 ??? [150] 51.8% ---------------------------------------------------------------------------------------- for-loop [65] 22.4% ??? [126] 77.6% [136] 33814(5.1%) 4864(0.7%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [148] 84.7% ??? [170] 0.9% ---------------------------------------------------------------------------------------- ??? [126] 100.0% [137] 30780(4.6%) 2386(0.4%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [149] 92.2% ---------------------------------------------------------------------------------------- ??? [128] 100.0% [138] 22938(3.4%) 20254(3.0%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 update-en-expr [153] 11.7% ---------------------------------------------------------------------------------------- ...velop/src/common.rkt:47:2 [127] 100.0% [139] 20974(3.2%) 7796(1.2%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [150] 28.7% return/no-unsupplied [152] 18.7% assoc-ref [154] 15.4% ---------------------------------------------------------------------------------------- loop [119] 3.7% bf* [130] 30.2% ??? [97] 66.1% [140] 19362(2.9%) 5194(0.8%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfadd [151] 73.2% ---------------------------------------------------------------------------------------- for-loop [162] 4.9% ??? [148] 15.8% ...velop/src/common.rkt:47:2 [127] 79.3% [141] 17386(2.6%) 3030(0.5%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [148] 73.4% ??? [168] 13.0% ??? [155] 3.8% ---------------------------------------------------------------------------------------- for-loop [129] 100.0% [142] 5656(0.9%) 326(0.0%) eval-const-expr .../develop/src/programs.rkt:168:0 f137 [44] 69.7% ??? [156] 24.5% ---------------------------------------------------------------------------------------- for-loop [129] 100.0% [143] 2526(0.4%) 1564(0.2%) setfindf ...es/herbie/develop/src/common.rkt:186:0 for-loop [157] 38.1% ---------------------------------------------------------------------------------------- for-loop [77] 16.4% *rules* [4] 17.5% for-loop [129] 66.1% [144] 1908(0.3%) 1908(0.3%) curry* ...racket/collects/racket/function.rkt:44:2 ---------------------------------------------------------------------------------------- for-loop [14] 19.8% update-leader! [87] 21.3% set-precompute! [134] 21.4% merge-egraph-nodes! [76] 37.4% [145] 1688(0.3%) 1026(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [158] 39.2% ---------------------------------------------------------------------------------------- foldl [133] 100.0% [146] 1308(0.2%) 1308(0.2%) merge2 .../herbie/develop/src/core/ematch.rkt:31:0 ---------------------------------------------------------------------------------------- for-loop [129] 100.0% [147] 330(0.0%) 330(0.0%) compose ...collects/racket/private/list.rkt:385:12 ---------------------------------------------------------------------------------------- ??? [59] 1.9% ??? [46] 7.6% ??? [141] 32.4% for-loop [136] 56.7% [148] 50540(7.6%) 12424(1.9%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [160] 53.4% ??? [141] 10.9% for-loop [162] 9.1% ??? [170] 1.3% ??? [168] 0.8% ---------------------------------------------------------------------------------------- ??? [137] 100.0% [149] 28394(4.3%) 966(0.1%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [159] 96.6% ---------------------------------------------------------------------------------------- ??? [114] 2.2% ulp-difference [135] 2.4% flag-set? [23] 24.9% ??? [46] 28.9% ??? [139] 41.7% [150] 14454(2.2%) 2954(0.4%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [161] 61.6% ??? [168] 18.0% ---------------------------------------------------------------------------------------- ??? [140] 100.0% [151] 14168(2.1%) 10850(1.6%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [163] 23.4% ---------------------------------------------------------------------------------------- ??? [114] 8.5% ??? [46] 21.6% ??? [139] 33.3% flag-set? [23] 36.6% [152] 11792(1.8%) 8558(1.3%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [164] 27.4% ---------------------------------------------------------------------------------------- for-loop [99] 3.6% update-leader! [87] 4.0% for-loop [90] 22.2% for-loop [138] 31.4% loop! [98] 38.8% [153] 8556(1.3%) 8556(1.3%) update-en-expr ...evelop/src/core/egraph.rkt:212:0 ---------------------------------------------------------------------------------------- ??? [139] 100.0% [154] 3220(0.5%) 3220(0.5%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ---------------------------------------------------------------------------------------- ??? [126] 17.6% ??? [141] 33.7% for-loop [65] 48.7% [155] 1968(0.3%) 332(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [165] 83.1% ---------------------------------------------------------------------------------------- eval-const-expr [142] 100.0% [156] 1386(0.2%) 692(0.1%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [167] 50.1% ---------------------------------------------------------------------------------------- setfindf [143] 100.0% [157] 962(0.1%) 962(0.1%) for-loop ...es/herbie/develop/src/common.rkt:187:2 ---------------------------------------------------------------------------------------- make-sequence [145] 100.0% [158] 662(0.1%) 360(0.1%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [166] 45.6% ---------------------------------------------------------------------------------------- ??? [149] 100.0% [159] 27428(4.1%) 2008(0.3%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [169] 92.7% ---------------------------------------------------------------------------------------- ??? [148] 100.0% [160] 27000(4.1%) 2156(0.3%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [168] 87.2% ??? [170] 4.8% ---------------------------------------------------------------------------------------- ??? [150] 100.0% [161] 8898(1.3%) 8588(1.3%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [172] 3.5% ---------------------------------------------------------------------------------------- ??? [148] 100.0% [162] 4582(0.7%) 2886(0.4%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [141] 37.0% ---------------------------------------------------------------------------------------- bfadd [151] 100.0% [163] 3318(0.5%) 3318(0.5%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ---------------------------------------------------------------------------------------- return/no-unsupplied [152] 100.0% [164] 3234(0.5%) 3234(0.5%) filter ...t/collects/racket/private/list.rkt:256:2 ---------------------------------------------------------------------------------------- ??? [155] 100.0% [165] 1636(0.2%) 678(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [171] 58.6% ---------------------------------------------------------------------------------------- ??? [158] 23.4% match-e [70] 76.6% [166] 1292(0.2%) 1292(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ---------------------------------------------------------------------------------------- ??? [156] 100.0% [167] 694(0.1%) 694(0.1%) unpack245 ...private/arrow-higher-order.rkt:354:44 ---------------------------------------------------------------------------------------- ??? [148] 1.1% for-loop [65] 1.9% ??? [5] 4.5% ??? [150] 7.2% ??? [48] 8.1% ??? [141] 12.5% ??? [160] 64.9% [168] 36272(5.5%) 25886(3.9%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [47] 12.5% contract? [175] 10.7% dict? [176] 5.4% ---------------------------------------------------------------------------------------- ??? [159] 100.0% [169] 25420(3.8%) 7776(1.2%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [173] 44.5% get/build-late-neg-projection [174] 24.9% ---------------------------------------------------------------------------------------- for-loop [136] 13.8% ??? [148] 28.7% ??? [160] 57.5% [170] 2262(0.3%) 626(0.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [177] 72.3% ---------------------------------------------------------------------------------------- check-hash/c [165] 100.0% [171] 958(0.1%) 958(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 ---------------------------------------------------------------------------------------- ??? [161] 100.0% [172] 310(0.0%) 310(0.0%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ---------------------------------------------------------------------------------------- for-loop [169] 100.0% [173] 11306(1.7%) 11306(1.7%) add-list-context ...ontract/private/list.rkt:752:0 ---------------------------------------------------------------------------------------- ??? [179] 14.6% ??? [126] 29.3% for-loop [169] 56.1% [174] 11306(1.7%) 1690(0.3%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [178] 64.9% ??? [179] 20.3% ---------------------------------------------------------------------------------------- ??? [168] 100.0% [175] 3890(0.6%) 3890(0.6%) contract? ...acket/contract/private/guts.rkt:109:0 ---------------------------------------------------------------------------------------- ??? [46] 24.4% ??? [168] 75.6% [176] 2586(0.4%) 2586(0.4%) dict? ...ollects/racket/private/generic.rkt:146:11 ---------------------------------------------------------------------------------------- ??? [170] 100.0% [177] 1636(0.2%) 976(0.1%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [180] 40.3% ---------------------------------------------------------------------------------------- get/build-late-neg-projection [174] 100.0% [178] 8664(1.3%) 2728(0.4%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [181] 68.5% ---------------------------------------------------------------------------------------- get/build-late-neg-projection [174] 100.0% [179] 3950(0.6%) 642(0.1%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [174] 83.7% ---------------------------------------------------------------------------------------- ??? [177] 100.0% [180] 660(0.1%) 660(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ---------------------------------------------------------------------------------------- contract-struct-name [182] 16.5% ??? [178] 83.5% [181] 5936(0.9%) 3978(0.6%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [182] 46.8% ---------------------------------------------------------------------------------------- build-compound-type-name [181] 100.0% [182] 3594(0.5%) 1958(0.3%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [181] 50.1% ----------------------------------------------------------------------------------------