Profiling results ----------------- Total cpu time observed: 1599444ms (out of 1608404ms) Number of samples taken: 4742 (once every 337ms) (Hiding functions with self<1.0% and local<2.0%: 20 of 293 hidden) =========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================================== ??? [96] 100.0% [1] 1257298(78.6%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [26] 100.0% ------------------------------------------------------------------------------------------- ??? [96] 100.0% [2] 1164464(72.8%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [27] 93.8% get-final-combination [30] 5.1% loop [109] 0.8% setup-alt-simplified [40] 0.2% ??? [133] 0.0% ------------------------------------------------------------------------------------------- table-ref [183] 100.0% [3] 873202(54.6%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:105:0 one-iter [28] 98.6% debug-print [238] 0.0% ------------------------------------------------------------------------------------------- table-ref [183] 100.0% [4] 413446(25.8%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:237:2 pass [29] 100.0% ------------------------------------------------------------------------------------------- ??? [181] 100.0% [5] 29940(1.9%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [31] 89.8% f66 [180] 10.2% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [6] 22720(1.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:285:26 for-loop [32] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [7] 22698(1.4%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:67:15 ??? [181] 100.0% ------------------------------------------------------------------------------------------- ??? [171] 1.5% f66 [180] 97.8% [8] 21558(1.3%) 300(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 f66 [180] 60.7% simplify-node [35] 25.5% make-multiplication-node [175] 6.3% parse-loop12 [167] 3.4% ??? [181] 1.5% simplify* [235] 1.2% taylor [16] 0.6% ??? [25] 0.1% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [9] 19658(1.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:295:23 for-loop [33] 100.0% ------------------------------------------------------------------------------------------- rewriter [112] 100.0% [10] 11442(0.7%) 1340(0.1%) *rules* ...rbie/develop/src/syntax/rules.rkt:565:0 for-loop [36] 88.3% ------------------------------------------------------------------------------------------- loop [200] 100.0% [11] 9872(0.6%) 2920(0.2%) for-loop ...ie/develop/src/core/simplify.rkt:195:2 setfindf [38] 40.7% eval-const-expr [42] 20.0% compose [43] 9.7% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [12] 7016(0.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:392:23 for-loop [37] 100.0% ------------------------------------------------------------------------------------------- generic-sort/key [261] 4.7% copying-mergesort [269] 95.3% [13] 6446(0.4%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [160] 85.6% errors-score [45] 14.4% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [14] 4624(0.3%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:338:33 for-loop [39] 58.7% hash-ref! [184] 41.3% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [15] 2438(0.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:483:23 for-loop [41] 100.0% ------------------------------------------------------------------------------------------- map [8] 21.7% f66 [180] 78.3% [16] 1686(0.1%) 336(0.0%) taylor ...herbie/develop/src/core/taylor.rkt:163:0 loop [200] 39.1% debug7 [240] 21.7% debug-print [238] 19.2% ------------------------------------------------------------------------------------------- mterm->expr [179] 26.6% append-map [55] 73.4% [17] 1352(0.1%) 0(0.0%) free-variables ...e/develop/src/programs.rkt:102:0 variable? [34] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [18] 972(0.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:322:33 for-loop [44] 100.0% ------------------------------------------------------------------------------------------- f66 [180] 100.0% [19] 694(0.0%) 0(0.0%) taylor-quotient ...velop/src/core/taylor.rkt:328:0 first-nonzero-exp [48] 53.3% compose [43] 46.7% ------------------------------------------------------------------------------------------- parse-loop12 [167] 3.1% loop [20] 96.9% [20] 670(0.0%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [20] 96.9% ulp-difference [163] 1.6% ??? [181] 1.6% ------------------------------------------------------------------------------------------- f66 [180] 100.0% [21] 658(0.0%) 0(0.0%) taylor-invert ...develop/src/core/taylor.rkt:312:0 simplify [214] 100.0% ------------------------------------------------------------------------------------------- f66 [180] 100.0% [22] 632(0.0%) 0(0.0%) combine-mterms ...evelop/src/core/reduce.rkt:191:0 for-loop [46] 100.0% ------------------------------------------------------------------------------------------- f66 [180] 100.0% [23] 632(0.0%) 0(0.0%) exprs-to-branch-on ...op/src/core/regimes.rkt:42:0 for-loop [47] 100.0% ------------------------------------------------------------------------------------------- matcher [131] 100.0% [24] 334(0.0%) 0(0.0%) for-loop ...bie/develop/src/core/matcher.rkt:159:6 pattern-match [65] 100.0% ------------------------------------------------------------------------------------------- map [8] 100.0% [25] 304(0.0%) 0(0.0%) ??? ...ies/herbie/develop/src/core/reduce.rkt:61:5 for-loop [49] 100.0% ------------------------------------------------------------------------------------------- profile-thunk16 [1] 99.9% [26] 1257948(78.6%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [96] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [27] 1092118(68.3%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [50] 100.0% ------------------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [28] 861012(53.8%) 11190(0.7%) one-iter ...ie/develop/src/core/simplify.rkt:116:0 for-loop [51] 76.9% for-loop [53] 21.8% filter [264] 0.0% ------------------------------------------------------------------------------------------- loop [4] 100.0% [29] 413446(25.8%) 1676(0.1%) pass ...herbie/develop/src/core/simplify.rkt:227:2 for-loop [52] 99.4% loop [63] 0.1% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [30] 59802(3.7%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 split-table [54] 98.3% extract-alt [64] 1.1% ??? [181] 0.6% ------------------------------------------------------------------------------------------- approximate9 [5] 100.0% [31] 26878(1.7%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:86:4 hash-ref! [184] 84.4% ??? [181] 15.6% ------------------------------------------------------------------------------------------- ??? [6] 100.0% [32] 22720(1.4%) 984(0.1%) for-loop ...bie/develop/src/core/taylor.rkt:285:52 hash-ref! [184] 93.9% ??? [59] 4.2% ------------------------------------------------------------------------------------------- ??? [9] 100.0% [33] 19658(1.2%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:298:27 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- free-variables [17] 6.9% substitute-e [88] 13.7% match-e [72] 79.4% [34] 19542(1.2%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:665:0 ??? [133] 100.0% ------------------------------------------------------------------------------------------- simplify [214] 14.2% map [8] 85.8% [35] 11980(0.7%) 0(0.0%) simplify-node .../develop/src/core/reduce.rkt:50:0 append-map [55] 72.3% f66 [180] 19.3% combine-aterms [62] 8.4% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [89] 14.2% *rules* [10] 85.8% [36] 11770(0.7%) 4882(0.3%) for-loop ...ies/herbie/develop/src/common.rkt:99:9 loop [57] 27.8% ormap [60] 16.8% flag-set? [78] 14.0% ------------------------------------------------------------------------------------------- ??? [12] 100.0% [37] 7016(0.4%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:396:33 for-loop [56] 100.0% ------------------------------------------------------------------------------------------- for-loop [11] 100.0% [38] 4018(0.3%) 2668(0.2%) setfindf ...es/herbie/develop/src/common.rkt:186:0 for-loop [61] 25.8% ??? [133] 7.8% ------------------------------------------------------------------------------------------- ??? [14] 100.0% [39] 2716(0.2%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:341:46 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [40] 2682(0.2%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [58] 100.0% ------------------------------------------------------------------------------------------- ??? [15] 100.0% [41] 2438(0.2%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:487:35 parse-loop12 [167] 100.0% ------------------------------------------------------------------------------------------- for-loop [11] 100.0% [42] 1974(0.1%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:168:0 f66 [180] 67.0% ??? [67] 16.7% ??? [68] 16.3% ------------------------------------------------------------------------------------------- taylor-quotient [19] 25.2% for-loop [11] 74.8% [43] 1284(0.1%) 1284(0.1%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------- ??? [18] 100.0% [44] 972(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:324:46 hash-ref! [184] 66.7% simplify [214] 33.3% ------------------------------------------------------------------------------------------- jloop [13] 100.0% [45] 930(0.1%) 0(0.0%) errors-score ...erbie/develop/src/points.rkt:251:0 loop [200] 64.7% loop [63] 35.3% ------------------------------------------------------------------------------------------- combine-mterms [22] 100.0% [46] 632(0.0%) 326(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:195:5 hash-ref! [184] 48.4% ------------------------------------------------------------------------------------------- exprs-to-branch-on [23] 100.0% [47] 632(0.0%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:44:27 all-critical-subexpressions [66] 100.0% ------------------------------------------------------------------------------------------- taylor-quotient [19] 100.0% [48] 370(0.0%) 0(0.0%) first-nonzero-exp ...lop/src/core/taylor.rkt:260:0 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- ??? [25] 100.0% [49] 304(0.0%) 0(0.0%) for-loop ...erbie/develop/src/core/reduce.rkt:62:7 pattern-match [65] 100.0% ------------------------------------------------------------------------------------------- for-loop [27] 100.0% [50] 1092118(68.3%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [69] 90.6% finalize-iter! [74] 4.4% gen-series! [75] 2.7% gen-rewrites! [77] 1.5% choose-best-alt! [79] 0.5% localize-error [80] 0.3% ------------------------------------------------------------------------------------------- one-iter [28] 100.0% [51] 661782(41.4%) 3286(0.2%) for-loop ...ie/develop/src/core/simplify.rkt:166:2 for-loop [70] 90.4% match-e [72] 8.6% reduce-to-single! [81] 0.4% update-leader! [99] 0.1% ------------------------------------------------------------------------------------------- pass [29] 100.0% [52] 411090(25.7%) 4698(0.3%) for-loop ...e/develop/src/core/simplify.rkt:230:29 argmin [71] 76.4% loop [73] 17.6% for-loop [76] 4.4% make-sequence [232] 0.3% filter [264] 0.1% ------------------------------------------------------------------------------------------- for-loop [53] 48.7% one-iter [28] 51.3% [53] 187374(11.7%) 43050(2.7%) for-loop ...e/develop/src/core/simplify.rkt:126:12 for-loop [53] 48.7% match-e [72] 38.2% ??? [113] 0.4% ------------------------------------------------------------------------------------------- get-final-combination [30] 100.0% [54] 58792(3.7%) 0(0.0%) split-table ...s/herbie/develop/src/glue.rkt:162:0 f66 [180] 100.0% ------------------------------------------------------------------------------------------- f66 [180] 24.0% append-map [55] 32.1% simplify-node [35] 43.9% [55] 12714(0.8%) 1048(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 parse-loop12 [167] 50.3% append-map [55] 32.1% f66 [180] 14.5% free-variables [17] 1.1% ------------------------------------------------------------------------------------------- for-loop [37] 100.0% [56] 7016(0.4%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:398:39 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- for-loop [36] 100.0% [57] 3268(0.2%) 324(0.0%) loop ...ket/collects/racket/private/map.rkt:112:23 flag-set? [78] 90.1% ------------------------------------------------------------------------------------------- setup-alt-simplified [40] 100.0% [58] 2682(0.2%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 table-ref [183] 100.0% ------------------------------------------------------------------------------------------- for-loop [32] 100.0% [59] 2296(0.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:288:19 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- for-loop [36] 100.0% [60] 1972(0.1%) 644(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [78] 67.3% ------------------------------------------------------------------------------------------- setfindf [38] 100.0% [61] 1038(0.1%) 1038(0.1%) for-loop ...es/herbie/develop/src/common.rkt:187:2 ------------------------------------------------------------------------------------------- simplify-node [35] 100.0% [62] 1004(0.1%) 324(0.0%) combine-aterms ...evelop/src/core/reduce.rkt:183:0 for-loop [82] 67.7% ------------------------------------------------------------------------------------------- errors-score [45] 47.5% pass [29] 52.5% [63] 690(0.0%) 690(0.0%) loop ...hare/racket/collects/racket/list.rkt:551:2 ------------------------------------------------------------------------------------------- get-final-combination [30] 100.0% [64] 662(0.0%) 0(0.0%) extract-alt ...es/herbie/develop/src/glue.rkt:55:0 loop [195] 100.0% ------------------------------------------------------------------------------------------- for-loop [49] 23.8% for-loop [24] 26.2% for-loop [83] 50.0% [65] 638(0.0%) 0(0.0%) pattern-match ...develop/src/core/matcher.rkt:48:0 for-loop [83] 50.0% ??? [133] 50.0% ------------------------------------------------------------------------------------------- for-loop [47] 100.0% [66] 632(0.0%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:58:0 for-loop [84] 100.0% ------------------------------------------------------------------------------------------- eval-const-expr [42] 100.0% [67] 330(0.0%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [85] 100.0% ------------------------------------------------------------------------------------------- eval-const-expr [42] 100.0% [68] 322(0.0%) 322(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1635:39 ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [69] 989474(61.9%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [86] 100.0% ------------------------------------------------------------------------------------------- for-loop [51] 100.0% [70] 597984(37.4%) 940(0.1%) for-loop ...e/develop/src/core/simplify.rkt:148:10 mk-enode! [97] 36.3% substitute-e [88] 28.7% merge-egraph-nodes! [89] 24.4% loop! [210] 9.4% list-member? [194] 1.0% ------------------------------------------------------------------------------------------- for-loop [52] 100.0% [71] 314128(19.6%) 670(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [87] 87.6% expression-cost [91] 12.2% ------------------------------------------------------------------------------------------- for-loop [51] 18.3% for-loop [98] 24.3% for-loop [53] 57.5% [72] 199966(12.5%) 68128(4.3%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [90] 42.2% for-loop [98] 12.1% ??? [133] 7.6% variable? [34] 3.3% loop [200] 3.2% list-cartesian-product [103] 1.4% custom-in-set [265] 0.8% curry* [107] 0.3% ------------------------------------------------------------------------------------------- for-loop [52] 100.0% [73] 72330(4.5%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [87] 90.1% expression-cost [91] 9.9% ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [74] 47966(3.0%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [133] 100.0% ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [75] 29940(1.9%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:129:0 for-loop [92] 100.0% ------------------------------------------------------------------------------------------- for-loop [52] 100.0% [76] 17960(1.1%) 17960(1.1%) for-loop ...e/develop/src/core/simplify.rkt:217:13 ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [77] 16442(1.0%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [93] 100.0% ------------------------------------------------------------------------------------------- ormap [60] 22.4% for-loop [36] 27.8% loop [57] 49.7% [78] 5920(0.4%) 3626(0.2%) flag-set? ...es/herbie/develop/src/config.rkt:34:0 ??? [246] 22.9% return/no-unsupplied [248] 15.9% ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [79] 5376(0.3%) 0(0.0%) choose-best-alt! ...develop/src/mainloop.rkt:115:0 ??? [133] 100.0% ------------------------------------------------------------------------------------------- run-iter! [50] 100.0% [80] 2920(0.2%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [184] 68.2% ??? [249] 31.8% ------------------------------------------------------------------------------------------- for-loop [51] 100.0% [81] 2904(0.2%) 1324(0.1%) reduce-to-single! ...lop/src/core/egraph.rkt:325:0 for-loop [94] 33.5% make-sequence [232] 20.9% ------------------------------------------------------------------------------------------- combine-aterms [62] 100.0% [82] 680(0.0%) 680(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:185:4 ------------------------------------------------------------------------------------------- pattern-match [65] 100.0% [83] 638(0.0%) 0(0.0%) for-loop ...rbie/develop/src/core/matcher.rkt:66:9 pattern-match [65] 100.0% ------------------------------------------------------------------------------------------- all-critical-subexpressions [66] 100.0% [84] 632(0.0%) 0(0.0%) for-loop ...rbie/develop/src/core/regimes.rkt:62:2 f66 [180] 100.0% ------------------------------------------------------------------------------------------- ??? [67] 100.0% [85] 330(0.0%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [95] 100.0% ------------------------------------------------------------------------------------------- simplify! [69] 100.0% [86] 989474(61.9%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [96] 100.0% ------------------------------------------------------------------------------------------- loop [73] 19.2% argmin [71] 80.8% [87] 340334(21.3%) 8616(0.5%) for-loop .../herbie/develop/src/programs.rkt:210:2 table-ref [183] 71.3% ...velop/src/common.rkt:47:2 [135] 23.2% ??? [134] 3.0% ------------------------------------------------------------------------------------------- substitute-e [88] 4.3% for-loop [70] 95.7% [88] 171462(10.7%) 5762(0.4%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [97] 91.5% substitute-e [88] 4.3% ??? [133] 1.5% variable? [34] 0.6% ------------------------------------------------------------------------------------------- for-loop [105] 4.8% merge-egraph-nodes! [89] 5.6% for-loop [70] 89.6% [89] 146206(9.1%) 5332(0.3%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 update-leader! [99] 50.5% for-loop [102] 13.7% loop! [210] 12.7% for-loop [105] 6.2% enode-merge! [106] 5.7% merge-egraph-nodes! [89] 5.6% make-sequence [232] 1.1% for-loop [36] 0.9% ------------------------------------------------------------------------------------------- match-e [72] 100.0% [90] 112334(7.0%) 36290(2.3%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [98] 53.0% list-cartesian-product [103] 11.3% loop [200] 3.5% curried [218] 0.9% curry* [107] 0.6% foldl [219] 0.6% filter [264] 0.6% ------------------------------------------------------------------------------------------- loop [73] 15.7% argmin [71] 84.3% [91] 45454(2.8%) 660(0.0%) expression-cost .../develop/src/programs.rkt:209:0 compile [100] 98.5% ------------------------------------------------------------------------------------------- gen-series! [75] 100.0% [92] 29940(1.9%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:135:7 taylor-alt [101] 100.0% ------------------------------------------------------------------------------------------- gen-rewrites! [77] 100.0% [93] 16442(1.0%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [104] 100.0% ------------------------------------------------------------------------------------------- reduce-to-single! [81] 100.0% [94] 974(0.1%) 974(0.1%) for-loop ...rbie/develop/src/core/egraph.rkt:326:8 ------------------------------------------------------------------------------------------- unpack245 [85] 100.0% [95] 330(0.0%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 arrow-higher-order:lnp [220] 100.0% ------------------------------------------------------------------------------------------- for-loop [86] 21.1% run [26] 29.7% [96] 1562896(97.7%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 table-ref [183] 40.2% profile-thunk16 [1] 29.7% run-improve50 [2] 26.9% loop [109] 3.2% ------------------------------------------------------------------------------------------- mk-enode-rec! [205] 1.3% substitute-e [88] 41.4% for-loop [70] 57.3% [97] 378750(23.7%) 28668(1.8%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [108] 90.0% hash-has-key? [139] 1.9% ------------------------------------------------------------------------------------------- match-e [72] 39.2% for-loop [90] 60.8% [98] 101386(6.3%) 9080(0.6%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [72] 87.3% ??? [113] 4.4% ------------------------------------------------------------------------------------------- for-loop [51] 0.8% merge-egraph-nodes! [89] 99.2% [99] 80292(5.0%) 8740(0.5%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [110] 81.5% update-en-expr [228] 2.9% make-sequence [232] 1.7% custom-set-union! [118] 1.3% hash-ref! [184] 0.8% ------------------------------------------------------------------------------------------- expression-cost [91] 100.0% [100] 44794(2.8%) 980(0.1%) compile ...s/herbie/develop/src/programs.rkt:186:0 hash-ref! [184] 97.8% ------------------------------------------------------------------------------------------- for-loop [92] 100.0% [101] 29940(1.9%) 0(0.0%) taylor-alt ...es/herbie/develop/src/glue.rkt:134:0 for-loop [111] 100.0% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [89] 100.0% [102] 20498(1.3%) 15808(1.0%) for-loop ...rbie/develop/src/core/egraph.rkt:233:6 update-en-expr [228] 22.9% ------------------------------------------------------------------------------------------- match-e [72] 13.3% list-cartesian-product [103] 28.0% for-loop [90] 58.7% [103] 17680(1.1%) 14002(0.9%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [103] 28.0% for-loop [115] 17.0% ------------------------------------------------------------------------------------------- for-loop [93] 100.0% [104] 16442(1.0%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [112] 100.0% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [89] 100.0% [105] 16288(1.0%) 0(0.0%) for-loop ...bie/develop/src/core/egraph.rkt:201:10 merge-egraph-nodes! [89] 85.0% loop! [210] 15.0% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [89] 100.0% [106] 8660(0.5%) 1012(0.1%) enode-merge! ...e/develop/src/core/enode.rkt:129:0 adopt-enode! [114] 57.2% custom-set-intersect! [116] 31.2% ------------------------------------------------------------------------------------------- match-e [72] 49.4% for-loop [90] 50.6% [107] 1356(0.1%) 0(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [117] 100.0% ------------------------------------------------------------------------------------------- mk-enode! [97] 100.0% [108] 340742(21.3%) 1634(0.1%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [119] 98.7% set [229] 0.6% ------------------------------------------------------------------------------------------- run-improve50 [2] 8.7% ??? [96] 91.3% [109] 110228(6.9%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:205:2 loop [121] 50.2% make-exacts* [128] 27.4% loop [130] 22.2% for-loop [126] 0.3% ------------------------------------------------------------------------------------------- update-leader! [99] 100.0% [110] 65452(4.1%) 3764(0.2%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [120] 94.2% ------------------------------------------------------------------------------------------- taylor-alt [101] 100.0% [111] 29940(1.9%) 0(0.0%) for-loop ...lies/herbie/develop/src/glue.rkt:139:6 ??? [181] 100.0% ------------------------------------------------------------------------------------------- ??? [104] 15.2% matcher [131] 84.8% [112] 16442(1.0%) 2682(0.2%) rewriter ...bie/develop/src/core/matcher.rkt:131:2 for-loop [122] 87.0% *rules* [10] 10.1% expression->type [185] 0.4% ------------------------------------------------------------------------------------------- for-loop [53] 22.0% for-loop [98] 78.0% [113] 5962(0.4%) 4920(0.3%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [123] 17.5% ------------------------------------------------------------------------------------------- enode-merge! [106] 100.0% [114] 4950(0.3%) 1682(0.1%) adopt-enode! ...e/develop/src/core/enode.rkt:105:0 custom-set-union [225] 66.0% ------------------------------------------------------------------------------------------- list-cartesian-product [103] 100.0% [115] 3678(0.2%) 3678(0.2%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------- enode-merge! [106] 100.0% [116] 2698(0.2%) 2364(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 for-loop [125] 12.4% ------------------------------------------------------------------------------------------- curry* [107] 100.0% [117] 1356(0.1%) 1356(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------------------- update-leader! [99] 100.0% [118] 1054(0.1%) 714(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [124] 32.3% ------------------------------------------------------------------------------------------- new-enode [108] 100.0% [119] 336440(21.0%) 2554(0.2%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [127] 99.0% parse-loop12 [167] 0.2% ------------------------------------------------------------------------------------------- for-loop [110] 100.0% [120] 61688(3.9%) 324(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [129] 99.5% ------------------------------------------------------------------------------------------- loop [109] 100.0% [121] 55308(3.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [128] 77.6% loop [130] 22.4% ------------------------------------------------------------------------------------------- rewriter [112] 100.0% [122] 16442(1.0%) 614(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:134:10 matcher [131] 99.3% ------------------------------------------------------------------------------------------- ??? [113] 100.0% [123] 1042(0.1%) 674(0.0%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ??? [133] 35.3% ------------------------------------------------------------------------------------------- custom-set-union! [118] 100.0% [124] 340(0.0%) 340(0.0%) for-loop ...cts/racket/private/set-types.rkt:253:4 ------------------------------------------------------------------------------------------- custom-set-intersect! [116] 100.0% [125] 334(0.0%) 334(0.0%) for-loop ...cts/racket/private/set-types.rkt:272:4 ------------------------------------------------------------------------------------------- loop [109] 100.0% [126] 316(0.0%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:222:26 for-loop [132] 100.0% ------------------------------------------------------------------------------------------- type-of-enode-expr [119] 100.0% [127] 333214(20.8%) 5620(0.4%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [134] 40.1% table-ref [183] 31.4% ??? [133] 13.9% ...velop/src/common.rkt:47:2 [135] 12.9% ------------------------------------------------------------------------------------------- loop [109] 41.3% loop [121] 58.7% [128] 73098(4.6%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 eval-prog [157] 62.4% loop [200] 37.6% ------------------------------------------------------------------------------------------- for-loop [120] 100.0% [129] 61364(3.8%) 362(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [136] 99.4% ------------------------------------------------------------------------------------------- loop [121] 33.7% loop [109] 66.3% [130] 36814(2.3%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [200] 100.0% ------------------------------------------------------------------------------------------- for-loop [137] 16.8% matcher [131] 33.1% for-loop [122] 50.1% [131] 16442(1.0%) 670(0.0%) matcher ...rbie/develop/src/core/matcher.rkt:167:2 rewriter [112] 49.3% matcher [131] 33.1% for-loop [137] 17.0% for-loop [24] 0.2% ------------------------------------------------------------------------------------------- for-loop [126] 100.0% [132] 316(0.0%) 316(0.0%) for-loop ...s/herbie/develop/src/points.rkt:223:28 ------------------------------------------------------------------------------------------- run-improve50 [2] 0.2% setfindf [38] 0.2% expression->type [185] 0.2% for-loop [123] 0.2% pattern-match [65] 0.4% f66 [180] 1.4% choose-best-alt! [79] 3.2% ??? [259] 3.2% substitute-e [88] 3.8% variable? [34] 12.0% match-e [72] 18.0% get-sigs [127] 28.3% finalize-iter! [74] 28.8% [133] 163332(10.2%) 44844(2.8%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [139] 40.1% for-loop [143] 28.4% ??? [145] 3.2% atab-add-altns [146] 0.6% ??? [259] 0.2% ------------------------------------------------------------------------------------------- ??? [181] 0.9% f66 [180] 2.5% for-loop [87] 6.8% get-sigs [127] 89.8% [134] 148790(9.3%) 13090(0.8%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [140] 47.8% for-loop [138] 36.0% get/build-late-neg-projection [159] 6.5% ??? [217] 0.7% ------------------------------------------------------------------------------------------- ??? [181] 2.0% f66 [180] 2.1% get-sigs [127] 33.8% for-loop [87] 62.1% [135] 126962(7.9%) 34386(2.1%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [142] 39.8% ??? [144] 32.8% ------------------------------------------------------------------------------------------- hash-update! [129] 100.0% [136] 61002(3.8%) 1002(0.1%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [141] 97.8% make-sequence [232] 0.6% ------------------------------------------------------------------------------------------- matcher [131] 100.0% [137] 15830(1.0%) 342(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:183:21 matcher [131] 98.9% ------------------------------------------------------------------------------------------- for-loop [201] 29.6% ??? [134] 70.4% [138] 76082(4.8%) 13168(0.8%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [202] 78.7% ??? [231] 4.0% ------------------------------------------------------------------------------------------- mk-enode! [97] 9.9% ??? [133] 90.1% [139] 73844(4.6%) 26108(1.6%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [189] 63.4% ------------------------------------------------------------------------------------------- ??? [134] 100.0% [140] 71164(4.4%) 3618(0.2%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [147] 94.9% ------------------------------------------------------------------------------------------- ??? [136] 100.0% [141] 59632(3.7%) 52744(3.3%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 update-en-expr [228] 11.6% ------------------------------------------------------------------------------------------- for-loop [216] 8.0% ??? [202] 11.8% ...velop/src/common.rkt:47:2 [135] 80.2% [142] 50566(3.2%) 9642(0.6%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [202] 69.3% ??? [259] 11.2% ??? [217] 9.0% ------------------------------------------------------------------------------------------- ??? [133] 100.0% [143] 47308(3.0%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [148] 100.0% ------------------------------------------------------------------------------------------- ...velop/src/common.rkt:47:2 [135] 100.0% [144] 41688(2.6%) 13122(0.8%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [246] 32.1% return/no-unsupplied [248] 20.5% assoc-ref [149] 15.9% ------------------------------------------------------------------------------------------- ??? [133] 100.0% [145] 5376(0.3%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [181] 100.0% ------------------------------------------------------------------------------------------- ??? [133] 100.0% [146] 968(0.1%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [148] 100.0% ------------------------------------------------------------------------------------------- ??? [140] 100.0% [147] 67546(4.2%) 4006(0.3%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [150] 94.1% ------------------------------------------------------------------------------------------- atab-add-altns [146] 2.0% for-loop [143] 98.0% [148] 48276(3.0%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [151] 93.0% override-at-pnts [152] 7.0% ------------------------------------------------------------------------------------------- ??? [144] 100.0% [149] 6646(0.4%) 6646(0.4%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------- ??? [147] 100.0% [150] 63540(4.0%) 1976(0.1%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [154] 96.9% ------------------------------------------------------------------------------------------- atab-add-altn [148] 100.0% [151] 44916(2.8%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [153] 98.5% for-loop [155] 1.5% ------------------------------------------------------------------------------------------- atab-add-altn [148] 100.0% [152] 3360(0.2%) 0(0.0%) override-at-pnts ...p/src/core/alt-table.rkt:145:0 errors [153] 100.0% ------------------------------------------------------------------------------------------- override-at-pnts [152] 3.8% option-on-expr [212] 5.9% composed [204] 6.8% loop [200] 33.3% best-and-tied-at-points [151] 50.2% [153] 88218(5.5%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:241:0 for-loop [156] 77.8% eval-prog [157] 22.2% ------------------------------------------------------------------------------------------- ??? [150] 100.0% [154] 61564(3.8%) 12798(0.8%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [158] 49.3% get/build-late-neg-projection [159] 29.9% ------------------------------------------------------------------------------------------- best-and-tied-at-points [151] 100.0% [155] 668(0.0%) 312(0.0%) for-loop .../develop/src/core/alt-table.rkt:124:16 ??? [164] 53.3% ------------------------------------------------------------------------------------------- errors [153] 100.0% [156] 68640(4.3%) 2088(0.1%) for-loop ...es/herbie/develop/src/points.rkt:244:4 ??? [160] 87.9% ??? [181] 4.2% ulp-difference [163] 3.9% ??? [164] 0.9% ------------------------------------------------------------------------------------------- option-on-expr [212] 0.5% sort-context-on-expr [230] 0.9% sindices->spoints [237] 1.0% errors [153] 29.3% make-exacts* [128] 68.2% [157] 66828(4.2%) 1688(0.1%) eval-prog ...herbie/develop/src/programs.rkt:150:0 hash-ref! [184] 67.2% f66 [180] 30.2% ------------------------------------------------------------------------------------------- for-loop [154] 100.0% [158] 30376(1.9%) 30376(1.9%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------------------- ??? [162] 12.2% ??? [134] 20.2% for-loop [154] 65.6% [159] 28042(1.8%) 4494(0.3%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [161] 69.5% ??? [162] 14.6% ------------------------------------------------------------------------------------------- ??? [267] 1.0% jloop [13] 3.9% loop [273] 8.1% for-loop [156] 42.4% loop [200] 44.7% [160] 142368(8.9%) 1990(0.1%) ??? ...tlies/herbie/develop/src/programs.rkt:156:4 ??? [165] 92.6% ??? [186] 3.7% ??? [181] 1.1% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [159] 100.0% [161] 22572(1.4%) 5632(0.4%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [166] 75.0% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [159] 100.0% [162] 7732(0.5%) 656(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [159] 91.5% ------------------------------------------------------------------------------------------- loop [20] 11.4% for-loop [156] 88.6% [163] 3050(0.2%) 2064(0.1%) ulp-difference ...erbie/develop/src/float.rkt:19:0 ??? [246] 32.3% ------------------------------------------------------------------------------------------- for-loop [155] 35.9% for-loop [156] 64.1% [164] 992(0.1%) 992(0.1%) ??? ...ket/collects/racket/private/for.rkt:1151:14 ------------------------------------------------------------------------------------------- ??? [160] 100.0% [165] 131894(8.2%) 78500(4.9%) ??? ...acket/collects/racket/private/kw.rkt:444:14 bf* [215] 15.2% ??? [226] 13.1% ??? [168] 8.3% ??? [170] 1.5% parse-loop12 [167] 1.4% ??? [231] 0.5% ------------------------------------------------------------------------------------------- contract-struct-name [169] 13.5% ??? [161] 86.5% [166] 16940(1.1%) 9390(0.6%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [169] 54.3% ------------------------------------------------------------------------------------------- loop [200] 1.1% type-of-enode-expr [119] 3.2% simplify [214] 4.0% map [8] 4.1% ??? [165] 8.9% hash-ref! [184] 9.5% for-loop [41] 11.7% parse-loop12 [167] 21.3% append-map [55] 36.1% [167] 20890(1.3%) 4814(0.3%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 make-multiplication-node [175] 23.9% parse-loop12 [167] 21.3% for-loop [172] 10.1% loop [200] 9.9% for-loop [174] 5.2% f66 [180] 4.7% for-loop [173] 4.3% ??? [171] 1.6% loop [20] 0.7% ------------------------------------------------------------------------------------------- ??? [165] 100.0% [168] 10966(0.7%) 10966(0.7%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------- build-compound-type-name [166] 100.0% [169] 10830(0.7%) 7550(0.5%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [166] 36.3% ------------------------------------------------------------------------------------------- ??? [165] 100.0% [170] 1994(0.1%) 954(0.1%) ??? ...herbie/develop/src/syntax/syntax.rkt:156:17 ??? [246] 52.2% ------------------------------------------------------------------------------------------- parse-loop12 [167] 14.3% loop [200] 85.7% [171] 2322(0.1%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [184] 84.4% curried [218] 14.3% map [8] 1.3% ------------------------------------------------------------------------------------------- parse-loop12 [167] 100.0% [172] 2106(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:490:59 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- parse-loop12 [167] 100.0% [173] 1934(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:99:13 make-multiplication-node [175] 68.7% f66 [180] 31.3% ------------------------------------------------------------------------------------------- parse-loop12 [167] 100.0% [174] 1300(0.1%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:89:11 make-multiplication-node [175] 100.0% ------------------------------------------------------------------------------------------- simplify [214] 2.5% for-loop [174] 8.8% for-loop [173] 9.0% map [8] 31.3% parse-loop12 [167] 48.4% [175] 14706(0.9%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [176] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-node [175] 100.0% [176] 14706(0.9%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [177] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-subnode [176] 100.0% [177] 14706(0.9%) 0(0.0%) for-loop ...rbie/develop/src/core/reduce.rkt:242:3 mterm->expr [179] 77.4% make-multiplication-subsubsubnode [178] 22.6% ------------------------------------------------------------------------------------------- for-loop [177] 100.0% [178] 3320(0.2%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [179] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-subsubsubnode [178] 22.6% for-loop [177] 77.4% [179] 14706(0.9%) 0(0.0%) mterm->expr ...e/develop/src/core/reduce.rkt:270:0 f66 [180] 64.0% expression->type [185] 31.4% free-variables [17] 2.4% ??? [246] 2.2% ------------------------------------------------------------------------------------------- for-loop [256] 0.1% for-loop [84] 0.1% hash-ref! [184] 0.1% composed [204] 0.2% for-loop [173] 0.2% approximate9 [5] 0.5% simplify-node [35] 0.6% parse-loop12 [167] 1.1% eval-const-expr [42] 1.3% append-map [55] 1.9% mterm->expr [179] 2.2% eval-prog [157] 2.4% for-loop [193] 3.9% simplify [214] 5.3% map [8] 8.7% f66 [180] 20.3% split-table [54] 51.3% [180] 97940(6.1%) 3934(0.2%) f66 ...t/collects/racket/match/compiler.rkt:507:40 loop [200] 46.5% f66 [180] 20.3% map [8] 12.9% option-on-expr [212] 4.7% append-map [55] 2.9% expression->type [185] 2.3% ??? [181] 2.3% table-ref [183] 2.2% ??? [134] 0.8% ...velop/src/common.rkt:47:2 [135] 0.8% ??? [133] 0.5% taylor [16] 0.2% composed [204] 0.2% loop [182] 0.2% combine-mterms [22] 0.2% taylor-quotient [19] 0.1% taylor-invert [21] 0.1% exprs-to-branch-on [23] 0.1% ------------------------------------------------------------------------------------------- loop [20] 0.5% map [8] 0.5% get-final-combination [30] 0.6% loop [273] 2.2% loop [31] 2.2% loop [200] 2.3% ??? [160] 2.3% for-loop [156] 4.7% ??? [145] 8.1% ??? [7] 12.2% for-loop [111] 16.9% table-ref [183] 17.4% f66 [180] 30.1% [181] 62190(3.9%) 1342(0.1%) ??? ...tract/private/arrow-higher-order.rkt:342:33 table-ref [183] 39.2% approximate9 [5] 16.9% hash-ref! [184] 14.4% ??? [259] 8.9% best-alt [187] 8.1% ...velop/src/common.rkt:47:2 [135] 4.2% ??? [186] 3.6% ??? [134] 2.1% arrow-higher-order:lnp [220] 0.5% ------------------------------------------------------------------------------------------- f66 [180] 100.0% [182] 1312(0.1%) 0(0.0%) loop ...es/herbie/develop/src/core/reduce.rkt:18:2 expression->type [185] 100.0% ------------------------------------------------------------------------------------------- f66 [180] 0.1% simplify-alt [58] 0.1% ??? [181] 1.3% get-sigs [127] 2.6% for-loop [87] 6.1% table-ref [183] 9.7% for-loop [188] 36.2% ??? [96] 43.9% [183] 1335782(83.5%) 104984(6.6%) table-ref .../racket/private/norm-define.rkt:53:83 for-loop [188] 36.2% iterate-egraph!13 [3] 31.4% loop [4] 12.4% table-ref [183] 9.7% ??? [189] 5.9% return/no-unsupplied [248] 0.4% ??? [181] 0.3% ??? [246] 0.2% mk-egraph [197] 0.2% ??? [202] 0.1% list-member? [194] 0.0% dict? [271] 0.0% ------------------------------------------------------------------------------------------- for-loop [44] 0.0% simplify* [235] 0.1% for-loop [46] 0.1% for-loop [172] 0.2% first-nonzero-exp [48] 0.2% ??? [14] 0.2% for-loop [39] 0.2% ??? [59] 0.2% localize-error [80] 0.2% update-leader! [99] 0.6% for-loop [56] 0.6% ??? [171] 1.4% loop [31] 3.6% ??? [192] 4.0% ??? [181] 4.2% for-loop [33] 4.3% for-loop [32] 5.2% eval-prog [157] 10.0% compile [100] 15.6% ??? [190] 21.3% loop [200] 27.8% [184] 119016(7.4%) 44302(2.8%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [190] 50.5% bigfloat-hash [191] 9.3% ??? [6] 5.5% ??? [9] 4.3% simplify [214] 4.2% ??? [192] 4.0% ??? [7] 3.6% parse-loop12 [167] 1.7% ??? [12] 0.6% ??? [14] 0.4% f66 [180] 0.2% ??? [15] 0.2% ??? [18] 0.1% ------------------------------------------------------------------------------------------- rewriter [112] 0.9% loop [182] 2.6% mterm->expr [179] 11.1% f66 [180] 26.0% for-loop [193] 59.4% [185] 13706(0.9%) 0(0.0%) expression->type ...evelop/src/type-check.rkt:45:0 for-loop [193] 99.1% ??? [133] 0.9% ------------------------------------------------------------------------------------------- ??? [181] 30.1% ??? [160] 69.9% [186] 7446(0.5%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [196] 69.9% integer->bigfloat [198] 30.1% ------------------------------------------------------------------------------------------- ??? [181] 100.0% [187] 5376(0.3%) 0(0.0%) best-alt ...tlies/herbie/develop/src/glue.rkt:71:0 loop [195] 86.6% argmins [199] 13.4% ------------------------------------------------------------------------------------------- table-ref [183] 100.0% [188] 1062624(66.4%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:66:12 table-ref [183] 100.0% ------------------------------------------------------------------------------------------- hash-has-key? [139] 16.9% table-ref [183] 83.1% [189] 276484(17.3%) 109862(6.9%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [201] 43.6% ??? [211] 15.1% ??? [202] 0.7% arrow-higher-order:lnp [220] 0.6% successfully-got-the-right-kind-of-function [209] 0.2% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [190] 78644(4.9%) 4232(0.3%) ??? ...tlies/herbie/develop/src/programs.rkt:194:5 loop [200] 53.8% hash-ref! [184] 44.3% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [191] 41570(2.6%) 320(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [203] 87.6% sig+exp->bigfloat [206] 11.6% ------------------------------------------------------------------------------------------- hash-ref! [184] 100.0% [192] 26206(1.6%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:44:15 hash-ref! [184] 100.0% ------------------------------------------------------------------------------------------- expression->type [185] 100.0% [193] 13706(0.9%) 0(0.0%) for-loop ...herbie/develop/src/type-check.rkt:52:5 expression->type [185] 60.3% f66 [180] 39.1% ??? [246] 0.7% ------------------------------------------------------------------------------------------- table-ref [183] 5.6% for-loop [70] 94.4% [194] 6204(0.4%) 346(0.0%) list-member? ...llects/racket/private/set.rkt:24:0 loop [207] 67.7% member [208] 26.7% ------------------------------------------------------------------------------------------- extract-alt [64] 12.5% best-alt [187] 87.5% [195] 5316(0.3%) 0(0.0%) loop ...htlies/herbie/develop/src/common.rkt:153:2 composed [204] 100.0% ------------------------------------------------------------------------------------------- ??? [186] 100.0% [196] 5204(0.3%) 4160(0.3%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [263] 20.1% ------------------------------------------------------------------------------------------- table-ref [183] 100.0% [197] 4850(0.3%) 0(0.0%) mk-egraph ...bie/develop/src/core/egraph.rkt:131:0 mk-enode-rec! [205] 100.0% ------------------------------------------------------------------------------------------- ??? [186] 100.0% [198] 2242(0.1%) 2242(0.1%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ------------------------------------------------------------------------------------------- best-alt [187] 100.0% [199] 722(0.0%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:152:0 composed [204] 100.0% ------------------------------------------------------------------------------------------- errors-score [45] 0.0% taylor [16] 0.3% loop [130] 0.4% make-exacts* [128] 0.4% parse-loop12 [167] 0.9% for-loop [90] 1.2% match-e [72] 2.1% option-on-expr [212] 3.7% loop! [210] 6.2% f66 [180] 11.0% ??? [190] 17.4% loop [200] 55.9% [200] 239478(15.0%) 11732(0.7%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [200] 55.9% hash-ref! [184] 17.4% option-on-expr [212] 11.0% loop! [210] 5.8% errors [153] 3.7% curried [218] 0.9% ??? [160] 0.8% ??? [171] 0.5% parse-loop12 [167] 0.4% foldl [219] 0.3% for-loop [11] 0.3% simplify [214] 0.3% bf* [215] 0.0% ??? [181] 0.0% ??? [226] 0.0% set-precompute! [223] 0.0% ------------------------------------------------------------------------------------------- ??? [189] 100.0% [201] 120668(7.5%) 60632(3.8%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [211] 28.2% for-loop [138] 18.7% ??? [217] 1.8% ??? [259] 0.9% arrow-higher-order:lnp [220] 0.3% ------------------------------------------------------------------------------------------- ??? [189] 1.8% table-ref [183] 4.1% ??? [142] 40.1% for-loop [138] 53.4% [202] 112280(7.0%) 24244(1.5%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [213] 51.1% for-loop [216] 14.9% ??? [142] 10.6% ??? [231] 1.8% ------------------------------------------------------------------------------------------- bigfloat-hash [191] 100.0% [203] 36408(2.3%) 35710(2.2%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [221] 1.9% ------------------------------------------------------------------------------------------- argmins [199] 10.2% f66 [180] 15.0% loop [195] 74.9% [204] 7102(0.4%) 336(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [153] 85.0% f66 [180] 10.3% ------------------------------------------------------------------------------------------- mk-egraph [197] 30.4% mk-enode-rec! [205] 69.6% [205] 4850(0.3%) 0(0.0%) mk-enode-rec! ...develop/src/core/egraph.rkt:122:0 mk-enode-rec! [205] 69.6% mk-enode! [97] 30.4% ------------------------------------------------------------------------------------------- bigfloat-hash [191] 100.0% [206] 4842(0.3%) 4144(0.3%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [224] 7.7% ??? [263] 6.7% ------------------------------------------------------------------------------------------- list-member? [194] 100.0% [207] 4200(0.3%) 4200(0.3%) loop (unknown source) ------------------------------------------------------------------------------------------- list-member? [194] 100.0% [208] 1658(0.1%) 1658(0.1%) member (unknown source) ------------------------------------------------------------------------------------------- ??? [189] 100.0% [209] 644(0.0%) 0(0.0%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [222] 100.0% ------------------------------------------------------------------------------------------- for-loop [105] 2.1% merge-egraph-nodes! [89] 21.2% loop [200] 27.4% for-loop [70] 49.3% [210] 85220(5.3%) 16316(1.0%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 custom-set-union [225] 39.7% loop [200] 32.2% set [229] 10.7% update-en-expr [228] 6.0% ------------------------------------------------------------------------------------------- for-loop [201] 44.9% ??? [189] 55.1% [211] 75598(4.7%) 37966(2.4%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [227] 49.8% ------------------------------------------------------------------------------------------- f66 [180] 10.3% loop [200] 89.7% [212] 58160(3.6%) 0(0.0%) option-on-expr ...evelop/src/core/regimes.rkt:90:0 loop [200] 51.6% sort-context-on-expr [230] 33.4% errors [153] 9.0% pick-errors [236] 2.4% sindices->spoints [237] 2.4% err-lsts->split-indices [242] 0.6% eval-prog [157] 0.6% ------------------------------------------------------------------------------------------- ??? [202] 100.0% [213] 57344(3.6%) 7486(0.5%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [259] 80.7% ??? [231] 6.2% ------------------------------------------------------------------------------------------- for-loop [44] 1.2% taylor-invert [21] 2.4% loop [200] 2.4% hash-ref! [184] 94.0% [214] 27274(1.7%) 348(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:16:0 f66 [180] 75.0% parse-loop12 [167] 8.5% simplify-node [35] 6.2% debug-print [238] 2.6% simplify* [235] 2.5% debug7 [240] 2.5% make-multiplication-node [175] 1.3% ------------------------------------------------------------------------------------------- loop [200] 3.2% ??? [165] 96.8% [215] 20664(1.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [226] 100.0% ------------------------------------------------------------------------------------------- ??? [202] 100.0% [216] 16738(1.0%) 8674(0.5%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [142] 48.2% ------------------------------------------------------------------------------------------- ??? [134] 12.7% for-loop [201] 28.1% ??? [142] 59.1% [217] 7704(0.5%) 3506(0.2%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [233] 54.5% ------------------------------------------------------------------------------------------- ??? [171] 6.7% for-loop [90] 33.2% loop [200] 60.1% [218] 4958(0.3%) 4958(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------------------------- for-loop [90] 19.2% loop [200] 80.8% [219] 3308(0.2%) 650(0.0%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [234] 80.4% ------------------------------------------------------------------------------------------- ??? [181] 11.9% maybe-cons-kwd [95] 12.6% for-loop [201] 12.8% ??? [189] 62.7% [220] 2622(0.2%) 1300(0.1%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [239] 50.4% ------------------------------------------------------------------------------------------- bfcanonicalize [203] 100.0% [221] 698(0.0%) 0(0.0%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 size+limbs->integer [243] 50.4% mpz->integer [244] 49.6% ------------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [209]100.0% [222] 644(0.0%) 0(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [241] 100.0% ------------------------------------------------------------------------------------------- loop [200] 100.0% [223] 628(0.0%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:193:0 make-sequence [232] 100.0% ------------------------------------------------------------------------------------------- sig+exp->bigfloat [206] 100.0% [224] 372(0.0%) 372(0.0%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ------------------------------------------------------------------------------------------- adopt-enode! [114] 8.2% loop! [210] 91.8% [225] 39928(2.5%) 13246(0.8%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [247] 57.0% for-loop [250] 9.8% ------------------------------------------------------------------------------------------- loop [200] 0.8% ??? [165] 45.1% bf* [215] 54.0% [226] 38244(2.4%) 1736(0.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [245] 95.5% ------------------------------------------------------------------------------------------- ??? [211] 100.0% [227] 37632(2.4%) 37632(2.4%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------- update-leader! [99] 9.6% for-loop [102] 19.5% for-loop [141] 28.7% loop! [210] 42.3% [228] 24032(1.5%) 24032(1.5%) update-en-expr ...evelop/src/core/egraph.rkt:212:0 ------------------------------------------------------------------------------------------- new-enode [108] 10.1% loop! [210] 89.9% [229] 20028(1.3%) 20028(1.3%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------- option-on-expr [212] 100.0% [230] 19424(1.2%) 0(0.0%) sort-context-on-expr ...velop/src/points.rkt:115:0 ??? [249] 96.8% eval-prog [157] 3.2% ------------------------------------------------------------------------------------------- ??? [165] 7.1% ??? [202] 22.0% for-loop [138] 32.5% ??? [213] 38.4% [231] 9264(0.6%) 5346(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [251] 42.3% ------------------------------------------------------------------------------------------- ??? [136] 6.2% reduce-to-single! [81] 10.3% set-precompute! [223] 10.6% for-loop [52] 22.2% update-leader! [99] 23.4% merge-egraph-nodes! [89] 27.3% [232] 5908(0.4%) 3980(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [252] 32.6% ------------------------------------------------------------------------------------------- ??? [217] 100.0% [233] 4198(0.3%) 2900(0.2%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [254] 30.9% ------------------------------------------------------------------------------------------- foldl [219] 100.0% [234] 2658(0.2%) 2658(0.2%) merge2 .../herbie/develop/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------------------- simplify [214] 41.8% map [8] 58.2% [235] 1660(0.1%) 300(0.0%) simplify* ...rbie/develop/src/core/reduce.rkt:31:0 hash-ref! [184] 41.7% return/no-unsupplied [248] 20.1% ??? [258] 20.1% ------------------------------------------------------------------------------------------- option-on-expr [212] 100.0% [236] 1422(0.1%) 0(0.0%) pick-errors .../develop/src/core/regimes.rkt:197:0 for-loop [253] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [212] 100.0% [237] 1374(0.1%) 0(0.0%) sindices->spoints ...op/src/core/regimes.rkt:129:0 eval-prog [157] 50.5% for-loop [256] 49.5% ------------------------------------------------------------------------------------------- taylor [16] 23.7% iterate-egraph!13 [3] 23.8% simplify [214] 52.5% [238] 1368(0.1%) 686(0.0%) debug-print .../herbie/develop/src/debug.rkt:107:0 for-loop [255] 49.9% ------------------------------------------------------------------------------------------- arrow-higher-order:lnp [220] 100.0% [239] 1322(0.1%) 1322(0.1%) ??? ...et/contract/private/arity-checking.rkt:19:2 ------------------------------------------------------------------------------------------- taylor [16] 34.9% simplify [214] 65.1% [240] 1050(0.1%) 724(0.0%) debug7 ...tlies/herbie/develop/src/debug.rkt:102:0 ??? [246] 31.0% ------------------------------------------------------------------------------------------- arity-checking-wrapper [222] 100.0% [241] 644(0.0%) 644(0.0%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ------------------------------------------------------------------------------------------- option-on-expr [212] 100.0% [242] 358(0.0%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:235:0 add-splitpoint [257] 100.0% ------------------------------------------------------------------------------------------- bigfloat->sig+exp [221] 100.0% [243] 352(0.0%) 352(0.0%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 ------------------------------------------------------------------------------------------- bigfloat->sig+exp [221] 100.0% [244] 346(0.0%) 346(0.0%) mpz->integer ...ath/private/bigfloat/gmp.rkt:115:0 ------------------------------------------------------------------------------------------- ??? [226] 100.0% [245] 36508(2.3%) 26366(1.6%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [263] 27.8% ------------------------------------------------------------------------------------------- mterm->expr [179] 1.3% debug7 [240] 1.3% for-loop [193] 1.5% ulp-difference [163] 4.0% ??? [170] 4.2% flag-set? [78] 5.5% table-ref [183] 28.0% ??? [144] 54.2% [246] 24686(1.5%) 4858(0.3%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [260] 70.0% ??? [259] 10.3% ------------------------------------------------------------------------------------------- custom-set-union [225] 100.0% [247] 22754(1.4%) 7368(0.5%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [262] 67.6% ------------------------------------------------------------------------------------------- simplify* [235] 1.6% flag-set? [78] 4.6% ??? [144] 41.5% table-ref [183] 52.4% [248] 20612(1.3%) 16098(1.0%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [264] 21.9% ------------------------------------------------------------------------------------------- localize-error [80] 4.7% sort-context-on-expr [230] 95.3% [249] 19726(1.2%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [261] 84.5% loop [273] 15.5% ------------------------------------------------------------------------------------------- custom-set-union [225] 100.0% [250] 3928(0.2%) 3928(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------- ??? [231] 100.0% [251] 3918(0.2%) 1614(0.1%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [266] 58.8% ------------------------------------------------------------------------------------------- make-sequence [232] 100.0% [252] 1928(0.1%) 948(0.1%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [265] 50.8% ------------------------------------------------------------------------------------------- pick-errors [236] 100.0% [253] 1422(0.1%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:199:2 ??? [267] 100.0% ------------------------------------------------------------------------------------------- check-hash/c [233] 100.0% [254] 1298(0.1%) 1298(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 ------------------------------------------------------------------------------------------- debug-print [238] 100.0% [255] 682(0.0%) 682(0.0%) for-loop ...ies/herbie/develop/src/debug.rkt:113:2 ------------------------------------------------------------------------------------------- sindices->spoints [237] 100.0% [256] 680(0.0%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:130:2 f66 [180] 100.0% ------------------------------------------------------------------------------------------- err-lsts->split-indices [242] 100.0% [257] 358(0.0%) 0(0.0%) add-splitpoint ...velop/src/core/regimes.rkt:252:2 for-loop [268] 100.0% ------------------------------------------------------------------------------------------- simplify* [235] 100.0% [258] 334(0.0%) 0(0.0%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [260] 100.0% ------------------------------------------------------------------------------------------- ??? [133] 0.5% for-loop [201] 1.5% ??? [246] 3.7% ??? [181] 8.2% ??? [142] 16.3% ??? [213] 66.9% [259] 69226(4.3%) 53068(3.3%) ??? ...ects/racket/contract/private/guts.rkt:644:8 contract? [270] 11.9% ??? [133] 9.1% dict? [271] 2.3% ------------------------------------------------------------------------------------------- ??? [258] 1.9% ??? [246] 98.1% [260] 17616(1.1%) 17304(1.1%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ------------------------------------------------------------------------------------------- ??? [249] 100.0% [261] 16666(1.0%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [269] 80.3% loop [273] 17.9% jloop [13] 1.8% ------------------------------------------------------------------------------------------- for-loop [247] 100.0% [262] 15386(1.0%) 15386(1.0%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------- sig+exp->bigfloat [206] 2.8% real->bigfloat [196] 9.1% bfmul [245] 88.1% [263] 11512(0.7%) 11512(0.7%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------------------- for-loop [52] 5.4% one-iter [28] 5.9% for-loop [90] 10.7% return/no-unsupplied [248] 78.0% [264] 5786(0.4%) 5786(0.4%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------- ??? [252] 27.7% match-e [72] 72.3% [265] 3542(0.2%) 3542(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------------------- ??? [251] 100.0% [266] 2304(0.1%) 2304(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------------------- for-loop [253] 100.0% [267] 1422(0.1%) 0(0.0%) ??? ...s/herbie/develop/src/core/regimes.rkt:190:2 ??? [160] 100.0% ------------------------------------------------------------------------------------------- add-splitpoint [257] 100.0% [268] 358(0.0%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:254:4 for-loop [272] 100.0% ------------------------------------------------------------------------------------------- generic-sort/key [261] 47.1% copying-mergesort [269] 52.9% [269] 13380(0.8%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [269] 52.9% loop [273] 33.2% jloop [13] 13.9% ------------------------------------------------------------------------------------------- ??? [259] 100.0% [270] 8270(0.5%) 8270(0.5%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------------------- table-ref [183] 29.9% ??? [259] 70.1% [271] 2222(0.1%) 2222(0.1%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------------------- for-loop [268] 100.0% [272] 358(0.0%) 358(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:258:8 ------------------------------------------------------------------------------------------- generic-sort/key [261] 22.5% ??? [249] 23.0% copying-mergesort [269] 54.5% [273] 13280(0.8%) 338(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [160] 87.0% ??? [181] 10.4% -------------------------------------------------------------------------------------------