Profiling results ----------------- Total cpu time observed: 74586ms (out of 75016ms) Number of samples taken: 262 (once every 285ms) (Hiding functions with self<1.0% and local<2.0%: 5 of 186 hidden) =========================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================== ??? [10] 100.0% [1] 74586(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [6] 100.0% --------------------------------------------------------------------------- matcher [73] 100.0% [2] 3356(4.5%) 0(0.0%) ??? .../herbie/develop/src/core/matcher.rkt:175:11 for-loop [7] 100.0% --------------------------------------------------------------------------- substitute-e [93] 8.4% match-e [85] 91.6% [3] 2460(3.3%) 440(0.6%) variable? .../develop/src/syntax/syntax.rkt:1159:0 ??? [35] 82.1% --------------------------------------------------------------------------- ??? [102] 100.0% [4] 1170(1.6%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [8] 53.2% debug-print [9] 23.8% simplify [94] 23.1% --------------------------------------------------------------------------- for-loop [62] 100.0% [5] 1000(1.3%) 0(0.0%) type-of .../herbie/develop/src/type-check.rkt:34:0 ??? [35] 100.0% --------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [6] 74586(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [10] 100.0% --------------------------------------------------------------------------- ??? [2] 100.0% [7] 3356(4.5%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:179:21 matcher [73] 100.0% --------------------------------------------------------------------------- approximate9 [4] 100.0% [8] 622(0.8%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:87:4 hash-ref! [87] 55.9% ??? [102] 44.1% --------------------------------------------------------------------------- approximate9 [4] 100.0% [9] 278(0.4%) 0(0.0%) debug-print .../herbie/develop/src/debug.rkt:110:0 for-loop [11] 100.0% --------------------------------------------------------------------------- for-loop [84] 0.1% for-loop [162] 1.4% run [6] 49.3% [10] 74586(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.3% run-improve40 [12] 44.1% prepare-points-intervals [13] 2.7% oracle-error [14] 1.3% errors [157] 0.7% ??? [102] 0.6% ??? [82] 0.6% get-final-combination [15] 0.4% eval-errors [16] 0.2% ulp-difference [147] 0.1% eval-const-expr [125] 0.1% --------------------------------------------------------------------------- debug-print [9] 100.0% [11] 278(0.4%) 278(0.4%) for-loop ...ies/herbie/develop/src/debug.rkt:116:2 --------------------------------------------------------------------------- ??? [10] 100.0% [12] 66344(88.9%) 0(0.0%) run-improve40 ...ie/develop/src/mainloop.rkt:336:0 for-loop [17] 100.0% --------------------------------------------------------------------------- ??? [10] 100.0% [13] 3980(5.3%) 0(0.0%) prepare-points-intervals ...p/src/points.rkt:133:0 loop [18] 100.0% --------------------------------------------------------------------------- ??? [10] 100.0% [14] 1938(2.6%) 0(0.0%) oracle-error ...erbie/develop/src/points.rkt:212:0 for-loop [19] 100.0% --------------------------------------------------------------------------- ??? [10] 100.0% [15] 538(0.7%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:357:0 infer-splitpoints [20] 100.0% --------------------------------------------------------------------------- ??? [10] 100.0% [16] 320(0.4%) 0(0.0%) eval-errors ...herbie/develop/src/points.rkt:203:0 for-loop [21] 100.0% --------------------------------------------------------------------------- run-improve40 [12] 100.0% [17] 66344(88.9%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:351:4 run-iter! [22] 100.0% --------------------------------------------------------------------------- prepare-points-intervals [13] 100.0% [18] 3980(5.3%) 286(0.4%) loop ...htlies/herbie/develop/src/points.rkt:145:4 loop [23] 60.1% ??? [24] 32.8% --------------------------------------------------------------------------- oracle-error [14] 100.0% [19] 1938(2.6%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:213:2 loop [115] 65.9% map [66] 34.1% --------------------------------------------------------------------------- get-final-combination [15] 100.0% [20] 538(0.7%) 0(0.0%) infer-splitpoints ...lop/src/core/regimes.rkt:34:0 for-loop [25] 100.0% --------------------------------------------------------------------------- eval-errors [16] 100.0% [21] 320(0.4%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:205:2 ??? [26] 100.0% --------------------------------------------------------------------------- for-loop [17] 100.0% [22] 66344(88.9%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:317:0 simplify! [27] 88.3% gen-rewrites! [28] 5.1% finalize-iter! [29] 4.0% gen-series! [30] 1.8% localize! [32] 0.5% choose-best-alt! [33] 0.4% --------------------------------------------------------------------------- loop [18] 100.0% [23] 2390(3.2%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:104:2 ??? [35] 57.1% ??? [82] 21.7% ??? [102] 21.3% --------------------------------------------------------------------------- loop [18] 100.0% [24] 1304(1.7%) 274(0.4%) ??? ...ghtlies/herbie/develop/src/points.rkt:129:2 ??? [102] 79.0% --------------------------------------------------------------------------- infer-splitpoints [20] 100.0% [25] 538(0.7%) 0(0.0%) for-loop ...rbie/develop/src/core/regimes.rkt:46:6 option-on-expr [31] 100.0% --------------------------------------------------------------------------- for-loop [21] 100.0% [26] 320(0.4%) 320(0.4%) ??? ...7.0/collects/racket/private/for.rkt:1208:14 --------------------------------------------------------------------------- run-iter! [22] 100.0% [27] 58602(78.6%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:213:0 ??? [34] 98.9% *simplify-rules* [38] 0.6% for-loop [40] 0.5% --------------------------------------------------------------------------- run-iter! [22] 100.0% [28] 3356(4.5%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:172:0 for-loop [36] 100.0% --------------------------------------------------------------------------- run-iter! [22] 100.0% [29] 2660(3.6%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:268:0 ??? [35] 100.0% --------------------------------------------------------------------------- run-iter! [22] 100.0% [30] 1170(1.6%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:149:0 for-loop [37] 100.0% --------------------------------------------------------------------------- for-loop [25] 100.0% [31] 538(0.7%) 0(0.0%) option-on-expr ...velop/src/core/regimes.rkt:150:0 sort-context-on-expr [41] 52.0% for-loop [42] 48.0% --------------------------------------------------------------------------- run-iter! [22] 100.0% [32] 308(0.4%) 0(0.0%) localize! ...herbie/develop/src/mainloop.rkt:116:0 localize-error [39] 100.0% --------------------------------------------------------------------------- run-iter! [22] 100.0% [33] 248(0.3%) 0(0.0%) choose-best-alt! ...develop/src/mainloop.rkt:107:0 ??? [35] 100.0% --------------------------------------------------------------------------- simplify! [27] 100.0% [34] 57984(77.7%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:26:0 for-loop [43] 51.5% one-iter [52] 38.2% loop [44] 10.4% --------------------------------------------------------------------------- choose-best-alt! [33] 2.6% type-of [5] 10.4% loop [23] 14.2% variable? [3] 21.0% match-e [85] 24.1% finalize-iter! [29] 27.7% [35] 9608(12.9%) 6700(9.0%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [46] 25.0% atab-min-errors [50] 2.7% ??? [51] 2.6% --------------------------------------------------------------------------- gen-rewrites! [28] 100.0% [36] 3356(4.5%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:180:11 rewrite-expression-head20 [45] 100.0% --------------------------------------------------------------------------- gen-series! [30] 100.0% [37] 1170(1.6%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:156:7 taylor-alt [47] 100.0% --------------------------------------------------------------------------- simplify! [27] 100.0% [38] 324(0.4%) 0(0.0%) *simplify-rules* ...lop/src/syntax/rules.rkt:788:0 for-loop [104] 100.0% --------------------------------------------------------------------------- localize! [32] 100.0% [39] 308(0.4%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:52:0 hash-ref! [87] 100.0% --------------------------------------------------------------------------- simplify! [27] 100.0% [40] 294(0.4%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:252:6 for-loop [48] 100.0% --------------------------------------------------------------------------- option-on-expr [31] 100.0% [41] 280(0.4%) 0(0.0%) sort-context-on-expr ...src/core/regimes.rkt:145:0 ??? [49] 100.0% --------------------------------------------------------------------------- option-on-expr [31] 100.0% [42] 258(0.3%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:158:4 errors [157] 100.0% --------------------------------------------------------------------------- ??? [34] 100.0% [43] 29836(40.0%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:33:2 one-iter [52] 100.0% --------------------------------------------------------------------------- ??? [34] 100.0% [44] 6026(8.1%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:143:2 for-loop [53] 100.0% --------------------------------------------------------------------------- for-loop [36] 100.0% [45] 3356(4.5%) 0(0.0%) rewrite-expression-head20 ...ore/matcher.rkt:126:0 rewriter [54] 100.0% --------------------------------------------------------------------------- ??? [35] 100.0% [46] 2398(3.2%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:56:2 atab-add-altn [55] 88.6% loop [58] 11.4% --------------------------------------------------------------------------- for-loop [37] 100.0% [47] 1170(1.6%) 0(0.0%) taylor-alt ...erbie/develop/src/mainloop.rkt:135:0 for-loop [56] 100.0% --------------------------------------------------------------------------- for-loop [40] 100.0% [48] 294(0.4%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:253:8 for-loop [75] 100.0% --------------------------------------------------------------------------- sort-context-on-expr [41] 100.0% [49] 280(0.4%) 0(0.0%) ??? ...-7.0/collects/racket/private/sort.rkt:369:3 generic-sort/key [57] 100.0% --------------------------------------------------------------------------- ??? [35] 100.0% [50] 262(0.4%) 0(0.0%) atab-min-errors ...op/src/core/alt-table.rkt:221:0 for-loop [59] 100.0% --------------------------------------------------------------------------- ??? [35] 100.0% [51] 248(0.3%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:59:0 ??? [102] 100.0% --------------------------------------------------------------------------- ??? [34] 42.6% for-loop [43] 57.4% [52] 51958(69.7%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:86:0 find-matches [60] 51.2% for-loop [61] 46.5% for-loop [67] 2.3% --------------------------------------------------------------------------- loop [44] 100.0% [53] 6026(8.1%) 292(0.4%) for-loop ...ie/develop/src/core/simplify.rkt:149:4 argmin [64] 34.1% loop [65] 32.1% for-loop [68] 15.5% expression-cost [74] 9.0% for-loop [75] 4.6% --------------------------------------------------------------------------- rewrite-expression-head20 [45] 28.3% matcher [73] 71.7% [54] 3356(4.5%) 0(0.0%) rewriter ...bie/develop/src/core/matcher.rkt:128:2 for-loop [62] 82.8% *rules* [63] 17.2% --------------------------------------------------------------------------- for-loop [46] 100.0% [55] 2124(2.8%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:202:0 errors [157] 88.3% best-and-tied-at-points [70] 11.7% --------------------------------------------------------------------------- taylor-alt [47] 100.0% [56] 1170(1.6%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:141:6 ??? [102] 100.0% --------------------------------------------------------------------------- ??? [49] 100.0% [57] 280(0.4%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:156:2 copying-mergesort [69] 100.0% --------------------------------------------------------------------------- for-loop [46] 100.0% [58] 274(0.4%) 0(0.0%) loop ...erbie/develop/src/core/alt-table.rkt:176:2 map [66] 100.0% --------------------------------------------------------------------------- atab-min-errors [50] 100.0% [59] 262(0.4%) 262(0.4%) for-loop ...e/develop/src/core/alt-table.rkt:222:2 --------------------------------------------------------------------------- one-iter [52] 100.0% [60] 26592(35.7%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:56:0 for-loop [71] 100.0% --------------------------------------------------------------------------- one-iter [52] 100.0% [61] 24164(32.4%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:95:2 loop [72] 87.6% update-leader! [101] 12.4% --------------------------------------------------------------------------- rewriter [54] 100.0% [62] 3356(4.5%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:131:10 matcher [73] 92.6% type-of [5] 7.4% --------------------------------------------------------------------------- rewriter [54] 100.0% [63] 2116(2.8%) 0(0.0%) *rules* ...rbie/develop/src/syntax/rules.rkt:783:0 for-loop [104] 100.0% --------------------------------------------------------------------------- for-loop [53] 100.0% [64] 2052(2.8%) 296(0.4%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 expression-cost [74] 46.1% for-loop [75] 39.5% --------------------------------------------------------------------------- for-loop [53] 100.0% [65] 1932(2.6%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [74] 85.5% for-loop [75] 14.5% --------------------------------------------------------------------------- loop [58] 14.7% loop [115] 16.6% f46 [110] 33.2% for-loop [19] 35.5% [66] 1860(2.5%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 ??? [76] 35.5% parse-loop80 [109] 18.7% ??? [102] 16.6% loop [115] 14.7% f46 [110] 7.3% simplify* [79] 7.3% --------------------------------------------------------------------------- one-iter [52] 100.0% [67] 1202(1.6%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:111:2 set-precompute! [77] 79.4% update-leader! [101] 20.6% --------------------------------------------------------------------------- for-loop [53] 100.0% [68] 932(1.2%) 932(1.2%) for-loop ...e/develop/src/core/simplify.rkt:153:16 --------------------------------------------------------------------------- copying-mergesort [69] 50.0% generic-sort/key [57] 50.0% [69] 280(0.4%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:129:8 copying-mergesort [69] 50.0% loop [78] 50.0% --------------------------------------------------------------------------- atab-add-altn [55] 100.0% [70] 248(0.3%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:117:0 for-loop [80] 100.0% --------------------------------------------------------------------------- for-loop [71] 50.0% find-matches [60] 50.0% [71] 26592(35.7%) 3720(5.0%) for-loop ...bie/develop/src/core/simplify.rkt:58:8 for-loop [71] 50.0% match-e [85] 43.0% --------------------------------------------------------------------------- for-loop [61] 100.0% [72] 21168(28.4%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:100:4 apply-match [81] 100.0% --------------------------------------------------------------------------- for-loop [7] 48.8% for-loop [62] 51.2% [73] 3356(4.5%) 240(0.3%) matcher ...rbie/develop/src/core/matcher.rkt:163:2 ??? [2] 48.8% rewriter [54] 48.8% --------------------------------------------------------------------------- for-loop [53] 17.2% argmin [64] 30.1% loop [65] 52.6% [74] 3138(4.2%) 302(0.4%) expression-cost .../develop/src/programs.rkt:204:0 compile [83] 90.4% --------------------------------------------------------------------------- for-loop [53] 16.7% loop [65] 16.8% for-loop [48] 17.7% argmin [64] 48.7% [75] 1662(2.2%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:205:2 table-ref [159] 100.0% --------------------------------------------------------------------------- loop [115] 49.1% map [66] 50.9% [76] 1296(1.7%) 0(0.0%) ??? ...htlies/herbie/develop/src/points.rkt:214:26 ??? [82] 77.0% ??? [102] 23.0% --------------------------------------------------------------------------- for-loop [67] 100.0% [77] 954(1.3%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:117:0 for-loop [84] 100.0% --------------------------------------------------------------------------- copying-mergesort [69] 100.0% [78] 280(0.4%) 0(0.0%) loop ...7.0/collects/racket/private/sort.rkt:96:12 ??? [82] 100.0% --------------------------------------------------------------------------- map [66] 100.0% [79] 270(0.4%) 0(0.0%) simplify* ...rbie/develop/src/core/reduce.rkt:31:0 ??? [160] 100.0% --------------------------------------------------------------------------- best-and-tied-at-points [70] 100.0% [80] 248(0.3%) 248(0.3%) for-loop .../develop/src/core/alt-table.rkt:119:16 --------------------------------------------------------------------------- loop [72] 100.0% [81] 21168(28.4%) 0(0.0%) apply-match .../develop/src/core/simplify.rkt:65:0 for-loop [86] 81.2% match-e [85] 16.4% set [120] 2.5% --------------------------------------------------------------------------- loop [78] 8.2% loop [115] 9.2% loop [23] 15.1% ??? [76] 29.1% ??? [10] 38.3% [82] 3424(4.6%) 248(0.3%) ??? ...tlies/herbie/develop/src/programs.rkt:146:2 ??? [102] 66.6% ??? [88] 26.2% --------------------------------------------------------------------------- expression-cost [74] 100.0% [83] 2836(3.8%) 0(0.0%) compile ...s/herbie/develop/src/programs.rkt:181:0 hash-ref! [87] 100.0% --------------------------------------------------------------------------- set-precompute! [77] 100.0% [84] 954(1.3%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:119:2 setfindf [89] 51.8% merge-egraph-nodes! [91] 27.0% ??? [10] 21.2% --------------------------------------------------------------------------- apply-match [81] 7.5% for-loop [100] 31.1% for-loop [71] 61.4% [85] 26334(35.3%) 3134(4.2%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [90] 84.1% ??? [35] 3.1% variable? [3] 3.0% --------------------------------------------------------------------------- apply-match [81] 100.0% [86] 17178(23.0%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:78:2 merge-egraph-nodes! [91] 77.4% substitute-e [93] 10.6% dedup-children! [105] 9.3% mk-enode! [117] 2.7% --------------------------------------------------------------------------- localize-error [39] 2.7% loop [8] 3.1% loop [115] 5.5% ??? [95] 6.7% ??? [102] 6.7% ??? [92] 36.3% compile [83] 39.0% [87] 3766(5.0%) 2276(3.1%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [92] 43.8% parse-loop80 [109] 8.2% ??? [95] 6.7% simplify [94] 6.7% ??? [97] 3.1% --------------------------------------------------------------------------- ??? [82] 100.0% [88] 896(1.2%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [96] 68.1% double->posit16 [98] 31.9% --------------------------------------------------------------------------- for-loop [84] 100.0% [89] 494(0.7%) 246(0.3%) setfindf ...es/herbie/develop/src/common.rkt:139:0 for-loop [99] 50.2% --------------------------------------------------------------------------- match-e [85] 100.0% [90] 24586(33.0%) 10506(14.1%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [100] 50.4% loop [115] 9.0% cartesian-product [107] 4.1% foldl [133] 1.7% curry* [113] 0.4% --------------------------------------------------------------------------- for-loop [84] 1.9% for-loop [108] 2.9% merge-egraph-nodes! [91] 11.9% for-loop [86] 83.3% [91] 13556(18.2%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:145:0 update-leader! [101] 59.9% loop! [103] 17.9% merge-egraph-nodes! [91] 11.9% dedup-children! [105] 4.9% for-loop [108] 2.9% for-loop [104] 1.5% enode-merge! [112] 1.0% --------------------------------------------------------------------------- hash-ref! [87] 100.0% [92] 2192(2.9%) 560(0.8%) ??? ...tlies/herbie/develop/src/programs.rkt:189:5 hash-ref! [87] 87.2% --------------------------------------------------------------------------- for-loop [106] 7.5% for-loop [86] 92.5% [93] 1824(2.4%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [106] 96.2% variable? [3] 3.8% --------------------------------------------------------------------------- approximate9 [4] 30.3% hash-ref! [87] 69.7% [94] 892(1.2%) 0(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:16:0 f46 [110] 69.3% parse-loop80 [109] 30.7% --------------------------------------------------------------------------- hash-ref! [87] 100.0% [95] 622(0.8%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:45:15 hash-ref! [87] 100.0% --------------------------------------------------------------------------- ??? [88] 100.0% [96] 610(0.8%) 0(0.0%) ??? ...herbie/develop/src/syntax/syntax.rkt:317:17 ??? [160] 100.0% --------------------------------------------------------------------------- hash-ref! [87] 100.0% [97] 348(0.5%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:68:15 ??? [102] 100.0% --------------------------------------------------------------------------- ??? [88] 100.0% [98] 286(0.4%) 0(0.0%) double->posit16 ...ftposit-rkt/softposit.rkt:248:0 get-ffi-obj* [111] 100.0% --------------------------------------------------------------------------- setfindf [89] 100.0% [99] 248(0.3%) 248(0.3%) for-loop ...es/herbie/develop/src/common.rkt:140:2 --------------------------------------------------------------------------- for-loop [90] 100.0% [100] 16324(21.9%) 982(1.3%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [85] 89.1% ??? [122] 4.9% --------------------------------------------------------------------------- for-loop [67] 2.0% for-loop [61] 24.3% merge-egraph-nodes! [91] 73.7% [101] 12350(16.6%) 244(0.3%) update-leader! ...evelop/src/core/egraph.rkt:213:0 for-loop [114] 98.0% --------------------------------------------------------------------------- loop [8] 1.3% ??? [97] 1.7% ??? [51] 1.8% ??? [76] 4.3% map [66] 4.4% location-do [121] 6.9% for-loop [56] 6.9% loop [23] 7.3% ??? [24] 14.7% ??? [10] 20.1% ??? [82] 30.8% [102] 7000(9.4%) 1150(1.5%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ->flonum [116] 50.0% sample-multi-bounded [123] 11.2% location-do [121] 6.9% approximate9 [4] 6.9% mk-ival [127] 3.9% hash-ref! [87] 3.0% best-alt [129] 1.8% --------------------------------------------------------------------------- loop [115] 30.9% merge-egraph-nodes! [91] 69.1% [103] 3210(4.3%) 1034(1.4%) loop! ...s/herbie/develop/src/core/enode.rkt:191:2 loop [115] 39.4% custom-set-union [134] 32.5% set [120] 12.1% --------------------------------------------------------------------------- merge-egraph-nodes! [91] 7.7% *simplify-rules* [38] 12.3% *rules* [63] 80.0% [104] 2644(3.5%) 484(0.6%) for-loop ...ies/herbie/develop/src/common.rkt:71:9 ormap [118] 71.6% flag-set? [132] 10.1% --------------------------------------------------------------------------- merge-egraph-nodes! [91] 32.7% for-loop [86] 67.3% [105] 2364(3.2%) 0(0.0%) dedup-children! ...evelop/src/core/enode.rkt:199:0 loop [119] 76.9% loop [124] 23.1% --------------------------------------------------------------------------- substitute-e [93] 100.0% [106] 1824(2.4%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 mk-enode! [117] 88.7% substitute-e [93] 11.3% --------------------------------------------------------------------------- for-loop [90] 100.0% [107] 1322(1.8%) 1322(1.8%) cartesian-product ...ollects/racket/list.rkt:822:0 --------------------------------------------------------------------------- merge-egraph-nodes! [91] 100.0% [108] 1114(1.5%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:199:4 merge-egraph-nodes! [91] 100.0% --------------------------------------------------------------------------- simplify [94] 29.5% hash-ref! [87] 33.1% map [66] 37.4% [109] 930(1.2%) 0(0.0%) parse-loop80 ...s/racket/match/compiler.rkt:418:15 make-multiplication-node [126] 37.4% loop [115] 33.1% eval-const-expr [125] 29.5% --------------------------------------------------------------------------- map [66] 21.8% simplify [94] 78.2% [110] 618(0.8%) 0(0.0%) f46 ...0/collects/racket/match/compiler.rkt:507:40 map [66] 100.0% --------------------------------------------------------------------------- double->posit16 [98] 100.0% [111] 286(0.4%) 286(0.4%) get-ffi-obj* ...-7.0/collects/ffi/unsafe.rkt:209:2 --------------------------------------------------------------------------- merge-egraph-nodes! [91] 100.0% [112] 262(0.4%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:128:0 adopt-enode! [128] 100.0% --------------------------------------------------------------------------- for-loop [90] 100.0% [113] 204(0.3%) 0(0.0%) curry* ...et-7.0/collects/racket/function.rkt:44:2 procedure-arity [130] 100.0% --------------------------------------------------------------------------- update-leader! [101] 100.0% [114] 12106(16.2%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:218:6 for-loop [131] 51.0% hash-update! [145] 49.0% --------------------------------------------------------------------------- parse-loop80 [109] 0.1% map [66] 0.2% loop! [103] 1.6% for-loop [90] 7.6% for-loop [19] 13.2% loop [115] 77.3% [115] 6230(8.4%) 1682(2.3%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [115] 77.3% ??? [76] 10.2% ??? [82] 1.7% loop! [103] 1.5% point-error [138] 1.3% foldl [133] 0.9% hash-ref! [87] 0.1% map [66] 0.0% --------------------------------------------------------------------------- ??? [102] 100.0% [116] 3626(4.9%) 2282(3.1%) ->flonum ...s/herbie/develop/src/programs.rkt:38:0 return/no-unsupplied [158] 28.0% ??? [160] 9.0% --------------------------------------------------------------------------- for-loop [86] 22.4% for-loop [106] 77.6% [117] 2084(2.8%) 1618(2.2%) mk-enode! ...rbie/develop/src/core/egraph.rkt:99:0 new-enode [141] 12.1% hash-has-key? [144] 10.3% --------------------------------------------------------------------------- for-loop [104] 100.0% [118] 1894(2.5%) 0(0.0%) ormap ....0/collects/racket/private/map.rkt:141:13 flag-set? [132] 100.0% --------------------------------------------------------------------------- dedup-children! [105] 11.9% loop [119] 88.1% [119] 1818(2.4%) 1818(2.4%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [119] 88.1% --------------------------------------------------------------------------- apply-match [81] 38.0% loop! [103] 62.0% [120] 1390(1.9%) 862(1.2%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [136] 38.0% --------------------------------------------------------------------------- location-do [121] 26.4% ??? [102] 73.6% [121] 1170(1.6%) 0(0.0%) location-do ...rbie/develop/src/programs.rkt:111:0 ??? [102] 73.6% location-do [121] 26.4% --------------------------------------------------------------------------- for-loop [100] 100.0% [122] 1022(1.4%) 774(1.0%) ??? ...ies/herbie/develop/src/core/ematch.rkt:43:5 for-loop [142] 24.3% --------------------------------------------------------------------------- ??? [102] 100.0% [123] 784(1.1%) 248(0.3%) sample-multi-bounded ...evelop/src/points.rkt:16:0 loop [135] 68.4% --------------------------------------------------------------------------- dedup-children! [105] 18.4% loop [124] 81.6% [124] 546(0.7%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [124] 81.6% member [139] 13.1% loop [174] 5.3% --------------------------------------------------------------------------- ??? [10] 42.4% parse-loop80 [109] 57.6% [125] 476(0.6%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:149:0 eval-prog [163] 100.0% --------------------------------------------------------------------------- parse-loop80 [109] 100.0% [126] 348(0.5%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:234:0 make-multiplication-subnode [137] 100.0% --------------------------------------------------------------------------- ??? [102] 100.0% [127] 270(0.4%) 0(0.0%) mk-ival ...herbie/develop/src/biginterval.rkt:59:0 bf [140] 100.0% --------------------------------------------------------------------------- enode-merge! [112] 100.0% [128] 262(0.4%) 0(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:104:0 custom-set-union [134] 100.0% --------------------------------------------------------------------------- ??? [102] 100.0% [129] 248(0.3%) 0(0.0%) best-alt .../herbie/develop/src/mainloop.rkt:102:0 loop [143] 100.0% --------------------------------------------------------------------------- curry* [113] 100.0% [130] 204(0.3%) 204(0.3%) procedure-arity ...ket/private/norm-arity.rkt:7:27 --------------------------------------------------------------------------- for-loop [114] 100.0% [131] 6172(8.3%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:219:8 hash-update! [145] 100.0% --------------------------------------------------------------------------- for-loop [104] 12.3% ormap [118] 87.7% [132] 2160(2.9%) 0(0.0%) flag-set? ...es/herbie/develop/src/config.rkt:28:0 return/no-unsupplied [158] 72.3% ??? [150] 15.0% ??? [160] 12.7% --------------------------------------------------------------------------- loop [115] 48.2% for-loop [90] 51.8% [133] 1644(2.2%) 1068(1.4%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [148] 35.0% --------------------------------------------------------------------------- adopt-enode! [128] 20.1% loop! [103] 79.9% [134] 1304(1.7%) 262(0.4%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [146] 58.9% for-loop [152] 21.0% --------------------------------------------------------------------------- sample-multi-bounded [123] 100.0% [135] 536(0.7%) 246(0.3%) loop ...ghtlies/herbie/develop/src/points.rkt:45:6 random-exp [151] 54.1% --------------------------------------------------------------------------- set [120] 100.0% [136] 528(0.7%) 528(0.7%) for-loop ...cts/racket/private/set-types.rkt:937:4 --------------------------------------------------------------------------- make-multiplication-node [126] 100.0% [137] 348(0.5%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:244:0 group-by61 [149] 100.0% --------------------------------------------------------------------------- loop [115] 100.0% [138] 326(0.4%) 0(0.0%) point-error ...herbie/develop/src/points.rkt:195:0 ulp-difference [147] 100.0% --------------------------------------------------------------------------- loop [124] 100.0% [139] 286(0.4%) 286(0.4%) member (unknown source) --------------------------------------------------------------------------- mk-ival [127] 100.0% [140] 270(0.4%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [153] 100.0% --------------------------------------------------------------------------- mk-enode! [117] 100.0% [141] 252(0.3%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:96:0 type-of-enode-expr [154] 100.0% --------------------------------------------------------------------------- ??? [122] 100.0% [142] 248(0.3%) 248(0.3%) for-loop ...erbie/develop/src/core/ematch.rkt:44:7 --------------------------------------------------------------------------- best-alt [129] 100.0% [143] 248(0.3%) 0(0.0%) loop ...ghtlies/herbie/develop/src/common.rkt:94:2 ??? [155] 100.0% --------------------------------------------------------------------------- mk-enode! [117] 100.0% [144] 214(0.3%) 214(0.3%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 --------------------------------------------------------------------------- for-loop [114] 49.0% for-loop [131] 51.0% [145] 12106(16.2%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [156] 100.0% --------------------------------------------------------------------------- custom-set-union [134] 100.0% [146] 768(1.0%) 768(1.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 --------------------------------------------------------------------------- ??? [10] 49.2% point-error [138] 50.8% [147] 642(0.9%) 0(0.0%) ulp-difference ...erbie/develop/src/float.rkt:14:0 return/no-unsupplied [158] 50.8% ??? [160] 49.2% --------------------------------------------------------------------------- foldl [133] 100.0% [148] 576(0.8%) 576(0.8%) merge2 .../herbie/develop/src/core/ematch.rkt:24:0 --------------------------------------------------------------------------- make-multiplication-subnode [137] 100.0% [149] 348(0.5%) 348(0.5%) group-by61 ...t-7.0/collects/racket/list.rkt:771:0 --------------------------------------------------------------------------- flag-set? [132] 100.0% [150] 324(0.4%) 324(0.4%) ??? ...ects/racket/contract/private/guts.rkt:746:8 --------------------------------------------------------------------------- loop [135] 100.0% [151] 290(0.4%) 290(0.4%) random-exp .../herbie/develop/src/common.rkt:173:0 --------------------------------------------------------------------------- custom-set-union [134] 100.0% [152] 274(0.4%) 274(0.4%) for-loop ...cts/racket/private/set-types.rkt:152:2 --------------------------------------------------------------------------- bf [140] 100.0% [153] 270(0.4%) 270(0.4%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 --------------------------------------------------------------------------- new-enode [141] 100.0% [154] 252(0.3%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:69:0 table-ref [159] 100.0% --------------------------------------------------------------------------- loop [143] 100.0% [155] 248(0.3%) 0(0.0%) ??? ...lies/herbie/develop/src/mainloop.rkt:104:19 errors [157] 100.0% --------------------------------------------------------------------------- hash-update! [145] 100.0% [156] 12106(16.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:221:24 for-loop [161] 95.0% update-en-expr [167] 5.0% --------------------------------------------------------------------------- ??? [155] 6.4% for-loop [42] 6.7% ??? [10] 38.1% atab-add-altn [55] 48.8% [157] 3848(5.2%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:228:0 for-loop [162] 78.8% eval-prog [163] 21.2% --------------------------------------------------------------------------- ulp-difference [147] 11.2% ->flonum [116] 35.0% flag-set? [132] 53.8% [158] 2904(3.9%) 1792(2.4%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [164] 38.3% --------------------------------------------------------------------------- type-of-enode-expr [154] 13.2% for-loop [75] 86.8% [159] 1914(2.6%) 836(1.1%) table-ref ...es/herbie/develop/src/common.rkt:42:0 for-loop [165] 41.0% dict? [166] 15.4% --------------------------------------------------------------------------- simplify* [79] 15.0% flag-set? [132] 15.2% ulp-difference [147] 17.6% ->flonum [116] 18.2% ??? [96] 33.9% [160] 1798(2.4%) 1798(2.4%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 --------------------------------------------------------------------------- ??? [156] 100.0% [161] 11506(15.4%) 10372(13.9%) for-loop ...bie/develop/src/core/egraph.rkt:222:26 update-en-expr [167] 9.9% --------------------------------------------------------------------------- errors [157] 100.0% [162] 3034(4.1%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:230:2 ??? [10] 100.0% --------------------------------------------------------------------------- eval-const-expr [125] 36.9% errors [157] 63.1% [163] 1290(1.7%) 202(0.3%) eval-prog ...herbie/develop/src/programs.rkt:130:0 temp68_2 [168] 84.3% --------------------------------------------------------------------------- return/no-unsupplied [158] 100.0% [164] 1112(1.5%) 1112(1.5%) filter ...0/collects/racket/private/list.rkt:256:2 --------------------------------------------------------------------------- table-ref [159] 100.0% [165] 784(1.1%) 784(1.1%) for-loop ...ies/herbie/develop/src/common.rkt:44:4 --------------------------------------------------------------------------- table-ref [159] 100.0% [166] 294(0.4%) 294(0.4%) dict? ...ollects/racket/private/generic.rkt:146:11 --------------------------------------------------------------------------- ??? [156] 34.6% for-loop [161] 65.4% [167] 1734(2.3%) 1734(2.3%) update-en-expr ...evelop/src/core/egraph.rkt:207:0 --------------------------------------------------------------------------- eval-prog [163] 100.0% [168] 1088(1.5%) 0(0.0%) temp68_2 (unknown source) compile16 [169] 100.0% --------------------------------------------------------------------------- temp68_2 [168] 100.0% [169] 1088(1.5%) 0(0.0%) compile16 (unknown source) temp74_0 [170] 100.0% --------------------------------------------------------------------------- compile16 [169] 100.0% [170] 1088(1.5%) 0(0.0%) temp74_0 (unknown source) expand-single [171] 100.0% --------------------------------------------------------------------------- temp74_0 [170] 100.0% [171] 1088(1.5%) 0(0.0%) expand-single (unknown source) expand-capturing-lifts [172] 100.0% --------------------------------------------------------------------------- expand-single [171] 100.0% [172] 1088(1.5%) 0(0.0%) expand-capturing-lifts (unknown source) dispatch-transformer41 [176] 53.5% lambda-clause-expander [173] 46.5% --------------------------------------------------------------------------- expand-capturing-lifts [172] 100.0% [173] 506(0.7%) 0(0.0%) lambda-clause-expander (unknown source) loop [174] 51.0% finish-bodys [175] 49.0% --------------------------------------------------------------------------- lambda-clause-expander [173] 49.8% loop [124] 50.2% [174] 518(0.7%) 260(0.3%) loop (unknown source) dispatch-transformer41 [176] 49.8% --------------------------------------------------------------------------- lambda-clause-expander [173] 100.0% [175] 248(0.3%) 0(0.0%) finish-bodys (unknown source) for-loop [177] 100.0% --------------------------------------------------------------------------- loop [174] 30.7% expand-capturing-lifts [172] 69.3% [176] 840(1.1%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [178] 100.0% --------------------------------------------------------------------------- for-loop [177] 50.0% finish-bodys [175] 50.0% [177] 248(0.3%) 248(0.3%) for-loop (unknown source) for-loop [177] 50.0% --------------------------------------------------------------------------- dispatch-transformer41 [176] 100.0% [178] 840(1.1%) 0(0.0%) apply-transformer52 (unknown source) apply-transformer-in-context [179]100.0% --------------------------------------------------------------------------- apply-transformer52 [178] 100.0% [179] 840(1.1%) 258(0.3%) apply-transformer-in-context (unknown source) new-lambda [180] 36.7% parse-lambda [181] 32.6% --------------------------------------------------------------------------- apply-transformer-in-context [179]100.0% [180] 308(0.4%) 308(0.4%) new-lambda ...ollects/racket/private/kw.rkt:822:11 --------------------------------------------------------------------------- apply-transformer-in-context [179]100.0% [181] 274(0.4%) 274(0.4%) parse-lambda ...llects/racket/private/kw.rkt:585:2 ---------------------------------------------------------------------------