Profiling results ----------------- Total cpu time observed: 1257188ms (out of 1261364ms) Number of samples taken: 3647 (once every 345ms) (Hiding functions with self<1.0% and local<2.0%: 22 of 292 hidden) ========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================================== ??? [77] 100.0% [1] 1008666(80.2%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [21] 100.0% ------------------------------------------------------------------------------------------ ??? [77] 100.0% [2] 987656(78.6%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [22] 96.2% get-final-combination [27] 3.5% setup-alt-simplified [38] 0.2% loop [90] 0.1% ??? [181] 0.0% ------------------------------------------------------------------------------------------ ??? [180] 100.0% [3] 640554(51.0%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:102:0 one-iter [23] 97.4% map-enodes [32] 2.6% ------------------------------------------------------------------------------------------ ??? [180] 100.0% [4] 253468(20.2%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:215:2 pass [24] 100.0% ------------------------------------------------------------------------------------------ ??? [116] 100.0% [5] 65304(5.2%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [25] 88.1% f176 [179] 10.8% taylor-exp [36] 1.1% ------------------------------------------------------------------------------------------ rewriter [86] 100.0% [6] 54560(4.3%) 3454(0.3%) *rules* ...rbie/develop/src/syntax/rules.rkt:484:0 for-loop [26] 85.3% ormap [48] 3.9% flag-set? [63] 3.3% dict? [267] 0.6% curry* [95] 0.6% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [7] 24870(2.0%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:285:26 for-loop [28] 100.0% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [8] 22202(1.8%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:392:23 for-loop [29] 98.4% simplify [156] 1.6% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [9] 19428(1.5%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:295:23 for-loop [30] 100.0% ------------------------------------------------------------------------------------------ free-variables [143] 1.6% expression->type [177] 1.8% pattern-match [39] 1.9% matcher [107] 3.6% substitute-e [79] 15.6% match-e [72] 75.5% [10] 19402(1.5%) 384(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:567:0 ??? [181] 98.0% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [11] 17082(1.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:483:23 for-loop [31] 100.0% ------------------------------------------------------------------------------------------ map-enodes [32] 6.4% loop [182] 93.6% [12] 14840(1.2%) 1012(0.1%) for-loop ...ie/develop/src/core/simplify.rkt:173:2 setfindf [33] 50.3% eval-const-expr [34] 36.1% compose [173] 4.5% curried [215] 2.3% ------------------------------------------------------------------------------------------ f176 [179] 100.0% [13] 4682(0.4%) 0(0.0%) loop ...s/herbie/develop/src/core/taylor.rkt:262:2 hash-ref! [153] 77.7% ??? [64] 14.7% simplify [156] 7.6% ------------------------------------------------------------------------------------------ matcher [107] 100.0% [14] 3148(0.3%) 0(0.0%) for-loop ...bie/develop/src/core/matcher.rkt:159:6 pattern-substitute [37] 56.0% pattern-match [39] 44.0% ------------------------------------------------------------------------------------------ copying-mergesort [232] 100.0% [15] 3068(0.2%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [242] 77.4% ??? [116] 22.6% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [16] 3062(0.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:322:33 for-loop [35] 100.0% ------------------------------------------------------------------------------------------ f176 [179] 100.0% [17] 1030(0.1%) 0(0.0%) combine-mterms ...evelop/src/core/reduce.rkt:191:0 for-loop [40] 100.0% ------------------------------------------------------------------------------------------ f176 [179] 49.9% map [117] 50.1% [18] 722(0.1%) 360(0.0%) taylor ...herbie/develop/src/core/taylor.rkt:163:0 debug7 [42] 50.1% ------------------------------------------------------------------------------------------ parse-loop12 [140] 3.7% loop [19] 96.3% [19] 702(0.1%) 370(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [19] 96.3% ??? [116] 1.5% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [20] 692(0.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:338:33 for-loop [41] 100.0% ------------------------------------------------------------------------------------------ profile-thunk16 [1] 100.0% [21] 1008986(80.3%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [77] 100.0% ------------------------------------------------------------------------------------------ run-improve50 [2] 100.0% [22] 950160(75.6%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [43] 100.0% ------------------------------------------------------------------------------------------ iterate-egraph!13 [3] 100.0% [23] 624020(49.6%) 7292(0.6%) one-iter ...ie/develop/src/core/simplify.rkt:113:0 loop [44] 77.1% for-loop [46] 20.9% apply-match [57] 0.7% ------------------------------------------------------------------------------------------ loop [4] 100.0% [24] 253468(20.2%) 1050(0.1%) pass ...herbie/develop/src/core/simplify.rkt:205:2 for-loop [45] 99.5% ------------------------------------------------------------------------------------------ approximate9 [5] 100.0% [25] 57556(4.6%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:86:4 ??? [116] 100.0% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [81] 2.9% *rules* [6] 97.1% [26] 47936(3.8%) 12808(1.0%) for-loop ...ies/herbie/develop/src/common.rkt:94:9 ormap [48] 61.5% flag-set? [63] 11.1% update-en-expr [201] 0.7% ------------------------------------------------------------------------------------------ run-improve50 [2] 100.0% [27] 34382(2.7%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 split-table [47] 98.1% extract-alt [54] 1.9% ------------------------------------------------------------------------------------------ ??? [7] 100.0% [28] 24870(2.0%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:285:52 ??? [64] 55.2% hash-ref! [153] 38.1% simplify [156] 6.7% ------------------------------------------------------------------------------------------ ??? [8] 100.0% [29] 21842(1.7%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:396:33 for-loop [49] 100.0% ------------------------------------------------------------------------------------------ ??? [9] 100.0% [30] 19428(1.5%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:298:27 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ ??? [11] 100.0% [31] 17082(1.4%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:487:35 parse-loop12 [140] 100.0% ------------------------------------------------------------------------------------------ iterate-egraph!13 [3] 100.0% [32] 16534(1.3%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:139:0 loop [182] 92.0% for-loop [12] 5.7% hash-keys [55] 2.2% ------------------------------------------------------------------------------------------ for-loop [12] 100.0% [33] 7468(0.6%) 4402(0.4%) setfindf ...es/herbie/develop/src/common.rkt:179:0 for-loop [50] 32.2% ??? [181] 4.5% custom-in-set [152] 4.4% ------------------------------------------------------------------------------------------ for-loop [12] 100.0% [34] 5358(0.4%) 1304(0.1%) eval-const-expr .../develop/src/programs.rkt:166:0 f176 [179] 50.1% ??? [53] 13.3% parse-app [184] 6.6% ...higher-order.rkt:346:33 [255] 5.6% ------------------------------------------------------------------------------------------ ??? [16] 100.0% [35] 3062(0.2%) 324(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:324:46 hash-ref! [153] 89.4% ------------------------------------------------------------------------------------------ approximate9 [5] 35.2% f176 [179] 64.8% [36] 2040(0.2%) 0(0.0%) taylor-exp ...ie/develop/src/core/taylor.rkt:386:0 simplify [156] 100.0% ------------------------------------------------------------------------------------------ for-loop [14] 36.5% pattern-substitute [37] 63.5% [37] 1764(0.1%) 712(0.1%) pattern-substitute ...op/src/core/matcher.rkt:73:0 pattern-substitute [37] 63.5% ??? [181] 19.6% ------------------------------------------------------------------------------------------ run-improve50 [2] 100.0% [38] 1688(0.1%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [51] 100.0% ------------------------------------------------------------------------------------------ for-loop [52] 50.0% for-loop [14] 50.0% [39] 1384(0.1%) 360(0.0%) pattern-match ...develop/src/core/matcher.rkt:48:0 for-loop [52] 50.0% ??? [181] 23.9% variable? [10] 13.1% ------------------------------------------------------------------------------------------ combine-mterms [17] 100.0% [40] 1030(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:195:5 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ ??? [20] 100.0% [41] 692(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:341:46 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ taylor [18] 100.0% [42] 362(0.0%) 0(0.0%) debug7 ...tlies/herbie/develop/src/debug.rkt:102:0 ??? [181] 100.0% ------------------------------------------------------------------------------------------ for-loop [22] 100.0% [43] 950160(75.6%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [56] 69.8% gen-rewrites! [59] 19.3% gen-series! [60] 7.2% finalize-iter! [62] 3.4% ------------------------------------------------------------------------------------------ f176 [179] 0.8% one-iter [23] 99.2% [44] 484818(38.6%) 652(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [57] 99.1% f176 [179] 0.8% ------------------------------------------------------------------------------------------ pass [24] 100.0% [45] 252120(20.1%) 2460(0.2%) for-loop ...e/develop/src/core/simplify.rkt:208:29 argmin [58] 74.1% loop [61] 18.8% for-loop [65] 5.6% make-sequence [131] 0.5% ------------------------------------------------------------------------------------------ for-loop [46] 48.5% one-iter [23] 51.5% [46] 130172(10.4%) 31104(2.5%) for-loop ...e/develop/src/core/simplify.rkt:123:12 for-loop [46] 48.5% match-e [72] 37.8% ??? [101] 0.3% ------------------------------------------------------------------------------------------ get-final-combination [27] 100.0% [47] 33728(2.7%) 0(0.0%) split-table ...s/herbie/develop/src/glue.rkt:162:0 f176 [179] 100.0% ------------------------------------------------------------------------------------------ *rules* [6] 6.7% for-loop [26] 93.3% [48] 31606(2.5%) 8310(0.7%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [63] 70.3% curried [215] 3.4% ------------------------------------------------------------------------------------------ for-loop [29] 100.0% [49] 21842(1.7%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:398:39 hash-ref! [153] 99.5% ??? [64] 0.5% ------------------------------------------------------------------------------------------ setfindf [33] 100.0% [50] 2402(0.2%) 2402(0.2%) for-loop ...es/herbie/develop/src/common.rkt:180:2 ------------------------------------------------------------------------------------------ setup-alt-simplified [38] 100.0% [51] 1688(0.1%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [180] 100.0% ------------------------------------------------------------------------------------------ pattern-match [39] 100.0% [52] 1384(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/matcher.rkt:66:9 pattern-match [39] 100.0% ------------------------------------------------------------------------------------------ eval-const-expr [34] 100.0% [53] 712(0.1%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [66] 100.0% ------------------------------------------------------------------------------------------ get-final-combination [27] 100.0% [54] 654(0.1%) 0(0.0%) extract-alt ...es/herbie/develop/src/glue.rkt:55:0 loop [132] 50.2% argmins [133] 49.8% ------------------------------------------------------------------------------------------ map-enodes [32] 100.0% [55] 368(0.0%) 0(0.0%) hash-keys .../collects/racket/private/hash.rkt:2:2 loop [67] 100.0% ------------------------------------------------------------------------------------------ run-iter! [43] 100.0% [56] 663248(52.8%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [68] 100.0% ------------------------------------------------------------------------------------------ one-iter [23] 0.8% loop [44] 99.2% [57] 484502(38.5%) 3084(0.2%) apply-match ...develop/src/core/simplify.rkt:130:2 for-loop [69] 86.0% match-e [72] 11.3% update-leader! [89] 1.6% reduce-to-single! [75] 0.6% ------------------------------------------------------------------------------------------ for-loop [45] 100.0% [58] 186788(14.9%) 704(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [70] 87.0% expression-cost [74] 12.6% ------------------------------------------------------------------------------------------ run-iter! [43] 100.0% [59] 182988(14.6%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [71] 100.0% ------------------------------------------------------------------------------------------ run-iter! [43] 100.0% [60] 68098(5.4%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:129:0 for-loop [73] 100.0% ------------------------------------------------------------------------------------------ for-loop [45] 100.0% [61] 47440(3.8%) 320(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [70] 79.8% expression-cost [74] 19.5% ------------------------------------------------------------------------------------------ run-iter! [43] 100.0% [62] 32692(2.6%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [181] 100.0% ------------------------------------------------------------------------------------------ *rules* [6] 6.1% for-loop [26] 18.1% ormap [48] 75.8% [63] 29322(2.3%) 12922(1.0%) flag-set? ...es/herbie/develop/src/config.rkt:32:0 ??? [257] 30.0% return/no-unsupplied [258] 25.9% ------------------------------------------------------------------------------------------ for-loop [49] 0.9% loop [13] 3.5% for-loop [28] 95.6% [64] 19326(1.5%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:288:19 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ for-loop [45] 100.0% [65] 14080(1.1%) 14080(1.1%) for-loop ...e/develop/src/core/simplify.rkt:195:13 ------------------------------------------------------------------------------------------ ??? [53] 100.0% [66] 712(0.1%) 350(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [76] 50.8% ------------------------------------------------------------------------------------------ hash-keys [55] 0.9% loop [67] 99.1% [67] 368(0.0%) 368(0.0%) loop ...acket/collects/racket/private/hash.rkt:3:4 loop [67] 99.1% ------------------------------------------------------------------------------------------ simplify! [56] 100.0% [68] 663248(52.8%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [77] 99.9% debug-print [167] 0.1% ------------------------------------------------------------------------------------------ apply-match [57] 100.0% [69] 416456(33.1%) 322(0.0%) for-loop ...e/develop/src/core/simplify.rkt:145:10 mk-enode! [85] 31.6% substitute-e [79] 31.6% merge-egraph-nodes! [81] 23.4% loop! [187] 11.4% list-member? [243] 1.9% ------------------------------------------------------------------------------------------ loop [61] 18.9% argmin [58] 81.1% [70] 200474(15.9%) 6482(0.5%) for-loop .../herbie/develop/src/programs.rkt:199:2 ??? [180] 68.6% ...velop/src/common.rkt:47:2 [120] 25.8% ??? [119] 2.3% ------------------------------------------------------------------------------------------ gen-rewrites! [59] 100.0% [71] 182988(14.6%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [78] 100.0% ------------------------------------------------------------------------------------------ apply-match [57] 23.0% for-loop [87] 29.8% for-loop [46] 47.3% [72] 153132(12.2%) 47164(3.8%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [80] 48.2% for-loop [87] 12.0% ??? [181] 6.4% variable? [10] 3.8% loop [182] 2.6% list-cartesian-product [91] 2.3% custom-in-set [152] 0.7% curry* [95] 0.4% ------------------------------------------------------------------------------------------ gen-series! [60] 100.0% [73] 68098(5.4%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:135:7 taylor-alt [82] 100.0% ------------------------------------------------------------------------------------------ loop [61] 28.2% argmin [58] 71.8% [74] 32730(2.6%) 640(0.1%) expression-cost .../develop/src/programs.rkt:198:0 compile [83] 98.0% ------------------------------------------------------------------------------------------ apply-match [57] 100.0% [75] 2714(0.2%) 1026(0.1%) reduce-to-single! ...lop/src/core/egraph.rkt:324:0 for-loop [84] 49.9% make-sequence [131] 12.3% ------------------------------------------------------------------------------------------ unpack245 [66] 100.0% [76] 362(0.0%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [220]100.0% ------------------------------------------------------------------------------------------ for-loop [68] 17.9% run [21] 31.9% [77] 1235374(98.3%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 ??? [180] 35.8% profile-thunk16 [1] 31.9% run-improve50 [2] 31.3% loop [90] 1.1% ------------------------------------------------------------------------------------------ for-loop [71] 100.0% [78] 182988(14.6%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [86] 100.0% ------------------------------------------------------------------------------------------ substitute-e [79] 3.8% for-loop [69] 96.2% [79] 131572(10.5%) 4040(0.3%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [85] 91.3% substitute-e [79] 3.8% ??? [181] 1.2% variable? [10] 0.9% ------------------------------------------------------------------------------------------ match-e [72] 100.0% [80] 99482(7.9%) 33640(2.7%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [87] 57.2% list-cartesian-product [91] 8.3% loop [182] 3.8% curry* [95] 1.4% filter [264] 0.5% curried [215] 0.5% foldl [191] 0.4% ------------------------------------------------------------------------------------------ for-loop [93] 3.0% merge-egraph-nodes! [81] 5.3% for-loop [69] 91.6% [81] 97594(7.8%) 3100(0.2%) merge-egraph-nodes! ...p/src/core/egraph.rkt:152:0 update-leader! [89] 56.1% for-loop [92] 11.0% loop! [187] 10.8% enode-merge! [94] 7.0% merge-egraph-nodes! [81] 5.3% for-loop [93] 4.8% for-loop [26] 1.2% make-sequence [131] 0.7% ------------------------------------------------------------------------------------------ for-loop [73] 100.0% [82] 68098(5.4%) 0(0.0%) taylor-alt ...es/herbie/develop/src/glue.rkt:134:0 for-loop [88] 100.0% ------------------------------------------------------------------------------------------ expression-cost [74] 100.0% [83] 32090(2.6%) 1308(0.1%) compile ...s/herbie/develop/src/programs.rkt:175:0 hash-ref! [153] 95.9% ------------------------------------------------------------------------------------------ reduce-to-single! [75] 100.0% [84] 1354(0.1%) 1354(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:325:8 ------------------------------------------------------------------------------------------ expr->enode [204] 1.4% substitute-e [79] 47.0% for-loop [69] 51.6% [85] 255484(20.3%) 19962(1.6%) mk-enode! ...bie/develop/src/core/egraph.rkt:101:0 new-enode [96] 91.0% hash-has-key? [186] 1.2% ------------------------------------------------------------------------------------------ ??? [78] 10.8% matcher [107] 89.2% [86] 182988(14.6%) 16070(1.3%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [97] 89.8% expression->type [177] 4.4% *rules* [6] 2.9% f176 [179] 1.7% type-of [192] 0.2% ------------------------------------------------------------------------------------------ match-e [72] 33.2% for-loop [80] 66.8% [87] 89008(7.1%) 6092(0.5%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [72] 91.4% ??? [101] 2.9% ------------------------------------------------------------------------------------------ taylor-alt [82] 100.0% [88] 68098(5.4%) 0(0.0%) for-loop ...lies/herbie/develop/src/glue.rkt:139:6 ??? [116] 100.0% ------------------------------------------------------------------------------------------ apply-match [57] 11.5% merge-egraph-nodes! [81] 88.5% [89] 65672(5.2%) 6182(0.5%) update-leader! ...evelop/src/core/egraph.rkt:217:0 for-loop [98] 83.3% update-en-expr [201] 3.1% custom-set-union! [103] 3.1% make-sequence [131] 1.1% ------------------------------------------------------------------------------------------ run-improve50 [2] 3.9% ??? [77] 96.1% [90] 28028(2.2%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:193:2 make-exacts* [109] 51.7% loop [99] 46.0% for-loop [105] 1.2% ------------------------------------------------------------------------------------------ list-cartesian-product [91] 20.4% match-e [72] 25.2% for-loop [80] 54.4% [91] 13232(1.1%) 11854(0.9%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [91] 20.4% for-loop [104] 7.8% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [81] 100.0% [92] 10702(0.9%) 7308(0.6%) for-loop ...rbie/develop/src/core/egraph.rkt:232:6 update-en-expr [201] 31.7% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [81] 100.0% [93] 7880(0.6%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:200:10 merge-egraph-nodes! [81] 78.5% loop! [187] 21.5% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [81] 100.0% [94] 7190(0.6%) 690(0.1%) enode-merge! ...e/develop/src/core/enode.rkt:129:0 custom-set-intersect! [100] 53.2% adopt-enode! [102] 37.2% ------------------------------------------------------------------------------------------ *rules* [6] 12.2% match-e [72] 24.1% for-loop [80] 63.8% [95] 2644(0.2%) 990(0.1%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [237] 62.6% ------------------------------------------------------------------------------------------ mk-enode! [85] 100.0% [96] 232524(18.5%) 984(0.1%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [106] 98.4% set [202] 1.0% ------------------------------------------------------------------------------------------ rewriter [86] 100.0% [97] 182988(14.6%) 2024(0.2%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [107] 99.9% ------------------------------------------------------------------------------------------ update-leader! [89] 100.0% [98] 54708(4.4%) 2382(0.2%) for-loop ...rbie/develop/src/core/egraph.rkt:222:6 for-loop [108] 95.6% ------------------------------------------------------------------------------------------ loop [90] 100.0% [99] 12896(1.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:151:2 loop [110] 51.1% make-exacts* [109] 38.1% eval-prog [231] 10.8% ------------------------------------------------------------------------------------------ enode-merge! [94] 100.0% [100] 3828(0.3%) 3828(0.3%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ------------------------------------------------------------------------------------------ for-loop [46] 19.4% for-loop [87] 80.6% [101] 3386(0.3%) 2038(0.2%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [111] 39.8% ------------------------------------------------------------------------------------------ enode-merge! [94] 100.0% [102] 2672(0.2%) 608(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:105:0 custom-set-union [200] 77.2% ------------------------------------------------------------------------------------------ update-leader! [89] 100.0% [103] 2038(0.2%) 1034(0.1%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [112] 49.3% ------------------------------------------------------------------------------------------ list-cartesian-product [91] 100.0% [104] 1378(0.1%) 1378(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------ loop [90] 100.0% [105] 330(0.0%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:200:24 for-loop [113] 100.0% ------------------------------------------------------------------------------------------ new-enode [96] 100.0% [106] 228758(18.2%) 4406(0.4%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [114] 98.1% ------------------------------------------------------------------------------------------ matcher [107] 16.8% for-loop [115] 33.7% for-loop [97] 49.5% [107] 182988(14.6%) 2368(0.2%) matcher ...rbie/develop/src/core/matcher.rkt:167:2 rewriter [86] 49.3% for-loop [115] 33.7% matcher [107] 16.8% for-loop [14] 0.1% variable? [10] 0.0% loop [182] 0.0% ------------------------------------------------------------------------------------------ for-loop [98] 100.0% [108] 52326(4.2%) 1052(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:223:8 hash-update! [118] 98.0% ------------------------------------------------------------------------------------------ loop [99] 25.3% loop [90] 74.7% [109] 19390(1.5%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [182] 55.1% map [117] 37.5% eval-prog [231] 7.3% ------------------------------------------------------------------------------------------ loop [99] 100.0% [110] 6592(0.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 map [117] 100.0% ------------------------------------------------------------------------------------------ ??? [101] 100.0% [111] 1348(0.1%) 1348(0.1%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ------------------------------------------------------------------------------------------ custom-set-union! [103] 100.0% [112] 1004(0.1%) 1004(0.1%) for-loop ...cts/racket/private/set-types.rkt:253:4 ------------------------------------------------------------------------------------------ for-loop [105] 100.0% [113] 330(0.0%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:201:26 ??? [116] 100.0% ------------------------------------------------------------------------------------------ type-of-enode-expr [106] 100.0% [114] 224352(17.8%) 6878(0.5%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [119] 40.4% ??? [180] 27.3% ...velop/src/common.rkt:47:2 [120] 15.3% ??? [181] 13.9% ------------------------------------------------------------------------------------------ matcher [107] 100.0% [115] 182642(14.5%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:183:21 matcher [107] 100.0% ------------------------------------------------------------------------------------------ for-loop [229] 0.3% for-loop [113] 0.4% loop [19] 0.4% loop [236] 0.4% jloop [15] 0.8% loop [182] 1.6% ??? [194] 2.3% ??? [242] 2.6% f176 [179] 14.5% loop [25] 21.6% ??? [180] 27.5% for-loop [88] 27.5% [116] 88808(7.1%) 1022(0.1%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [180] 39.4% approximate9 [5] 26.0% hash-ref! [153] 21.6% ??? [261] 3.5% best-alt [124] 2.3% ??? [119] 1.8% ...velop/src/common.rkt:47:2 [120] 1.6% simplify [156] 1.6% ??? [248] 1.1% ------------------------------------------------------------------------------------------ parse-loop12 [140] 2.5% loop [110] 9.6% make-exacts* [109] 10.6% f176 [179] 77.3% [117] 68556(5.5%) 718(0.1%) map ...acket/collects/racket/private/map.rkt:20:13 f176 [179] 44.3% loop [182] 20.7% parse-loop12 [140] 14.7% simplify-node [122] 10.5% make-multiplication-node [155] 5.6% ??? [193] 2.2% simplify* [123] 1.5% taylor [18] 0.1% ------------------------------------------------------------------------------------------ for-loop [108] 100.0% [118] 51274(4.1%) 658(0.1%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [121] 98.7% ------------------------------------------------------------------------------------------ ??? [116] 1.2% for-loop [70] 3.2% f176 [179] 33.9% get-sigs [114] 61.6% [119] 146986(11.7%) 11950(1.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [125] 48.7% for-loop [126] 34.5% get/build-late-neg-projection [161] 7.3% ??? [270] 0.5% ??? [225] 0.5% ??? [136] 0.2% ------------------------------------------------------------------------------------------ ??? [116] 1.4% f176 [179] 13.0% get-sigs [114] 34.2% for-loop [70] 51.4% [120] 100644(8.0%) 33660(2.7%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [128] 35.0% ??? [129] 31.6% ------------------------------------------------------------------------------------------ hash-update! [118] 100.0% [121] 50616(4.0%) 1656(0.1%) ??? ...s/herbie/develop/src/core/egraph.rkt:225:24 for-loop [127] 95.4% make-sequence [131] 1.3% ------------------------------------------------------------------------------------------ simplify [156] 8.2% map [117] 91.8% [122] 25772(2.0%) 358(0.0%) simplify-node .../develop/src/core/reduce.rkt:50:0 append-map [130] 48.3% f176 [179] 46.3% partition [134] 2.7% combine-aterms [135] 1.4% ------------------------------------------------------------------------------------------ simplify [156] 6.5% map [117] 93.5% [123] 5108(0.4%) 2026(0.2%) simplify* ...rbie/develop/src/core/reduce.rkt:31:0 hash-ref! [153] 34.4% return/no-unsupplied [258] 19.3% ??? [137] 6.6% ------------------------------------------------------------------------------------------ ??? [116] 100.0% [124] 2432(0.2%) 0(0.0%) best-alt ...tlies/herbie/develop/src/glue.rkt:71:0 loop [132] 71.7% argmins [133] 28.3% ------------------------------------------------------------------------------------------ ??? [119] 100.0% [125] 71540(5.7%) 5504(0.4%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [139] 92.3% ------------------------------------------------------------------------------------------ for-loop [211] 24.9% ??? [119] 75.1% [126] 67510(5.4%) 10444(0.8%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [138] 83.5% ??? [250] 1.0% ------------------------------------------------------------------------------------------ ??? [121] 100.0% [127] 48282(3.8%) 38350(3.1%) for-loop ...bie/develop/src/core/egraph.rkt:226:26 update-en-expr [201] 20.6% ------------------------------------------------------------------------------------------ for-loop [151] 6.3% ??? [138] 13.3% ...velop/src/common.rkt:47:2 [120] 80.3% [128] 35226(2.8%) 8578(0.7%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [138] 70.6% ??? [261] 10.4% ??? [225] 3.8% ------------------------------------------------------------------------------------------ ...velop/src/common.rkt:47:2 [120] 100.0% [129] 31758(2.5%) 11902(0.9%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [257] 28.3% assoc-ref [141] 21.8% return/no-unsupplied [258] 12.4% ------------------------------------------------------------------------------------------ append-map [130] 28.5% f176 [179] 30.9% simplify-node [122] 40.6% [130] 23700(1.9%) 692(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 parse-loop12 [140] 59.9% append-map [130] 28.5% f176 [179] 8.1% free-variables [143] 1.8% ------------------------------------------------------------------------------------------ reduce-to-single! [75] 8.9% ??? [121] 18.0% update-leader! [89] 18.4% merge-egraph-nodes! [81] 19.0% for-loop [45] 35.8% [131] 3774(0.3%) 2722(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [144] 27.9% ------------------------------------------------------------------------------------------ extract-alt [54] 15.8% best-alt [124] 84.2% [132] 2072(0.2%) 0(0.0%) loop ...htlies/herbie/develop/src/common.rkt:146:2 composed [142] 100.0% ------------------------------------------------------------------------------------------ extract-alt [54] 32.1% best-alt [124] 67.9% [133] 1014(0.1%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:145:0 composed [142] 100.0% ------------------------------------------------------------------------------------------ simplify-node [122] 100.0% [134] 684(0.1%) 684(0.1%) partition ...racket/collects/racket/list.rkt:547:0 ------------------------------------------------------------------------------------------ simplify-node [122] 100.0% [135] 360(0.0%) 0(0.0%) combine-aterms ...evelop/src/core/reduce.rkt:183:0 for-loop [145] 100.0% ------------------------------------------------------------------------------------------ ??? [119] 100.0% [136] 346(0.0%) 0(0.0%) ??? ...private/unconstrained-domain-arrow.rkt:69:2 get-blame-party-info [146] 100.0% ------------------------------------------------------------------------------------------ simplify* [123] 100.0% [137] 338(0.0%) 0(0.0%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [261] 100.0% ------------------------------------------------------------------------------------------ ...higher-order.rkt:346:33 [255] 0.8% ??? [180] 3.4% ??? [198] 4.1% ??? [128] 33.1% for-loop [126] 58.6% [138] 96132(7.6%) 20970(1.7%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [148] 55.4% ??? [128] 9.8% for-loop [151] 9.2% ??? [250] 3.8% ------------------------------------------------------------------------------------------ ??? [125] 100.0% [139] 66036(5.3%) 2420(0.2%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [147] 96.3% ------------------------------------------------------------------------------------------ loop [182] 0.8% hash-ref! [153] 1.4% simplify [156] 1.8% f176 [179] 4.2% parse-loop12 [140] 8.9% for-loop [31] 23.2% append-map [130] 25.3% map [117] 34.0% [140] 49858(4.0%) 8010(0.6%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 for-loop [149] 23.2% make-multiplication-node [155] 16.7% loop [182] 13.8% for-loop [150] 10.6% parse-loop12 [140] 8.9% f176 [179] 8.4% map [117] 7.8% make-keyword-procedure [230] 0.4% loop [19] 0.2% ------------------------------------------------------------------------------------------ ??? [129] 100.0% [141] 6916(0.6%) 6916(0.6%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------ argmins [133] 17.4% loop [132] 35.5% f176 [179] 47.2% [142] 5844(0.5%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [222] 52.8% f176 [179] 47.2% ------------------------------------------------------------------------------------------ loop [183] 20.7% append-map [130] 79.3% [143] 1682(0.1%) 348(0.0%) free-variables ...e/develop/src/programs.rkt:100:0 ??? [181] 61.0% variable? [10] 18.3% ------------------------------------------------------------------------------------------ make-sequence [131] 100.0% [144] 1052(0.1%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [152] 100.0% ------------------------------------------------------------------------------------------ combine-aterms [135] 100.0% [145] 360(0.0%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:185:4 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ ??? [136] 100.0% [146] 346(0.0%) 346(0.0%) get-blame-party-info ...ate/arrow-common.rkt:136:0 ------------------------------------------------------------------------------------------ ??? [139] 100.0% [147] 63616(5.1%) 3120(0.2%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [154] 95.1% ------------------------------------------------------------------------------------------ ??? [138] 100.0% [148] 53296(4.2%) 3248(0.3%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [261] 84.6% ??? [250] 9.3% ------------------------------------------------------------------------------------------ parse-loop12 [140] 100.0% [149] 17082(1.4%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:490:59 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ parse-loop12 [140] 100.0% [150] 10318(0.8%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:99:13 make-multiplication-node [155] 93.5% f176 [179] 6.5% ------------------------------------------------------------------------------------------ ??? [138] 100.0% [151] 8836(0.7%) 4372(0.3%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [128] 50.5% ------------------------------------------------------------------------------------------ setfindf [33] 11.9% ??? [144] 37.9% match-e [72] 50.2% [152] 2774(0.2%) 2774(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------------------ for-loop [145] 0.1% for-loop [41] 0.1% for-loop [40] 0.2% for-loop [35] 0.3% simplify* [123] 0.4% ??? [193] 0.6% eval-prog [231] 1.4% loop [182] 2.6% loop [13] 2.7% for-loop [28] 3.0% for-loop [149] 3.9% ??? [64] 4.3% for-loop [49] 5.3% for-loop [30] 5.8% compile [83] 14.5% ??? [159] 17.2% ??? [157] 18.1% ??? [116] 19.5% [153] 97186(7.7%) 29992(2.4%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [159] 23.1% simplify [156] 21.4% ??? [157] 18.1% ??? [7] 7.9% ??? [9] 5.8% ??? [8] 5.5% ??? [11] 3.9% parse-loop12 [140] 0.7% bigfloat-hash [162] 0.6% ??? [16] 0.4% ??? [20] 0.1% ------------------------------------------------------------------------------------------ ??? [147] 100.0% [154] 60496(4.8%) 18846(1.5%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [160] 43.8% get/build-late-neg-projection [161] 25.1% ------------------------------------------------------------------------------------------ simplify [156] 0.9% for-loop [150] 27.0% parse-loop12 [140] 34.7% map [117] 37.4% [155] 35710(2.8%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [158] 100.0% ------------------------------------------------------------------------------------------ loop [13] 0.5% ??? [8] 0.5% for-loop [28] 2.5% taylor-exp [36] 3.0% ??? [116] 4.2% hash-ref! [153] 88.8% [156] 67052(5.3%) 0(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:16:0 f176 [179] 93.2% simplify-node [122] 3.2% parse-loop12 [140] 1.6% debug-print [167] 1.1% simplify* [123] 0.5% make-multiplication-node [155] 0.5% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [157] 56136(4.5%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:44:15 hash-ref! [153] 100.0% ------------------------------------------------------------------------------------------ make-multiplication-node [155] 100.0% [158] 35710(2.8%) 634(0.1%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [163] 95.3% group-by68 [168] 3.0% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [159] 29558(2.4%) 4940(0.4%) ??? ...tlies/herbie/develop/src/programs.rkt:183:5 hash-ref! [153] 78.3% loop [182] 10.8% ------------------------------------------------------------------------------------------ for-loop [154] 100.0% [160] 26484(2.1%) 26484(2.1%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------------------ ??? [165] 12.9% ??? [119] 26.5% for-loop [154] 58.5% [161] 25924(2.1%) 6250(0.5%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [164] 60.8% ??? [165] 19.2% ------------------------------------------------------------------------------------------ hash-ref! [153] 100.0% [162] 2820(0.2%) 334(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [166] 76.6% sig+exp->bigfloat [169] 11.6% ------------------------------------------------------------------------------------------ make-multiplication-subnode [158] 100.0% [163] 34022(2.7%) 334(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:242:3 mterm->expr [175] 76.6% make-multiplication-subsubsubnode [171] 21.4% compose [173] 1.1% ------------------------------------------------------------------------------------------ get/build-late-neg-projection [161] 100.0% [164] 18050(1.4%) 4228(0.3%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [170] 76.6% ------------------------------------------------------------------------------------------ get/build-late-neg-projection [161] 100.0% [165] 8672(0.7%) 1624(0.1%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [161] 81.3% ------------------------------------------------------------------------------------------ bigfloat-hash [162] 100.0% [166] 2160(0.2%) 2160(0.2%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 ------------------------------------------------------------------------------------------ for-loop [68] 46.8% simplify [156] 53.2% [167] 1350(0.1%) 0(0.0%) debug-print .../herbie/develop/src/debug.rkt:107:0 for-loop [172] 100.0% ------------------------------------------------------------------------------------------ make-multiplication-subnode [158] 100.0% [168] 1054(0.1%) 694(0.1%) group-by68 ...acket/collects/racket/list.rkt:749:0 hash-update [174] 34.2% ------------------------------------------------------------------------------------------ bigfloat-hash [162] 100.0% [169] 326(0.0%) 0(0.0%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ??? [269] 100.0% ------------------------------------------------------------------------------------------ contract-struct-name [176] 23.1% ??? [164] 76.9% [170] 13822(1.1%) 9280(0.7%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [176] 50.9% ------------------------------------------------------------------------------------------ for-loop [163] 100.0% [171] 7280(0.6%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [175] 100.0% ------------------------------------------------------------------------------------------ debug-print [167] 100.0% [172] 1350(0.1%) 1350(0.1%) for-loop ...ies/herbie/develop/src/debug.rkt:113:2 ------------------------------------------------------------------------------------------ for-loop [163] 34.9% for-loop [12] 65.1% [173] 1026(0.1%) 1026(0.1%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------ group-by68 [168] 100.0% [174] 360(0.0%) 360(0.0%) hash-update ...cket/private/more-scheme.rkt:356:13 ------------------------------------------------------------------------------------------ make-multiplication-subsubsubnode [171] 21.8% for-loop [163] 78.2% [175] 33330(2.7%) 0(0.0%) mterm->expr ...e/develop/src/core/reduce.rkt:270:0 expression->type [177] 76.6% f176 [179] 21.5% type-of [192] 1.9% ------------------------------------------------------------------------------------------ build-compound-type-name [170] 100.0% [176] 9530(0.8%) 4542(0.4%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [170] 59.7% ------------------------------------------------------------------------------------------ loop [183] 1.2% f176 [179] 4.5% mterm->expr [175] 11.8% rewriter [86] 32.7% for-loop [178] 49.8% [177] 104478(8.3%) 1434(0.1%) expression->type ...evelop/src/type-check.rkt:45:0 for-loop [178] 97.8% ??? [181] 1.3% variable? [10] 0.1% ------------------------------------------------------------------------------------------ expression->type [177] 100.0% [178] 103068(8.2%) 724(0.1%) for-loop ...herbie/develop/src/type-check.rkt:52:5 expression->type [177] 51.2% f176 [179] 48.0% ??? [257] 0.3% ------------------------------------------------------------------------------------------ for-loop [150] 0.1% composed [142] 0.2% ??? [193] 0.2% loop [44] 0.4% append-map [130] 0.4% loop [183] 0.4% approximate9 [5] 0.5% parse-loop12 [140] 0.6% mterm->expr [175] 0.7% eval-prog [231] 0.7% loop [182] 0.9% simplify-node [122] 1.2% eval-const-expr [34] 1.3% f176 [179] 7.6% simplify [156] 7.7% map [117] 11.9% split-table [47] 13.8% rewriter [86] 17.0% for-loop [178] 34.5% [179] 209640(16.7%) 7922(0.6%) f176 .../collects/racket/match/compiler.rkt:507:40 map [117] 20.0% ??? [119] 17.2% ??? [180] 12.7% ??? [181] 12.6% loop [182] 12.5% f176 [179] 7.6% ...velop/src/common.rkt:47:2 [120] 5.2% expression->type [177] 2.6% append-map [130] 1.5% ??? [116] 1.3% option-on-expr [188] 1.3% loop [183] 0.7% loop [44] 0.4% return/no-unsupplied [258] 0.4% loop [13] 0.3% parse-loop12 [140] 0.2% composed [142] 0.2% parse-app [184] 0.2% ??? [257] 0.2% taylor-exp [36] 0.1% combine-mterms [17] 0.1% taylor [18] 0.0% ------------------------------------------------------------------------------------------ simplify-alt [51] 0.1% get-sigs [114] 2.0% f176 [179] 2.9% for-loop [70] 4.6% ??? [116] 5.5% ??? [180] 6.6% for-loop [185] 36.9% ??? [77] 40.8% [180] 1002630(79.8%) 56442(4.5%) ??? ...llects/racket/private/norm-define.rkt:53:83 for-loop [185] 36.9% iterate-egraph!13 [3] 31.0% loop [4] 10.4% ??? [198] 6.7% ??? [180] 6.6% ??? [116] 4.4% return/no-unsupplied [258] 0.4% ??? [257] 0.4% mk-egraph [190] 0.2% ??? [138] 0.1% dict? [267] 0.1% ??? [205] 0.1% loop [197] 0.0% ------------------------------------------------------------------------------------------ run-improve50 [2] 0.2% setfindf [33] 0.2% debug7 [42] 0.2% pattern-match [39] 0.4% free-variables [143] 0.7% pattern-substitute [37] 0.7% expression->type [177] 1.6% ??? [261] 2.2% substitute-e [79] 2.9% variable? [10] 12.6% match-e [72] 13.5% get-sigs [114] 20.7% finalize-iter! [62] 21.1% f176 [179] 21.4% [181] 150998(12.0%) 38794(3.1%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [186] 50.0% for-loop [189] 20.7% ??? [194] 1.6% ??? [261] 1.4% atab-add-altns [195] 0.7% ------------------------------------------------------------------------------------------ make-exacts* [109] 0.0% matcher [107] 0.3% map-enodes [32] 0.7% map [117] 1.8% for-loop [80] 2.1% ??? [159] 2.2% option-on-expr [188] 2.6% match-e [72] 3.0% parse-loop12 [140] 6.6% loop! [187] 8.8% f176 [179] 14.0% loop [182] 58.1% [182] 137192(10.9%) 8106(0.6%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [182] 58.1% option-on-expr [188] 14.0% loop! [187] 8.1% f176 [179] 6.4% errors [222] 2.6% hash-ref! [153] 2.2% foldl [191] 1.0% curried [215] 1.0% parse-loop12 [140] 0.9% for-loop [12] 0.7% ??? [242] 0.6% ??? [193] 0.5% ??? [116] 0.0% ------------------------------------------------------------------------------------------ f176 [179] 100.0% [183] 9230(0.7%) 0(0.0%) loop ...es/herbie/develop/src/core/reduce.rkt:18:2 f176 [179] 60.1% expression->type [177] 32.5% free-variables [143] 3.8% type-of [192] 3.6% ------------------------------------------------------------------------------------------ f176 [179] 48.1% eval-const-expr [34] 51.9% [184] 686(0.1%) 0(0.0%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [196] 100.0% ------------------------------------------------------------------------------------------ ??? [180] 100.0% [185] 798180(63.5%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:63:12 ??? [180] 100.0% ------------------------------------------------------------------------------------------ mk-enode! [85] 3.8% ??? [181] 96.2% [186] 79382(6.3%) 14380(1.1%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [198] 78.9% ??? [205] 3.0% ------------------------------------------------------------------------------------------ for-loop [93] 2.1% merge-egraph-nodes! [81] 16.9% loop [182] 30.3% for-loop [69] 50.7% [187] 63766(5.1%) 13586(1.1%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 custom-set-union [200] 35.2% loop [182] 34.7% set [202] 12.2% update-en-expr [201] 5.3% ------------------------------------------------------------------------------------------ f176 [179] 9.0% loop [182] 91.0% [188] 33728(2.7%) 0(0.0%) option-on-expr ...velop/src/core/regimes.rkt:103:0 sort-context-on-expr [203] 41.6% errors [222] 23.5% loop [182] 22.5% pick-errors [206] 6.2% err-lsts->split-indices [207] 4.2% sindices->spoints [209] 2.1% ------------------------------------------------------------------------------------------ ??? [181] 100.0% [189] 32040(2.5%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [199] 100.0% ------------------------------------------------------------------------------------------ ??? [180] 100.0% [190] 4284(0.3%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:123:0 expr->enode [204] 100.0% ------------------------------------------------------------------------------------------ for-loop [80] 13.4% loop [182] 86.6% [191] 2698(0.2%) 1360(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [208] 49.6% ------------------------------------------------------------------------------------------ loop [183] 12.5% mterm->expr [175] 24.1% rewriter [86] 63.5% [192] 2694(0.2%) 2694(0.2%) type-of .../herbie/develop/src/type-check.rkt:38:0 ------------------------------------------------------------------------------------------ loop [182] 28.4% map [117] 71.6% [193] 2468(0.2%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 f176 [179] 71.6% hash-ref! [153] 28.4% ------------------------------------------------------------------------------------------ ??? [181] 100.0% [194] 2432(0.2%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [116] 100.0% ------------------------------------------------------------------------------------------ ??? [181] 100.0% [195] 984(0.1%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [199] 100.0% ------------------------------------------------------------------------------------------ loop [196] 24.1% parse-app [184] 75.9% [196] 686(0.1%) 686(0.1%) loop .../collects/racket/private/stxcase.rkt:112:7 loop [196] 24.1% ------------------------------------------------------------------------------------------ ??? [180] 100.0% [197] 330(0.0%) 0(0.0%) loop ...ghtlies/herbie/develop/src/points.rkt:66:6 random-exp [210] 100.0% ------------------------------------------------------------------------------------------ hash-has-key? [186] 27.5% ??? [180] 72.5% [198] 228004(18.1%) 83220(6.6%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [211] 52.2% ??? [221] 9.3% ??? [138] 1.7% successfully-got-the-right-kind-of-function [220] 0.3% ------------------------------------------------------------------------------------------ atab-add-altns [195] 3.0% for-loop [189] 97.0% [199] 33024(2.6%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [212] 99.0% ------------------------------------------------------------------------------------------ adopt-enode! [102] 7.9% loop! [187] 92.1% [200] 26000(2.1%) 7514(0.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [213] 62.2% for-loop [216] 8.9% ------------------------------------------------------------------------------------------ for-loop [26] 1.4% update-leader! [89] 9.1% for-loop [92] 15.1% loop! [187] 30.4% for-loop [127] 44.0% [201] 22548(1.8%) 22548(1.8%) update-en-expr ...evelop/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------------------ new-enode [96] 12.8% loop! [187] 87.2% [202] 18842(1.5%) 18842(1.5%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------ option-on-expr [188] 100.0% [203] 14036(1.1%) 0(0.0%) sort-context-on-expr ...velop/src/points.rkt:115:0 ??? [214] 93.0% eval-prog [231] 7.0% ------------------------------------------------------------------------------------------ mk-egraph [190] 38.9% expr->enode [204] 61.1% [204] 4284(0.3%) 334(0.0%) expr->enode ...e/develop/src/core/egraph.rkt:124:2 expr->enode [204] 61.1% mk-enode! [85] 36.6% curried [215] 1.2% ------------------------------------------------------------------------------------------ ??? [180] 29.4% hash-has-key? [186] 70.6% [205] 3384(0.3%) 3384(0.3%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ------------------------------------------------------------------------------------------ option-on-expr [188] 100.0% [206] 2082(0.2%) 0(0.0%) pick-errors .../develop/src/core/regimes.rkt:184:0 point->alt [218] 50.1% for-loop [219] 49.9% ------------------------------------------------------------------------------------------ option-on-expr [188] 100.0% [207] 1402(0.1%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 add-splitpoint [217] 100.0% ------------------------------------------------------------------------------------------ foldl [191] 100.0% [208] 1338(0.1%) 1338(0.1%) merge2 .../herbie/develop/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------------------ option-on-expr [188] 100.0% [209] 694(0.1%) 0(0.0%) sindices->spoints ...op/src/core/regimes.rkt:116:0 eval-prog [231] 100.0% ------------------------------------------------------------------------------------------ loop [197] 100.0% [210] 330(0.0%) 330(0.0%) random-exp .../herbie/develop/src/common.rkt:246:0 ------------------------------------------------------------------------------------------ ??? [198] 100.0% [211] 119078(9.5%) 68576(5.5%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [221] 26.1% for-loop [126] 14.1% ??? [225] 2.2% ------------------------------------------------------------------------------------------ atab-add-altn [199] 100.0% [212] 32692(2.6%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [222] 100.0% ------------------------------------------------------------------------------------------ custom-set-union [200] 100.0% [213] 16180(1.3%) 4820(0.4%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [224] 70.2% ------------------------------------------------------------------------------------------ sort-context-on-expr [203] 100.0% [214] 13050(1.0%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [223] 89.6% loop [236] 10.4% ------------------------------------------------------------------------------------------ expr->enode [204] 7.6% for-loop [12] 8.3% for-loop [80] 17.2% ormap [48] 26.5% loop [182] 40.5% [215] 4044(0.3%) 4044(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------------------------ custom-set-union [200] 100.0% [216] 2306(0.2%) 2306(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------ err-lsts->split-indices [207] 100.0% [217] 1402(0.1%) 0(0.0%) add-splitpoint ...velop/src/core/regimes.rkt:235:2 for-loop [226] 100.0% ------------------------------------------------------------------------------------------ pick-errors [206] 100.0% [218] 1044(0.1%) 0(0.0%) point->alt ...e/develop/src/core/regimes.rkt:171:0 eval-prog [231] 100.0% ------------------------------------------------------------------------------------------ pick-errors [206] 100.0% [219] 1038(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:186:2 ??? [227] 100.0% ------------------------------------------------------------------------------------------ maybe-cons-kwd [76] 36.4% ??? [198] 63.6% [220] 994(0.1%) 298(0.0%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [228] 70.0% ------------------------------------------------------------------------------------------ ??? [198] 40.4% for-loop [211] 59.6% [221] 52196(4.2%) 28716(2.3%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [230] 45.0% ------------------------------------------------------------------------------------------ composed [142] 6.0% loop [182] 14.7% option-on-expr [188] 15.4% best-and-tied-at-points [212] 63.3% [222] 51624(4.1%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:218:0 for-loop [229] 71.5% eval-prog [231] 28.5% ------------------------------------------------------------------------------------------ ??? [214] 100.0% [223] 11694(0.9%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [232] 82.5% loop [236] 17.5% ------------------------------------------------------------------------------------------ for-loop [213] 100.0% [224] 11360(0.9%) 11360(0.9%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------ ??? [119] 14.8% ??? [128] 29.0% for-loop [211] 56.1% [225] 4614(0.4%) 2004(0.2%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [233] 56.6% ------------------------------------------------------------------------------------------ add-splitpoint [217] 100.0% [226] 1402(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:237:4 for-loop [234] 100.0% ------------------------------------------------------------------------------------------ for-loop [219] 100.0% [227] 1038(0.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/regimes.rkt:177:2 ??? [242] 100.0% ------------------------------------------------------------------------------------------ successfully-got-the-right-kind-of-function [220]100.0% [228] 696(0.1%) 0(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [235] 100.0% ------------------------------------------------------------------------------------------ errors [222] 100.0% [229] 36912(2.9%) 638(0.1%) for-loop ...es/herbie/develop/src/points.rkt:221:4 ??? [242] 90.9% ulp-difference [238] 4.6% ??? [116] 0.8% ------------------------------------------------------------------------------------------ parse-loop12 [140] 1.5% ??? [221] 98.5% [230] 23836(1.9%) 23836(1.9%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------ sindices->spoints [209] 3.4% sort-context-on-expr [203] 4.9% point->alt [218] 5.2% loop [99] 6.9% make-exacts* [109] 7.0% errors [222] 72.6% [231] 20256(1.6%) 3134(0.2%) eval-prog ...herbie/develop/src/programs.rkt:148:0 f176 [179] 60.4% hash-ref! [153] 18.9% go [240] 3.4% ??? [241] 1.8% ------------------------------------------------------------------------------------------ generic-sort/key [223] 47.0% copying-mergesort [232] 53.0% [232] 9646(0.8%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [232] 53.0% loop [236] 39.1% jloop [15] 8.0% ------------------------------------------------------------------------------------------ ??? [225] 100.0% [233] 2610(0.2%) 1642(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [239] 37.1% ------------------------------------------------------------------------------------------ for-loop [226] 100.0% [234] 1402(0.1%) 1402(0.1%) for-loop ...bie/develop/src/core/regimes.rkt:241:8 ------------------------------------------------------------------------------------------ arity-checking-wrapper [228] 100.0% [235] 696(0.1%) 362(0.0%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 procedure-arity [237] 48.0% ------------------------------------------------------------------------------------------ ??? [214] 13.6% generic-sort/key [223] 20.5% copying-mergesort [232] 65.9% [236] 9982(0.8%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [242] 96.7% ??? [116] 3.3% ------------------------------------------------------------------------------------------ matches-arity-exactly? [235] 16.8% curry* [95] 83.2% [237] 1988(0.2%) 1988(0.2%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------------------ for-loop [229] 100.0% [238] 1702(0.1%) 658(0.1%) ulp-difference ...erbie/develop/src/float.rkt:19:0 return/no-unsupplied [258] 40.5% list-member? [243] 20.8% ------------------------------------------------------------------------------------------ check-hash/c [233] 100.0% [239] 968(0.1%) 968(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 ------------------------------------------------------------------------------------------ eval-prog [231] 100.0% [240] 692(0.1%) 334(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [245] 51.7% ------------------------------------------------------------------------------------------ eval-prog [231] 100.0% [241] 364(0.0%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [244] 100.0% ------------------------------------------------------------------------------------------ ??? [227] 1.5% jloop [15] 3.4% loop [236] 13.8% loop [182] 33.1% for-loop [229] 48.1% [242] 69734(5.5%) 1020(0.1%) ??? ...tlies/herbie/develop/src/programs.rkt:154:4 ??? [246] 92.8% ??? [116] 3.3% ??? [248] 1.9% ------------------------------------------------------------------------------------------ ulp-difference [238] 4.3% for-loop [69] 95.7% [243] 8204(0.7%) 354(0.0%) list-member? ...llects/racket/private/set.rkt:24:0 loop [247] 79.3% member [249] 16.4% ------------------------------------------------------------------------------------------ ??? [241] 100.0% [244] 364(0.0%) 364(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ------------------------------------------------------------------------------------------ go [240] 9.1% loop [245] 90.9% [245] 358(0.0%) 358(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [245] 90.9% ------------------------------------------------------------------------------------------ ??? [242] 100.0% [246] 64706(5.1%) 36226(2.9%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [259] 13.6% ??? [251] 12.2% ??? [252] 9.5% bf* [253] 6.2% ...higher-order.rkt:346:33 [255] 1.9% ??? [250] 0.6% ------------------------------------------------------------------------------------------ list-member? [243] 100.0% [247] 6506(0.5%) 6506(0.5%) loop (unknown source) ------------------------------------------------------------------------------------------ ??? [116] 42.1% ??? [242] 57.9% [248] 2344(0.2%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [254] 71.1% integer->bigfloat [256] 28.9% ------------------------------------------------------------------------------------------ list-member? [243] 100.0% [249] 1344(0.1%) 1344(0.1%) member (unknown source) ------------------------------------------------------------------------------------------ ??? [246] 3.8% for-loop [126] 7.2% ??? [138] 37.6% ??? [148] 51.4% [250] 9686(0.8%) 4024(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [260] 58.5% ------------------------------------------------------------------------------------------ ??? [246] 100.0% [251] 7884(0.6%) 5508(0.4%) ??? ...herbie/develop/src/syntax/syntax.rkt:122:17 ??? [257] 21.4% return/no-unsupplied [258] 8.8% ------------------------------------------------------------------------------------------ ??? [246] 100.0% [252] 6154(0.5%) 6154(0.5%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------ ??? [246] 100.0% [253] 4038(0.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [259] 100.0% ------------------------------------------------------------------------------------------ ??? [248] 100.0% [254] 1666(0.1%) 1666(0.1%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ------------------------------------------------------------------------------------------ eval-const-expr [34] 19.9% ??? [246] 80.1% [255] 1506(0.1%) 776(0.1%) ...higher-order.rkt:346:33 (unknown source) ??? [138] 48.5% ------------------------------------------------------------------------------------------ ??? [248] 100.0% [256] 678(0.1%) 0(0.0%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ??? [269] 100.0% ------------------------------------------------------------------------------------------ f176 [179] 1.2% for-loop [178] 1.3% ??? [251] 6.3% ??? [180] 24.4% flag-set? [63] 33.0% ??? [129] 33.7% [257] 26678(2.1%) 4114(0.3%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [262] 73.6% ??? [261] 11.0% ------------------------------------------------------------------------------------------ ulp-difference [238] 3.2% ??? [251] 3.2% simplify* [123] 4.5% f176 [179] 4.8% ??? [129] 18.1% ??? [180] 31.3% flag-set? [63] 34.9% [258] 21770(1.7%) 14508(1.2%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [264] 33.4% ------------------------------------------------------------------------------------------ bf* [253] 31.4% ??? [246] 68.6% [259] 12870(1.0%) 1902(0.2%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [263] 68.9% bfexp [266] 16.3% ------------------------------------------------------------------------------------------ ??? [250] 100.0% [260] 5662(0.5%) 2704(0.2%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [265] 52.2% ------------------------------------------------------------------------------------------ ??? [137] 0.5% ??? [181] 3.3% ??? [257] 4.7% ??? [116] 5.0% ??? [128] 11.9% ??? [148] 72.8% [261] 61870(4.9%) 50884(4.0%) ??? ...ects/racket/contract/private/guts.rkt:644:8 contract? [268] 7.4% ??? [181] 6.7% dict? [267] 3.7% ------------------------------------------------------------------------------------------ ??? [257] 100.0% [262] 19628(1.6%) 18254(1.5%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [270] 7.0% ------------------------------------------------------------------------------------------ ??? [259] 100.0% [263] 8868(0.7%) 6380(0.5%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [269] 28.1% ------------------------------------------------------------------------------------------ for-loop [80] 9.0% return/no-unsupplied [258] 91.0% [264] 7976(0.6%) 7976(0.6%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------ ??? [260] 100.0% [265] 2958(0.2%) 2958(0.2%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------------------ ??? [259] 100.0% [266] 2100(0.2%) 1414(0.1%) bfexp ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [269] 32.7% ------------------------------------------------------------------------------------------ *rules* [6] 7.2% ??? [180] 44.4% ??? [261] 48.5% [267] 4698(0.4%) 4698(0.4%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------------------ ??? [261] 100.0% [268] 4586(0.4%) 4586(0.4%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------------------ sig+exp->bigfloat [169] 7.8% integer->bigfloat [256] 16.2% bfexp [266] 16.4% bfmul [263] 59.6% [269] 4178(0.3%) 4178(0.3%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------------------ ??? [119] 33.6% ??? [262] 66.4% [270] 2068(0.2%) 2068(0.2%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ------------------------------------------------------------------------------------------