Profiling results ----------------- Total cpu time observed: 657192ms (out of 659504ms) Number of samples taken: 1962 (once every 335ms) (Hiding functions with self<1.0% and local<2.0%: 14 of 200 hidden) ========================================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================================= ??? [37] 100.0% [1] 508760(77.4%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [9] 100.0% ----------------------------------------------------------------------------------------- ??? [37] 100.0% [2] 480350(73.1%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [10] 99.3% loop [41] 0.4% setup-alt-simplified [16] 0.4% ----------------------------------------------------------------------------------------- ??? [51] 100.0% [3] 140790(21.4%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:237:2 pass [11] 100.0% ----------------------------------------------------------------------------------------- rewriter [40] 100.0% [4] 32488(4.9%) 2874(0.4%) *rules* ...rbie/develop/src/syntax/rules.rkt:565:0 for-loop [12] 87.1% ormap [19] 4.0% ----------------------------------------------------------------------------------------- hash-ref! [115] 100.0% [5] 20264(3.1%) 2024(0.3%) ??? ...tlies/herbie/develop/src/programs.rkt:194:5 hash-ref! [115] 73.7% loop [89] 24.0% ----------------------------------------------------------------------------------------- pattern-match [14] 7.4% matcher [45] 7.6% substitute-e [81] 12.2% match-e [75] 72.7% [6] 13078(2.0%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:665:0 ??? [52] 100.0% ----------------------------------------------------------------------------------------- matcher [45] 100.0% [7] 4878(0.7%) 0(0.0%) for-loop ...bie/develop/src/core/matcher.rkt:159:6 pattern-match [14] 59.6% pattern-substitute [15] 40.4% ----------------------------------------------------------------------------------------- ??? [104] 100.0% [8] 652(0.1%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 ??? [13] 100.0% ----------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [9] 508760(77.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [37] 100.0% ----------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [10] 476898(72.6%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [17] 100.0% ----------------------------------------------------------------------------------------- loop [3] 100.0% [11] 140790(21.4%) 328(0.0%) pass ...herbie/develop/src/core/simplify.rkt:227:2 for-loop [18] 99.5% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [82] 2.2% *rules* [4] 96.7% [12] 29272(4.5%) 7954(1.2%) for-loop ...ies/herbie/develop/src/common.rkt:99:9 ormap [19] 28.1% loop [20] 25.6% flag-set? [29] 16.9% list-member? [87] 1.1% curried [126] 1.1% ----------------------------------------------------------------------------------------- ??? [61] 4.1% loop [147] 4.2% for-loop [84] 8.3% map [8] 8.5% f176 [50] 75.0% [13] 7676(1.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [51] 63.8% ??? [171] 27.5% ??? [140] 4.6% best-alt [23] 4.1% ----------------------------------------------------------------------------------------- for-loop [21] 22.4% for-loop [7] 77.6% [14] 2906(0.4%) 980(0.1%) pattern-match ...develop/src/core/matcher.rkt:48:0 for-loop [21] 43.9% variable? [6] 16.7% ??? [52] 5.7% ----------------------------------------------------------------------------------------- pattern-substitute [15] 42.1% for-loop [7] 57.9% [15] 1972(0.3%) 1282(0.2%) pattern-substitute ...op/src/core/matcher.rkt:73:0 pattern-substitute [15] 42.1% ??? [52] 17.5% ----------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [16] 1718(0.3%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [22] 100.0% ----------------------------------------------------------------------------------------- for-loop [10] 100.0% [17] 476898(72.6%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [24] 76.2% gen-rewrites! [26] 16.7% finalize-iter! [27] 6.6% ----------------------------------------------------------------------------------------- pass [11] 100.0% [18] 140152(21.3%) 632(0.1%) for-loop ...e/develop/src/core/simplify.rkt:230:29 argmin [25] 82.3% loop [28] 13.0% for-loop [30] 3.8% make-sequence [122] 0.3% filter [169] 0.2% ----------------------------------------------------------------------------------------- *rules* [4] 13.7% for-loop [12] 86.3% [19] 9528(1.4%) 1000(0.2%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [29] 85.8% curried [126] 3.7% ----------------------------------------------------------------------------------------- for-loop [12] 100.0% [20] 7498(1.1%) 1926(0.3%) loop ...ket/collects/racket/private/map.rkt:112:23 flag-set? [29] 65.6% list-member? [87] 4.6% curried [126] 4.2% ----------------------------------------------------------------------------------------- pattern-match [14] 100.0% [21] 1926(0.3%) 624(0.1%) for-loop ...rbie/develop/src/core/matcher.rkt:66:9 pattern-match [14] 67.6% ----------------------------------------------------------------------------------------- setup-alt-simplified [16] 100.0% [22] 1718(0.3%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [51] 100.0% ----------------------------------------------------------------------------------------- ??? [13] 100.0% [23] 312(0.0%) 0(0.0%) best-alt ...tlies/herbie/develop/src/glue.rkt:71:0 argmins [31] 100.0% ----------------------------------------------------------------------------------------- run-iter! [17] 100.0% [24] 363182(55.3%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [32] 100.0% ----------------------------------------------------------------------------------------- for-loop [18] 100.0% [25] 115282(17.5%) 670(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [33] 85.6% expression-cost [35] 13.9% ----------------------------------------------------------------------------------------- run-iter! [17] 100.0% [26] 79556(12.1%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [34] 100.0% ----------------------------------------------------------------------------------------- run-iter! [17] 100.0% [27] 31502(4.8%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [52] 100.0% ----------------------------------------------------------------------------------------- for-loop [18] 100.0% [28] 18174(2.8%) 336(0.1%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [33] 81.8% expression-cost [35] 16.3% ----------------------------------------------------------------------------------------- loop [20] 27.2% for-loop [12] 27.5% ormap [19] 45.3% [29] 18046(2.7%) 8272(1.3%) flag-set? ...es/herbie/develop/src/config.rkt:34:0 ??? [159] 29.1% return/no-unsupplied [160] 25.1% ----------------------------------------------------------------------------------------- for-loop [18] 100.0% [30] 5362(0.8%) 5362(0.8%) for-loop ...e/develop/src/core/simplify.rkt:217:13 ----------------------------------------------------------------------------------------- best-alt [23] 100.0% [31] 312(0.0%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:152:0 composed [36] 100.0% ----------------------------------------------------------------------------------------- simplify! [24] 97.9% [32] 371154(56.5%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [37] 100.0% ----------------------------------------------------------------------------------------- loop [28] 13.1% argmin [25] 86.9% [33] 113508(17.3%) 3254(0.5%) for-loop .../herbie/develop/src/programs.rkt:210:2 ??? [51] 69.7% ...velop/src/common.rkt:47:2 [141] 24.5% ??? [140] 3.0% ----------------------------------------------------------------------------------------- gen-rewrites! [26] 100.0% [34] 79556(12.1%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [38] 100.0% ----------------------------------------------------------------------------------------- loop [28] 15.7% argmin [25] 84.3% [35] 18942(2.9%) 0(0.0%) expression-cost .../develop/src/programs.rkt:209:0 compile [39] 100.0% ----------------------------------------------------------------------------------------- argmins [31] 100.0% [36] 312(0.0%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [77] 100.0% ----------------------------------------------------------------------------------------- for-loop [32] 19.9% run [9] 30.0% [37] 646820(98.4%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 ??? [51] 39.7% profile-thunk16 [1] 30.0% run-improve50 [2] 28.0% loop [41] 2.4% ----------------------------------------------------------------------------------------- for-loop [34] 100.0% [38] 79556(12.1%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [40] 100.0% ----------------------------------------------------------------------------------------- expression-cost [35] 100.0% [39] 18942(2.9%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:186:0 hash-ref! [115] 100.0% ----------------------------------------------------------------------------------------- ??? [38] 14.1% matcher [45] 85.9% [40] 79556(12.1%) 3258(0.5%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [42] 87.5% *rules* [4] 5.6% expression->type [43] 3.4% f176 [50] 3.0% ----------------------------------------------------------------------------------------- run-improve50 [2] 5.3% ??? [37] 94.7% [41] 32704(5.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:205:2 loop [44] 41.7% loop [47] 32.7% make-exacts* [46] 25.6% ----------------------------------------------------------------------------------------- rewriter [40] 100.0% [42] 79556(12.1%) 1586(0.2%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [45] 99.8% ----------------------------------------------------------------------------------------- for-loop [48] 22.4% rewriter [40] 77.6% [43] 15614(2.4%) 338(0.1%) expression->type ...evelop/src/type-check.rkt:45:0 for-loop [48] 98.9% ----------------------------------------------------------------------------------------- loop [41] 100.0% [44] 13640(2.1%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [46] 60.8% loop [47] 39.2% ----------------------------------------------------------------------------------------- for-loop [49] 25.0% matcher [45] 25.1% for-loop [42] 49.9% [45] 79556(12.1%) 1584(0.2%) matcher ...rbie/develop/src/core/matcher.rkt:167:2 rewriter [40] 49.2% matcher [45] 25.1% for-loop [49] 25.0% for-loop [7] 0.4% variable? [6] 0.1% ----------------------------------------------------------------------------------------- loop [44] 49.8% loop [41] 50.2% [46] 16650(2.5%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [89] 70.6% eval-prog [86] 29.4% ----------------------------------------------------------------------------------------- loop [44] 33.3% loop [41] 66.7% [47] 16054(2.4%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [89] 98.1% ??? [90] 1.9% ----------------------------------------------------------------------------------------- expression->type [43] 100.0% [48] 15614(2.4%) 304(0.0%) for-loop ...herbie/develop/src/type-check.rkt:52:5 f176 [50] 75.8% expression->type [43] 23.5% ----------------------------------------------------------------------------------------- matcher [45] 100.0% [49] 77950(11.9%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:183:21 matcher [45] 100.0% ----------------------------------------------------------------------------------------- eval-const-expr [125] 3.2% eval-prog [86] 3.2% f176 [50] 10.9% for-loop [48] 36.6% rewriter [40] 46.1% [50] 40860(6.2%) 1282(0.2%) f176 .../collects/racket/match/compiler.rkt:507:40 ??? [140] 32.0% ??? [52] 20.3% ??? [51] 18.6% f176 [50] 10.9% ...velop/src/common.rkt:47:2 [141] 9.5% ??? [13] 3.2% ??? [53] 2.3% ----------------------------------------------------------------------------------------- simplify-alt [22] 0.2% ??? [13] 1.0% f176 [50] 1.5% get-sigs [130] 2.6% for-loop [33] 5.1% ??? [51] 14.9% for-loop [55] 30.0% ??? [37] 44.6% [51] 514464(78.3%) 31828(4.8%) ??? ...llects/racket/private/norm-define.rkt:53:83 iterate-egraph!13 [54] 33.1% for-loop [55] 30.0% ??? [51] 14.9% loop [3] 11.1% ??? [63] 6.5% mk-egraph [58] 0.6% return/no-unsupplied [160] 0.4% ??? [159] 0.3% ??? [157] 0.2% ??? [60] 0.1% dict? [179] 0.0% ??? [67] 0.0% ----------------------------------------------------------------------------------------- pattern-match [14] 0.4% pattern-substitute [15] 0.8% ??? [171] 2.4% substitute-e [81] 3.1% f176 [50] 9.8% match-e [75] 11.4% variable? [6] 15.4% get-sigs [130] 20.3% finalize-iter! [27] 36.0% [52] 84666(12.9%) 18436(2.8%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [56] 41.9% for-loop [57] 35.2% atab-add-altns [59] 0.7% ??? [61] 0.4% ----------------------------------------------------------------------------------------- f176 [50] 100.0% [53] 948(0.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [171] 100.0% ----------------------------------------------------------------------------------------- ??? [51] 100.0% [54] 354246(53.9%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:105:0 one-iter [62] 96.9% map-enodes [65] 3.1% ----------------------------------------------------------------------------------------- ??? [51] 100.0% [55] 332642(50.6%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:66:12 ??? [51] 100.0% ----------------------------------------------------------------------------------------- mk-enode! [88] 2.6% ??? [52] 97.4% [56] 37508(5.7%) 8926(1.4%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [63] 73.5% ??? [67] 2.7% ----------------------------------------------------------------------------------------- ??? [52] 100.0% [57] 30868(4.7%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [64] 100.0% ----------------------------------------------------------------------------------------- ??? [51] 100.0% [58] 5950(0.9%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:131:0 mk-enode-rec! [66] 100.0% ----------------------------------------------------------------------------------------- ??? [52] 100.0% [59] 634(0.1%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [64] 100.0% ----------------------------------------------------------------------------------------- ??? [51] 100.0% [60] 356(0.1%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [154] 100.0% ----------------------------------------------------------------------------------------- ??? [52] 100.0% [61] 312(0.0%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [13] 100.0% ----------------------------------------------------------------------------------------- iterate-egraph!13 [54] 100.0% [62] 343428(52.3%) 4696(0.7%) one-iter ...ie/develop/src/core/simplify.rkt:116:0 for-loop [68] 74.2% for-loop [69] 24.0% hash-keys [72] 0.1% filter [169] 0.1% ----------------------------------------------------------------------------------------- hash-has-key? [56] 24.1% ??? [51] 75.9% [63] 114412(17.4%) 42750(6.5%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [70] 44.6% ??? [76] 15.5% ??? [157] 1.7% arrow-higher-order:lnp [73] 0.6% successfully-got-the-right-kind-of-function [164] 0.3% ----------------------------------------------------------------------------------------- atab-add-altns [59] 2.0% for-loop [57] 98.0% [64] 31502(4.8%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [71] 98.9% ----------------------------------------------------------------------------------------- iterate-egraph!13 [54] 100.0% [65] 10818(1.6%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:140:0 loop [89] 93.8% for-loop [103] 3.2% hash-keys [72] 3.0% ----------------------------------------------------------------------------------------- mk-egraph [58] 29.6% mk-enode-rec! [66] 70.4% [66] 5950(0.9%) 334(0.1%) mk-enode-rec! ...develop/src/core/egraph.rkt:122:0 mk-enode-rec! [66] 70.4% mk-enode! [88] 28.7% ----------------------------------------------------------------------------------------- ??? [51] 24.9% hash-has-key? [56] 75.1% [67] 1332(0.2%) 1332(0.2%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ----------------------------------------------------------------------------------------- one-iter [62] 100.0% [68] 254910(38.8%) 328(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:166:2 for-loop [74] 91.0% match-e [75] 8.9% ----------------------------------------------------------------------------------------- for-loop [69] 48.8% one-iter [62] 51.2% [69] 82496(12.6%) 20856(3.2%) for-loop ...e/develop/src/core/simplify.rkt:126:12 for-loop [69] 48.8% match-e [75] 37.4% ----------------------------------------------------------------------------------------- ??? [63] 100.0% [70] 51046(7.8%) 25804(3.9%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [76] 28.1% for-loop [149] 19.5% ??? [162] 1.9% ----------------------------------------------------------------------------------------- atab-add-altn [64] 100.0% [71] 31152(4.7%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [77] 97.7% for-loop [78] 2.3% ----------------------------------------------------------------------------------------- map-enodes [65] 47.1% one-iter [62] 52.9% [72] 680(0.1%) 0(0.0%) hash-keys .../collects/racket/private/hash.rkt:2:2 loop [79] 100.0% ----------------------------------------------------------------------------------------- ??? [63] 100.0% [73] 630(0.1%) 300(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [80] 52.4% ----------------------------------------------------------------------------------------- for-loop [68] 100.0% [74] 231984(35.3%) 342(0.1%) for-loop ...e/develop/src/core/simplify.rkt:148:10 mk-enode! [88] 33.5% substitute-e [81] 31.9% merge-egraph-nodes! [82] 23.2% loop! [101] 9.6% list-member? [87] 1.6% ----------------------------------------------------------------------------------------- for-loop [68] 15.9% for-loop [91] 23.6% for-loop [69] 60.4% [75] 84238(12.8%) 32304(4.9%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [83] 40.1% for-loop [91] 10.1% ??? [52] 6.8% variable? [6] 4.4% list-cartesian-product [93] 3.2% loop [89] 1.4% ----------------------------------------------------------------------------------------- for-loop [70] 44.7% ??? [63] 55.3% [76] 32110(4.9%) 15718(2.4%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [85] 51.0% ----------------------------------------------------------------------------------------- composed [36] 1.0% best-and-tied-at-points [71] 97.9% [77] 31102(4.7%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:241:0 for-loop [84] 77.3% eval-prog [86] 22.7% ----------------------------------------------------------------------------------------- best-and-tied-at-points [71] 100.0% [78] 712(0.1%) 712(0.1%) for-loop .../develop/src/core/alt-table.rkt:124:16 ----------------------------------------------------------------------------------------- hash-keys [72] 30.1% loop [79] 69.9% [79] 680(0.1%) 680(0.1%) loop ...acket/collects/racket/private/hash.rkt:3:4 loop [79] 69.9% ----------------------------------------------------------------------------------------- arrow-higher-order:lnp [73] 100.0% [80] 330(0.1%) 330(0.1%) ??? ...et/contract/private/arity-checking.rkt:19:2 ----------------------------------------------------------------------------------------- substitute-e [81] 3.8% for-loop [74] 96.2% [81] 74038(11.3%) 2932(0.4%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [88] 90.3% substitute-e [81] 3.8% ??? [52] 1.4% variable? [6] 0.8% ----------------------------------------------------------------------------------------- for-loop [94] 5.9% merge-egraph-nodes! [82] 6.8% for-loop [74] 87.3% [82] 53838(8.2%) 1680(0.3%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 update-leader! [92] 48.7% loop! [101] 13.3% for-loop [95] 11.6% for-loop [94] 9.0% merge-egraph-nodes! [82] 6.8% enode-merge! [97] 4.7% make-sequence [122] 1.9% for-loop [12] 1.2% ----------------------------------------------------------------------------------------- match-e [75] 100.0% [83] 44558(6.8%) 12780(1.9%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [91] 55.4% list-cartesian-product [93] 9.2% loop [89] 7.4% loop [107] 0.8% filter [169] 0.7% foldl [109] 0.7% ----------------------------------------------------------------------------------------- errors [77] 100.0% [84] 24036(3.7%) 2652(0.4%) for-loop ...es/herbie/develop/src/points.rkt:244:4 ??? [90] 84.9% ??? [13] 2.6% ----------------------------------------------------------------------------------------- ??? [76] 100.0% [85] 16392(2.5%) 16392(2.5%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ----------------------------------------------------------------------------------------- make-exacts* [46] 40.9% errors [77] 59.1% [86] 11962(1.8%) 646(0.1%) eval-prog ...herbie/develop/src/programs.rkt:150:0 f176 [50] 48.1% hash-ref! [115] 43.7% ??? [98] 2.8% ----------------------------------------------------------------------------------------- for-loop [12] 7.7% loop [20] 7.8% for-loop [74] 84.5% [87] 4360(0.7%) 1032(0.2%) list-member? ...llects/racket/private/set.rkt:24:0 loop [96] 76.3% ----------------------------------------------------------------------------------------- mk-enode-rec! [66] 3.7% substitute-e [81] 44.5% for-loop [74] 51.8% [88] 150276(22.9%) 9284(1.4%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [99] 92.7% hash-has-key? [56] 0.7% ----------------------------------------------------------------------------------------- make-exacts* [46] 0.1% loop [47] 0.1% match-e [75] 2.0% parse-loop12 [135] 2.5% map-enodes [65] 3.0% for-loop [83] 4.1% ??? [5] 6.8% loop! [101] 9.8% loop [89] 71.5% [89] 70968(10.8%) 3584(0.5%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [89] 71.5% loop! [101] 9.5% hash-ref! [115] 6.8% for-loop [103] 3.0% ??? [104] 2.5% loop [107] 2.2% foldl [109] 1.0% ??? [90] 0.2% set-precompute! [111] 0.0% bf* [118] 0.0% ----------------------------------------------------------------------------------------- loop [47] 0.6% for-loop [84] 42.3% loop [89] 57.0% [90] 48226(7.3%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:156:4 ??? [100] 100.0% ----------------------------------------------------------------------------------------- match-e [75] 35.6% for-loop [83] 64.4% [91] 40004(6.1%) 2616(0.4%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [75] 89.0% ??? [106] 5.7% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [92] 28578(4.3%) 3604(0.5%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [102] 78.1% update-en-expr [161] 3.4% hash-ref! [115] 2.3% custom-set-union! [110] 2.3% make-sequence [122] 1.2% ----------------------------------------------------------------------------------------- list-cartesian-product [93] 11.8% match-e [75] 30.5% for-loop [83] 57.7% [93] 8254(1.3%) 5954(0.9%) list-cartesian-product ...src/core/ematch.rkt:20:0 for-loop [105] 20.0% list-cartesian-product [93] 11.8% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [94] 7752(1.2%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:201:10 merge-egraph-nodes! [82] 76.1% loop! [101] 23.9% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [95] 6238(0.9%) 3916(0.6%) for-loop ...rbie/develop/src/core/egraph.rkt:233:6 update-en-expr [161] 37.2% ----------------------------------------------------------------------------------------- list-member? [87] 100.0% [96] 3328(0.5%) 3328(0.5%) loop (unknown source) ----------------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [97] 2678(0.4%) 360(0.1%) enode-merge! ...e/develop/src/core/enode.rkt:129:0 adopt-enode! [108] 64.1% custom-set-intersect! [112] 22.5% ----------------------------------------------------------------------------------------- eval-prog [86] 100.0% [98] 336(0.1%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [113] 100.0% ----------------------------------------------------------------------------------------- mk-enode! [88] 100.0% [99] 139368(21.2%) 654(0.1%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [114] 97.6% set [119] 0.7% ----------------------------------------------------------------------------------------- ??? [90] 100.0% [100] 48226(7.3%) 23418(3.6%) ??? ...acket/collects/racket/private/kw.rkt:444:14 bf* [118] 16.9% ??? [132] 16.4% ??? [120] 9.0% ??? [121] 5.5% ??? [173] 2.0% ----------------------------------------------------------------------------------------- for-loop [94] 4.8% merge-egraph-nodes! [82] 20.0% loop [89] 30.3% for-loop [74] 44.9% [101] 35258(5.4%) 7568(1.2%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 custom-set-union [117] 41.3% loop [89] 32.2% set [119] 8.1% update-en-expr [161] 5.6% ----------------------------------------------------------------------------------------- update-leader! [92] 100.0% [102] 22316(3.4%) 2002(0.3%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [116] 89.5% update-en-expr [161] 1.5% ----------------------------------------------------------------------------------------- map-enodes [65] 3.5% loop [89] 96.5% [103] 9864(1.5%) 5854(0.9%) for-loop ...ie/develop/src/core/simplify.rkt:195:2 setfindf [123] 17.7% eval-const-expr [125] 16.5% curried [126] 3.3% parse-app [129] 3.2% ----------------------------------------------------------------------------------------- parse-loop12 [135] 3.2% loop [89] 96.8% [104] 2346(0.4%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [115] 94.9% map [8] 5.1% ----------------------------------------------------------------------------------------- list-cartesian-product [93] 100.0% [105] 2300(0.3%) 2300(0.3%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ----------------------------------------------------------------------------------------- for-loop [91] 100.0% [106] 2294(0.3%) 656(0.1%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [124] 71.4% ----------------------------------------------------------------------------------------- for-loop [83] 18.9% loop [89] 81.1% [107] 1936(0.3%) 1936(0.3%) loop ...e/racket/collects/racket/function.rkt:53:6 ----------------------------------------------------------------------------------------- enode-merge! [97] 100.0% [108] 1716(0.3%) 994(0.2%) adopt-enode! ...e/develop/src/core/enode.rkt:105:0 custom-set-union [117] 42.1% ----------------------------------------------------------------------------------------- for-loop [83] 24.9% loop [89] 75.1% [109] 1292(0.2%) 652(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [127] 49.5% ----------------------------------------------------------------------------------------- update-leader! [92] 100.0% [110] 662(0.1%) 330(0.1%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [128] 50.2% ----------------------------------------------------------------------------------------- loop [89] 100.0% [111] 634(0.1%) 300(0.0%) set-precompute! ...lop/src/core/simplify.rkt:193:0 make-sequence [122] 52.7% ----------------------------------------------------------------------------------------- enode-merge! [97] 100.0% [112] 602(0.1%) 602(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ----------------------------------------------------------------------------------------- ??? [98] 100.0% [113] 336(0.1%) 336(0.1%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ----------------------------------------------------------------------------------------- new-enode [99] 100.0% [114] 136018(20.7%) 3714(0.6%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [130] 97.3% ----------------------------------------------------------------------------------------- update-leader! [92] 2.5% eval-prog [86] 5.5% ??? [104] 7.0% loop [89] 13.8% compile [39] 28.7% ??? [5] 41.0% [115] 27184(4.1%) 17918(2.7%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [5] 56.5% parse-loop12 [135] 8.6% bigfloat-hash [134] 5.2% ----------------------------------------------------------------------------------------- for-loop [102] 100.0% [116] 19980(3.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [131] 100.0% ----------------------------------------------------------------------------------------- adopt-enode! [108] 4.2% loop! [101] 95.8% [117] 17346(2.6%) 7048(1.1%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [133] 51.6% for-loop [136] 7.8% ----------------------------------------------------------------------------------------- loop [89] 4.2% ??? [100] 95.8% [118] 8486(1.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [132] 100.0% ----------------------------------------------------------------------------------------- new-enode [99] 14.3% loop! [101] 85.7% [119] 7056(1.1%) 7056(1.1%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------------------------------- ??? [100] 100.0% [120] 4350(0.7%) 2712(0.4%) ??? ...herbie/develop/src/syntax/syntax.rkt:156:17 return/no-unsupplied [160] 22.4% ??? [159] 15.2% ----------------------------------------------------------------------------------------- ??? [100] 100.0% [121] 2634(0.4%) 2634(0.4%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ----------------------------------------------------------------------------------------- set-precompute! [111] 16.1% update-leader! [92] 17.0% for-loop [18] 17.9% merge-egraph-nodes! [82] 49.0% [122] 2072(0.3%) 2072(0.3%) make-sequence ...ects/racket/private/for.rkt:509:2 ----------------------------------------------------------------------------------------- for-loop [103] 100.0% [123] 1744(0.3%) 696(0.1%) setfindf ...es/herbie/develop/src/common.rkt:186:0 for-loop [137] 60.1% ----------------------------------------------------------------------------------------- ??? [106] 100.0% [124] 1638(0.2%) 1638(0.2%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ----------------------------------------------------------------------------------------- for-loop [103] 100.0% [125] 1630(0.2%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:168:0 f176 [50] 79.6% ??? [138] 20.4% ----------------------------------------------------------------------------------------- for-loop [12] 23.8% loop [20] 24.1% for-loop [103] 24.9% ormap [19] 27.2% [126] 1302(0.2%) 1302(0.2%) curried ...cket/collects/racket/function.rkt:71:18 ----------------------------------------------------------------------------------------- foldl [109] 100.0% [127] 640(0.1%) 640(0.1%) merge2 .../herbie/develop/src/core/ematch.rkt:31:0 ----------------------------------------------------------------------------------------- custom-set-union! [110] 100.0% [128] 332(0.1%) 332(0.1%) for-loop ...cts/racket/private/set-types.rkt:253:4 ----------------------------------------------------------------------------------------- for-loop [103] 100.0% [129] 312(0.0%) 0(0.0%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [139] 100.0% ----------------------------------------------------------------------------------------- type-of-enode-expr [114] 100.0% [130] 132304(20.1%) 2650(0.4%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [140] 38.6% ??? [51] 30.9% ...velop/src/common.rkt:47:2 [141] 15.5% ??? [52] 13.0% ----------------------------------------------------------------------------------------- for-loop [116] 100.0% [131] 19980(3.0%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [142] 100.0% ----------------------------------------------------------------------------------------- ??? [100] 48.3% bf* [118] 51.7% [132] 16416(2.5%) 4532(0.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [143] 72.4% ----------------------------------------------------------------------------------------- custom-set-union [117] 100.0% [133] 8948(1.4%) 2588(0.4%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [144] 71.1% ----------------------------------------------------------------------------------------- hash-ref! [115] 100.0% [134] 4896(0.7%) 352(0.1%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [145] 55.7% sig+exp->bigfloat [146] 37.1% ----------------------------------------------------------------------------------------- hash-ref! [115] 100.0% [135] 2346(0.4%) 688(0.1%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [89] 84.5% loop [147] 5.8% ??? [104] 3.2% ----------------------------------------------------------------------------------------- custom-set-union [117] 100.0% [136] 1350(0.2%) 1350(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ----------------------------------------------------------------------------------------- setfindf [123] 100.0% [137] 1048(0.2%) 1048(0.2%) for-loop ...es/herbie/develop/src/common.rkt:187:2 ----------------------------------------------------------------------------------------- eval-const-expr [125] 100.0% [138] 332(0.1%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [148] 100.0% ----------------------------------------------------------------------------------------- parse-app [129] 100.0% [139] 312(0.0%) 312(0.0%) loop .../collects/racket/private/stxcase.rkt:112:7 ----------------------------------------------------------------------------------------- ??? [13] 0.5% for-loop [33] 4.9% f176 [50] 19.3% get-sigs [130] 75.3% [140] 67884(10.3%) 5398(0.8%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 for-loop [149] 45.5% ??? [150] 41.2% get/build-late-neg-projection [176] 3.4% ??? [162] 0.5% ----------------------------------------------------------------------------------------- f176 [50] 7.4% get-sigs [130] 39.3% for-loop [33] 53.3% [141] 52274(8.0%) 10940(1.7%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [151] 39.2% ??? [153] 38.0% ----------------------------------------------------------------------------------------- hash-update! [131] 100.0% [142] 19980(3.0%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [152] 100.0% ----------------------------------------------------------------------------------------- ??? [132] 100.0% [143] 11884(1.8%) 7950(1.2%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [154] 33.1% ----------------------------------------------------------------------------------------- for-loop [133] 100.0% [144] 6360(1.0%) 6360(1.0%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------------------------------- bigfloat-hash [134] 100.0% [145] 2726(0.4%) 2378(0.4%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [155] 12.8% ----------------------------------------------------------------------------------------- bigfloat-hash [134] 100.0% [146] 1818(0.3%) 1818(0.3%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ----------------------------------------------------------------------------------------- loop [147] 49.2% parse-loop12 [135] 50.8% [147] 650(0.1%) 326(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [147] 49.2% ??? [13] 0.7% ----------------------------------------------------------------------------------------- ??? [138] 100.0% [148] 332(0.1%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [156] 100.0% ----------------------------------------------------------------------------------------- for-loop [70] 24.3% ??? [140] 75.7% [149] 40808(6.2%) 8384(1.3%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [157] 77.9% ??? [173] 1.5% ----------------------------------------------------------------------------------------- ??? [140] 100.0% [150] 27974(4.3%) 2038(0.3%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [158] 92.7% ----------------------------------------------------------------------------------------- ...velop/src/common.rkt:47:2 [141] 100.0% [151] 20500(3.1%) 9752(1.5%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [159] 26.2% return/no-unsupplied [160] 20.0% assoc-ref [163] 6.2% ----------------------------------------------------------------------------------------- ??? [142] 100.0% [152] 19980(3.0%) 14010(2.1%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 update-en-expr [161] 29.9% ----------------------------------------------------------------------------------------- for-loop [168] 8.2% ??? [157] 16.8% ...velop/src/common.rkt:47:2 [141] 75.0% [153] 19856(3.0%) 3222(0.5%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [157] 68.1% ??? [171] 17.7% ??? [162] 5.3% ----------------------------------------------------------------------------------------- ??? [60] 8.3% bfmul [143] 91.7% [154] 4290(0.7%) 4290(0.7%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ----------------------------------------------------------------------------------------- bfcanonicalize [145] 100.0% [155] 348(0.1%) 348(0.1%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 ----------------------------------------------------------------------------------------- unpack245 [148] 100.0% [156] 332(0.1%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [164]100.0% ----------------------------------------------------------------------------------------- ??? [51] 3.0% ??? [63] 3.5% ??? [153] 34.2% for-loop [149] 58.8% [157] 54106(8.2%) 8482(1.3%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [165] 57.6% ??? [153] 12.3% for-loop [168] 12.0% ??? [173] 1.8% ??? [171] 0.6% ----------------------------------------------------------------------------------------- ??? [150] 100.0% [158] 25936(3.9%) 954(0.1%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [166] 96.3% ----------------------------------------------------------------------------------------- ??? [120] 4.6% ??? [51] 22.4% flag-set? [29] 36.1% ??? [151] 37.0% [159] 14546(2.2%) 4124(0.6%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [167] 58.6% ??? [171] 13.1% ----------------------------------------------------------------------------------------- ??? [120] 6.9% ??? [151] 29.0% ??? [51] 32.0% flag-set? [29] 32.1% [160] 14106(2.1%) 12542(1.9%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [169] 11.1% ----------------------------------------------------------------------------------------- for-loop [102] 2.4% update-leader! [92] 7.1% for-loop [95] 17.0% loop! [101] 29.6% for-loop [152] 43.8% [161] 13642(2.1%) 13642(2.1%) update-en-expr ...evelop/src/core/egraph.rkt:212:0 ----------------------------------------------------------------------------------------- ??? [140] 13.5% for-loop [70] 41.1% ??? [153] 45.4% [162] 2300(0.3%) 310(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [170] 86.5% ----------------------------------------------------------------------------------------- ??? [151] 100.0% [163] 1276(0.2%) 1276(0.2%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ----------------------------------------------------------------------------------------- maybe-cons-kwd [156] 49.8% ??? [63] 50.2% [164] 666(0.1%) 666(0.1%) successfully-got-the-right-kind-of-function ...9:4 ----------------------------------------------------------------------------------------- ??? [157] 100.0% [165] 31160(4.7%) 2276(0.3%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [171] 88.6% ??? [173] 4.1% ----------------------------------------------------------------------------------------- ??? [158] 100.0% [166] 24982(3.8%) 1048(0.2%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [172] 95.8% ----------------------------------------------------------------------------------------- ??? [159] 100.0% [167] 8520(1.3%) 7884(1.2%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [175] 7.5% ----------------------------------------------------------------------------------------- ??? [157] 100.0% [168] 6502(1.0%) 3226(0.5%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [153] 50.4% ----------------------------------------------------------------------------------------- one-iter [62] 12.4% for-loop [83] 12.9% for-loop [18] 13.1% return/no-unsupplied [160] 61.7% [169] 2536(0.4%) 2536(0.4%) filter ...t/collects/racket/private/list.rkt:256:2 ----------------------------------------------------------------------------------------- ??? [162] 100.0% [170] 1990(0.3%) 666(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [174] 66.5% ----------------------------------------------------------------------------------------- ??? [157] 0.8% ??? [53] 2.3% ??? [159] 4.7% ??? [13] 5.2% ??? [153] 17.4% ??? [165] 68.3% [171] 40394(6.1%) 30082(4.6%) ??? ...ects/racket/contract/private/guts.rkt:644:8 contract? [178] 13.2% ??? [52] 7.6% dict? [179] 4.7% ----------------------------------------------------------------------------------------- ??? [166] 100.0% [172] 23934(3.6%) 8094(1.2%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [177] 35.2% get/build-late-neg-projection [176] 30.9% ----------------------------------------------------------------------------------------- for-loop [149] 16.3% ??? [100] 25.3% ??? [157] 25.4% ??? [165] 33.0% [173] 3868(0.6%) 1938(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [180] 49.9% ----------------------------------------------------------------------------------------- check-hash/c [170] 100.0% [174] 1324(0.2%) 1324(0.2%) flat-contract? .../contract/private/guts.rkt:111:0 ----------------------------------------------------------------------------------------- ??? [167] 100.0% [175] 636(0.1%) 636(0.1%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ----------------------------------------------------------------------------------------- listof-late-neg-projection [183] 2.2% ??? [182] 7.4% ??? [140] 14.2% for-loop [172] 76.1% [176] 9730(1.5%) 1988(0.3%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [181] 76.1% ??? [182] 7.4% listof-late-neg-projection [183] 2.2% ----------------------------------------------------------------------------------------- for-loop [172] 100.0% [177] 8434(1.3%) 8434(1.3%) add-list-context ...ontract/private/list.rkt:752:0 ----------------------------------------------------------------------------------------- ??? [171] 100.0% [178] 5352(0.8%) 5352(0.8%) contract? ...acket/contract/private/guts.rkt:109:0 ----------------------------------------------------------------------------------------- ??? [51] 25.8% ??? [171] 74.2% [179] 2564(0.4%) 2564(0.4%) dict? ...ollects/racket/private/generic.rkt:146:11 ----------------------------------------------------------------------------------------- ??? [173] 100.0% [180] 1930(0.3%) 1600(0.2%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [184] 17.1% ----------------------------------------------------------------------------------------- get/build-late-neg-projection [176] 100.0% [181] 7742(1.2%) 2604(0.4%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [185] 66.4% ----------------------------------------------------------------------------------------- get/build-late-neg-projection [176] 100.0% [182] 1668(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [176] 100.0% ----------------------------------------------------------------------------------------- get/build-late-neg-projection [176] 100.0% [183] 656(0.1%) 0(0.0%) listof-late-neg-projection ...ivate/list.rkt:162:0 get/build-late-neg-projection [176] 100.0% ----------------------------------------------------------------------------------------- ??? [180] 100.0% [184] 330(0.1%) 330(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ----------------------------------------------------------------------------------------- contract-struct-name [186] 19.8% ??? [181] 80.2% [185] 5138(0.8%) 2672(0.4%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [186] 61.6% ----------------------------------------------------------------------------------------- build-compound-type-name [185] 100.0% [186] 3868(0.6%) 2466(0.4%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [185] 44.4% -----------------------------------------------------------------------------------------