Profiling results ----------------- Total cpu time observed: 443840ms (out of 447148ms) Number of samples taken: 4019 (once every 110ms) (Hiding functions with self<1.0% and local<2.0%: 20 of 290 hidden) ========================================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================================= ??? [64] 100.0% [1] 417776(94.1%) 0(0.0%) run-improve50 ...ock/herbie/src/mainloop.rkt:234:0 for-loop [18] 89.7% get-final-combination [21] 9.8% setup-prog [29] 0.3% loop [74] 0.2% ----------------------------------------------------------------------------------------- ??? [64] 100.0% [2] 408462(92.0%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [17] 100.0% ----------------------------------------------------------------------------------------- simplify-alt [42] 0.4% loop [224] 3.6% ??? [64] 96.0% [3] 353700(79.7%) 546(0.1%) simplify ...lock/herbie/src/core/simplify.rkt:39:0 simplify-expr [19] 55.0% for-loop [20] 28.1% iterate-egraph!5 [36] 12.6% loop [37] 4.2% map [158] 0.0% ----------------------------------------------------------------------------------------- generic-sort/key [196] 1.2% copying-mergesort [202] 98.8% [4] 7540(1.7%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [206] 95.7% ??? [228] 3.0% errors-score [34] 1.2% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [5] 6294(1.4%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:281:26 for-loop [22] 100.0% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [6] 5606(1.3%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:291:23 for-loop [23] 100.0% ----------------------------------------------------------------------------------------- map-enodes [52] 10.0% loop [224] 90.0% [7] 5254(1.2%) 1096(0.2%) for-loop ...ock/herbie/src/core/simplify.rkt:161:2 setfindf [27] 37.9% eval-const-expr [28] 28.0% curried [230] 6.9% compose [31] 6.4% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [8] 4588(1.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:388:23 for-loop [24] 100.0% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [9] 3358(0.8%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:479:23 for-loop [25] 100.0% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [10] 2876(0.6%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:334:33 for-loop [26] 100.0% ----------------------------------------------------------------------------------------- f6 [149] 100.0% [11] 1006(0.2%) 0(0.0%) taylor-quotient ...erbie/src/core/taylor.rkt:324:0 first-nonzero-exp [30] 88.9% simplify [145] 11.1% ----------------------------------------------------------------------------------------- rewriter [77] 100.0% [12] 810(0.2%) 0(0.0%) *rules* ...tlock/herbie/src/syntax/rules.rkt:411:0 for-loop [103] 81.7% dict? [268] 18.3% ----------------------------------------------------------------------------------------- append-map [164] 100.0% [13] 706(0.2%) 116(0.0%) free-variables ...ock/herbie/src/programs.rkt:98:0 variable? [93] 44.8% ??? [108] 38.8% ----------------------------------------------------------------------------------------- f6 [149] 100.0% [14] 184(0.0%) 0(0.0%) combine-mterms ...herbie/src/core/reduce.rkt:180:0 for-loop [32] 100.0% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [15] 116(0.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:404:23 for-loop [33] 100.0% ----------------------------------------------------------------------------------------- parse-loop12 [172] 1.2% loop [16] 98.8% [16] 110(0.0%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [16] 98.8% ->flonum [236] 1.2% ----------------------------------------------------------------------------------------- profile-thunk16 [2] 100.0% [17] 408654(92.1%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [64] 100.0% ----------------------------------------------------------------------------------------- run-improve50 [1] 100.0% [18] 374782(84.4%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:245:8 run-iter! [35] 100.0% ----------------------------------------------------------------------------------------- simplify [3] 100.0% [19] 194368(43.8%) 516(0.1%) simplify-expr ...herbie/src/core/simplify.rkt:68:0 iterate-egraph!5 [36] 82.9% loop [37] 16.7% debug7 [189] 0.1% extract-smallest [46] 0.0% ----------------------------------------------------------------------------------------- simplify [3] 100.0% [20] 99286(22.4%) 570(0.1%) for-loop ...ock/herbie/src/core/simplify.rkt:61:12 iterate-egraph!5 [36] 84.7% loop [37] 14.6% mk-egraph [44] 0.1% ----------------------------------------------------------------------------------------- run-improve50 [1] 100.0% [21] 40920(9.2%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:260:0 split-table [38] 67.6% extract-alt [39] 32.4% ----------------------------------------------------------------------------------------- ??? [5] 100.0% [22] 6294(1.4%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:281:52 hash-ref! [208] 76.0% ??? [41] 23.1% simplify [145] 0.9% ----------------------------------------------------------------------------------------- ??? [6] 100.0% [23] 5606(1.3%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:294:27 hash-ref! [208] 97.9% simplify [145] 2.1% ----------------------------------------------------------------------------------------- ??? [8] 100.0% [24] 4588(1.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:392:33 for-loop [40] 100.0% ----------------------------------------------------------------------------------------- ??? [9] 100.0% [25] 3358(0.8%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:483:35 parse-loop12 [172] 100.0% ----------------------------------------------------------------------------------------- ??? [10] 100.0% [26] 2876(0.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:337:46 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- for-loop [7] 100.0% [27] 1990(0.4%) 1362(0.3%) setfindf ...e/ztatlock/herbie/src/common.rkt:168:0 ??? [108] 16.0% for-loop [43] 9.9% custom-in-set [255] 5.6% ----------------------------------------------------------------------------------------- for-loop [7] 100.0% [28] 1472(0.3%) 114(0.0%) eval-const-expr ...k/herbie/src/programs.rkt:164:0 f6 [149] 58.7% ??? [210] 21.2% ??? [245] 6.2% parse-app [214] 6.1% ----------------------------------------------------------------------------------------- run-improve50 [1] 100.0% [29] 1420(0.3%) 0(0.0%) setup-prog /home/ztatlock/herbie/src/glue.rkt:45:0 simplify-alt [42] 92.1% ??? [108] 7.9% ----------------------------------------------------------------------------------------- taylor-sqrt [131] 15.0% taylor-quotient [11] 85.0% [30] 1052(0.2%) 0(0.0%) first-nonzero-exp ...bie/src/core/taylor.rkt:256:0 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- for-loop [7] 100.0% [31] 336(0.1%) 336(0.1%) compose ...collects/racket/private/list.rkt:385:12 ----------------------------------------------------------------------------------------- combine-mterms [14] 100.0% [32] 184(0.0%) 96(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:184:5 hash-ref! [208] 47.8% ----------------------------------------------------------------------------------------- ??? [15] 100.0% [33] 116(0.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:407:30 for-loop [45] 100.0% ----------------------------------------------------------------------------------------- jloop [4] 100.0% [34] 94(0.0%) 0(0.0%) errors-score ...atlock/herbie/src/points.rkt:194:0 loop [204] 100.0% ----------------------------------------------------------------------------------------- for-loop [18] 100.0% [35] 374782(84.4%) 0(0.0%) run-iter! ...tatlock/herbie/src/mainloop.rkt:215:0 simplify! [47] 90.3% finalize-iter! [50] 6.2% gen-series! [51] 2.7% gen-rewrites! [53] 0.4% ----------------------------------------------------------------------------------------- simplify [3] 15.3% for-loop [20] 29.0% simplify-expr [19] 55.6% [36] 289668(65.3%) 1758(0.4%) iterate-egraph!5 ...bie/src/core/simplify.rkt:95:0 one-iter [48] 97.2% map-enodes [52] 2.0% debug-print [154] 0.1% *simplify-rules* [54] 0.1% ----------------------------------------------------------------------------------------- for-loop [20] 23.4% simplify [3] 24.1% simplify-expr [19] 52.5% [37] 61988(14.0%) 0(0.0%) loop ...tatlock/herbie/src/core/simplify.rkt:203:2 pass [49] 100.0% ----------------------------------------------------------------------------------------- get-final-combination [21] 100.0% [38] 27672(6.2%) 0(0.0%) split-table .../ztatlock/herbie/src/glue.rkt:164:0 f6 [149] 100.0% ----------------------------------------------------------------------------------------- get-final-combination [21] 100.0% [39] 13248(3.0%) 0(0.0%) extract-alt ...e/ztatlock/herbie/src/glue.rkt:56:0 loop [224] 96.5% loop [134] 2.6% argmins [136] 0.9% ----------------------------------------------------------------------------------------- for-loop [24] 100.0% [40] 4588(1.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:394:39 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- ??? [217] 6.9% for-loop [22] 93.1% [41] 2388(0.5%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:284:19 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- setup-prog [29] 100.0% [42] 1308(0.3%) 0(0.0%) simplify-alt .../ztatlock/herbie/src/glue.rkt:83:0 simplify [3] 100.0% ----------------------------------------------------------------------------------------- setfindf [27] 100.0% [43] 198(0.0%) 198(0.0%) for-loop ...e/ztatlock/herbie/src/common.rkt:169:2 ----------------------------------------------------------------------------------------- for-loop [20] 100.0% [44] 128(0.0%) 0(0.0%) mk-egraph ...lock/herbie/src/core/egraph.rkt:123:0 expr->enode [55] 100.0% ----------------------------------------------------------------------------------------- for-loop [33] 100.0% [45] 116(0.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:410:42 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- simplify-expr [19] 100.0% [46] 74(0.0%) 0(0.0%) extract-smallest ...ie/src/core/simplify.rkt:179:0 hash-keys [56] 100.0% ----------------------------------------------------------------------------------------- run-iter! [35] 100.0% [47] 338322(76.2%) 116(0.0%) simplify! ...tatlock/herbie/src/mainloop.rkt:155:0 for-loop [57] 100.0% ----------------------------------------------------------------------------------------- iterate-egraph!5 [36] 100.0% [48] 281500(63.4%) 3946(0.9%) one-iter ...ock/herbie/src/core/simplify.rkt:106:0 loop [58] 53.2% for-loop [59] 40.7% apply-match [65] 4.3% filter [264] 0.1% ----------------------------------------------------------------------------------------- loop [37] 100.0% [49] 61988(14.0%) 222(0.1%) pass ...tatlock/herbie/src/core/simplify.rkt:193:2 for-loop [60] 99.5% ----------------------------------------------------------------------------------------- run-iter! [35] 100.0% [50] 23258(5.2%) 0(0.0%) finalize-iter! ...ck/herbie/src/mainloop.rkt:169:0 ??? [108] 100.0% ----------------------------------------------------------------------------------------- run-iter! [35] 100.0% [51] 9972(2.2%) 0(0.0%) gen-series! ...tlock/herbie/src/mainloop.rkt:129:0 for-loop [61] 100.0% ----------------------------------------------------------------------------------------- iterate-egraph!5 [36] 100.0% [52] 5844(1.3%) 188(0.0%) map-enodes ...ock/herbie/src/core/egraph.rkt:139:0 loop [224] 87.7% for-loop [7] 9.0% ----------------------------------------------------------------------------------------- run-iter! [35] 100.0% [53] 1340(0.3%) 0(0.0%) gen-rewrites! ...ock/herbie/src/mainloop.rkt:142:0 for-loop [62] 100.0% ----------------------------------------------------------------------------------------- iterate-egraph!5 [36] 100.0% [54] 236(0.1%) 0(0.0%) *simplify-rules* ...bie/src/syntax/rules.rkt:415:0 for-loop [103] 54.2% ??? [252] 45.8% ----------------------------------------------------------------------------------------- mk-egraph [44] 33.3% expr->enode [55] 66.7% [55] 128(0.0%) 0(0.0%) expr->enode ...ck/herbie/src/core/egraph.rkt:124:2 expr->enode [55] 66.7% mk-enode! [96] 33.3% ----------------------------------------------------------------------------------------- extract-smallest [46] 100.0% [56] 74(0.0%) 0(0.0%) hash-keys .../collects/racket/private/hash.rkt:2:2 loop [63] 100.0% ----------------------------------------------------------------------------------------- simplify! [47] 99.5% [57] 339756(76.5%) 100(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:159:6 ??? [64] 99.8% debug-print [154] 0.2% ----------------------------------------------------------------------------------------- one-iter [48] 100.0% [58] 149750(33.7%) 554(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [65] 99.6% ----------------------------------------------------------------------------------------- for-loop [59] 48.7% one-iter [48] 51.3% [59] 114582(25.8%) 23266(5.2%) for-loop ...ck/herbie/src/core/simplify.rkt:116:12 for-loop [59] 48.7% match-e [71] 39.8% ??? [112] 0.1% ----------------------------------------------------------------------------------------- pass [49] 100.0% [60] 61650(13.9%) 490(0.1%) for-loop ...ck/herbie/src/core/simplify.rkt:196:29 argmin [66] 68.5% loop [67] 22.3% for-loop [69] 7.3% filter [264] 0.5% make-sequence [238] 0.3% ----------------------------------------------------------------------------------------- gen-series! [51] 100.0% [61] 9972(2.2%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:135:7 taylor-alt [68] 100.0% ----------------------------------------------------------------------------------------- gen-rewrites! [53] 100.0% [62] 1340(0.3%) 0(0.0%) for-loop ...tatlock/herbie/src/mainloop.rkt:147:11 ??? [70] 100.0% ----------------------------------------------------------------------------------------- hash-keys [56] 4.5% loop [63] 95.5% [63] 74(0.0%) 74(0.0%) loop ...acket/collects/racket/private/hash.rkt:3:4 loop [63] 95.5% ----------------------------------------------------------------------------------------- for-loop [57] 27.0% run [17] 34.7% [64] 439626(99.1%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 run-improve50 [1] 35.9% profile-thunk16 [2] 34.7% simplify [3] 27.1% loop [74] 2.3% ----------------------------------------------------------------------------------------- one-iter [48] 7.5% loop [58] 92.5% [65] 161244(36.3%) 4804(1.1%) apply-match .../herbie/src/core/simplify.rkt:122:2 for-loop [72] 35.7% merge-egraph-nodes! [80] 32.3% match-e [71] 18.5% loop! [109] 4.8% mk-enode! [96] 2.6% substitute-e [83] 2.4% reduce-to-single! [78] 0.4% update-leader! [91] 0.2% ----------------------------------------------------------------------------------------- for-loop [60] 100.0% [66] 42204(9.5%) 284(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [73] 87.1% expression-cost [76] 12.2% ----------------------------------------------------------------------------------------- for-loop [60] 100.0% [67] 13732(3.1%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [73] 91.3% expression-cost [76] 8.7% ----------------------------------------------------------------------------------------- for-loop [61] 100.0% [68] 9972(2.2%) 0(0.0%) taylor-alt ...e/ztatlock/herbie/src/glue.rkt:141:0 for-loop [75] 100.0% ----------------------------------------------------------------------------------------- for-loop [60] 100.0% [69] 4512(1.0%) 4512(1.0%) for-loop ...ck/herbie/src/core/simplify.rkt:183:13 ----------------------------------------------------------------------------------------- for-loop [62] 100.0% [70] 1340(0.3%) 0(0.0%) ??? /home/ztatlock/herbie/src/alternative.rkt:88:0 rewriter [77] 100.0% ----------------------------------------------------------------------------------------- apply-match [65] 14.0% for-loop [90] 26.3% for-loop [59] 59.7% [71] 121062(27.3%) 39372(8.9%) match-e ...tatlock/herbie/src/core/ematch.rkt:46:0 for-loop [79] 44.0% for-loop [90] 11.1% ??? [108] 7.7% variable? [93] 4.5% list-cartesian-product [97] 2.9% loop [224] 1.4% custom-in-set [255] 0.5% curry* [105] 0.3% filter [264] 0.1% ----------------------------------------------------------------------------------------- apply-match [65] 100.0% [72] 57624(13.0%) 670(0.2%) for-loop ...ck/herbie/src/core/simplify.rkt:136:10 loop! [109] 50.5% merge-egraph-nodes! [80] 30.6% substitute-e [83] 11.5% mk-enode! [96] 6.3% ----------------------------------------------------------------------------------------- loop [67] 25.4% argmin [66] 74.6% [73] 49306(11.1%) 1526(0.3%) for-loop ...ztatlock/herbie/src/programs.rkt:197:2 table-ref [81] 69.5% ...erbie/src/common.rkt:46:2 [82] 25.3% ??? [161] 2.2% ----------------------------------------------------------------------------------------- run-improve50 [1] 3.2% ??? [64] 96.8% [74] 20358(4.6%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:159:2 make-exacts* [95] 48.9% loop [84] 48.1% for-loop [87] 1.5% loop [99] 1.1% filter-exacts [89] 0.5% ----------------------------------------------------------------------------------------- taylor-alt [68] 100.0% [75] 9972(2.2%) 0(0.0%) for-loop /home/ztatlock/herbie/src/glue.rkt:143:2 ??? [92] 100.0% ----------------------------------------------------------------------------------------- loop [67] 18.9% argmin [66] 81.1% [76] 6346(1.4%) 150(0.0%) expression-cost ...k/herbie/src/programs.rkt:196:0 compile [85] 97.6% ----------------------------------------------------------------------------------------- ??? [70] 27.9% matcher [104] 72.1% [77] 1340(0.3%) 108(0.0%) rewriter ...lock/herbie/src/core/matcher.rkt:127:2 for-loop [86] 85.6% *rules* [12] 13.3% ----------------------------------------------------------------------------------------- apply-match [65] 100.0% [78] 664(0.1%) 326(0.1%) reduce-to-single! ...bie/src/core/egraph.rkt:324:0 for-loop [88] 35.5% make-sequence [238] 15.4% ----------------------------------------------------------------------------------------- match-e [71] 100.0% [79] 71818(16.2%) 22570(5.1%) for-loop ...tlock/herbie/src/core/ematch.rkt:59:11 for-loop [90] 57.6% list-cartesian-product [97] 8.6% loop [224] 3.6% curry* [105] 0.6% filter [264] 0.5% curried [230] 0.5% foldl [229] 0.3% ----------------------------------------------------------------------------------------- for-loop [98] 4.9% merge-egraph-nodes! [80] 6.4% for-loop [72] 25.3% apply-match [65] 63.3% [80] 69702(15.7%) 2058(0.5%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 update-leader! [91] 30.0% loop! [109] 26.9% for-loop [94] 19.0% for-loop [98] 9.9% merge-egraph-nodes! [80] 6.4% enode-merge! [102] 3.8% for-loop [103] 1.2% make-sequence [238] 0.4% ----------------------------------------------------------------------------------------- f6 [149] 0.2% ??? [92] 11.5% table-ref [81] 14.7% for-loop [73] 73.5% [81] 46586(10.5%) 6902(1.6%) table-ref .../racket/private/norm-define.rkt:53:83 ??? [141] 54.1% table-ref [81] 14.7% ??? [92] 6.7% ??? [256] 3.7% return/no-unsupplied [257] 2.3% ??? [254] 1.7% dict? [268] 0.5% ??? [148] 0.5% ----------------------------------------------------------------------------------------- f6 [149] 0.9% ??? [92] 7.2% for-loop [73] 91.9% [82] 13564(3.1%) 4742(1.1%) ...erbie/src/common.rkt:46:2 ...e/arr-i.rkt:906:19 ??? [100] 41.0% ??? [101] 24.1% ----------------------------------------------------------------------------------------- apply-match [65] 28.0% substitute-e [83] 28.1% for-loop [72] 43.9% [83] 10548(2.4%) 2062(0.5%) substitute-e ...ck/herbie/src/core/ematch.rkt:71:0 mk-enode! [96] 41.4% substitute-e [83] 28.1% ??? [108] 7.4% variable? [93] 6.8% ----------------------------------------------------------------------------------------- loop [74] 100.0% [84] 9790(2.2%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:119:2 loop [99] 64.3% make-exacts* [95] 32.4% eval-prog [207] 3.3% ----------------------------------------------------------------------------------------- expression-cost [76] 100.0% [85] 6196(1.4%) 0(0.0%) compile .../ztatlock/herbie/src/programs.rkt:173:0 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- rewriter [77] 100.0% [86] 1340(0.3%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:130:10 matcher [104] 100.0% ----------------------------------------------------------------------------------------- loop [74] 100.0% [87] 302(0.1%) 0(0.0%) for-loop .../ztatlock/herbie/src/points.rkt:166:24 for-loop [106] 100.0% ----------------------------------------------------------------------------------------- reduce-to-single! [78] 100.0% [88] 236(0.1%) 236(0.1%) for-loop ...tlock/herbie/src/core/egraph.rkt:325:8 ----------------------------------------------------------------------------------------- loop [74] 100.0% [89] 96(0.0%) 0(0.0%) filter-exacts ...tlock/herbie/src/points.rkt:134:0 for-loop [107] 100.0% ----------------------------------------------------------------------------------------- match-e [71] 34.9% for-loop [79] 65.1% [90] 63792(14.4%) 3872(0.9%) for-loop ...tlock/herbie/src/core/ematch.rkt:65:37 match-e [71] 90.0% ??? [112] 4.7% ----------------------------------------------------------------------------------------- apply-match [65] 1.4% merge-egraph-nodes! [80] 98.6% [91] 23290(5.2%) 3272(0.7%) update-leader! ...herbie/src/core/egraph.rkt:217:0 for-loop [110] 75.9% custom-set-union! [118] 4.4% update-en-expr [171] 3.5% hash-ref! [208] 0.8% mutable-set [135] 0.8% make-sequence [238] 0.5% ----------------------------------------------------------------------------------------- ??? [133] 6.0% table-ref [81] 27.0% for-loop [75] 27.0% f6 [149] 40.1% [92] 18496(4.2%) 104(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 table-ref [81] 39.2% approximate9 [111] 26.4% ??? [262] 15.6% best-alt [117] 6.0% ...erbie/src/common.rkt:46:2 [82] 5.2% ??? [161] 3.3% ??? [237] 2.3% ->flonum [236] 0.7% simplify [145] 0.5% ----------------------------------------------------------------------------------------- free-variables [13] 2.0% substitute-e [83] 12.6% match-e [71] 85.4% [93] 15752(3.5%) 578(0.1%) variable? ...ck/herbie/src/syntax/syntax.rkt:529:0 ??? [108] 96.3% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [80] 100.0% [94] 13500(3.0%) 10608(2.4%) for-loop ...tlock/herbie/src/core/egraph.rkt:232:6 update-en-expr [171] 21.4% ----------------------------------------------------------------------------------------- loop [84] 24.2% loop [74] 75.8% [95] 13120(3.0%) 0(0.0%) make-exacts* ...atlock/herbie/src/points.rkt:106:0 map [158] 51.5% loop [224] 43.7% eval-prog [207] 4.9% ----------------------------------------------------------------------------------------- expr->enode [55] 1.0% for-loop [72] 29.1% apply-match [65] 34.5% substitute-e [83] 35.3% [96] 12374(2.8%) 8692(2.0%) mk-enode! ...lock/herbie/src/core/egraph.rkt:101:0 hash-has-key? [129] 14.8% new-enode [115] 14.2% mutable-set [135] 0.8% ----------------------------------------------------------------------------------------- list-cartesian-product [97] 25.8% match-e [71] 28.4% for-loop [79] 45.8% [97] 11736(2.6%) 9534(2.1%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [97] 25.8% for-loop [113] 14.0% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [80] 100.0% [98] 10266(2.3%) 0(0.0%) for-loop ...lock/herbie/src/core/egraph.rkt:200:10 merge-egraph-nodes! [80] 66.7% loop! [109] 33.3% ----------------------------------------------------------------------------------------- loop [74] 3.4% loop [84] 96.6% [99] 6518(1.5%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:109:4 map [158] 100.0% ----------------------------------------------------------------------------------------- for-loop [259] 4.7% ??? [254] 13.9% ...erbie/src/common.rkt:46:2 [82] 81.4% [100] 5558(1.3%) 1272(0.3%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [254] 75.1% ??? [262] 10.3% ----------------------------------------------------------------------------------------- ...erbie/src/common.rkt:46:2 [82] 100.0% [101] 3264(0.7%) 1046(0.2%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 return/no-unsupplied [257] 34.9% ??? [256] 23.2% assoc-ref [121] 9.8% ----------------------------------------------------------------------------------------- merge-egraph-nodes! [80] 100.0% [102] 2756(0.6%) 436(0.1%) enode-merge! ...ck/herbie/src/core/enode.rkt:100:0 adopt-enode! [114] 64.9% custom-set-intersect! [119] 19.3% ----------------------------------------------------------------------------------------- *simplify-rules* [54] 7.3% *rules* [12] 37.7% merge-egraph-nodes! [80] 55.0% [103] 1756(0.4%) 798(0.2%) for-loop /home/ztatlock/herbie/src/common.rkt:93:9 ormap [120] 25.6% update-en-expr [171] 16.7% ??? [252] 12.2% ----------------------------------------------------------------------------------------- for-loop [116] 21.8% matcher [104] 29.1% for-loop [86] 49.1% [104] 1340(0.3%) 214(0.0%) matcher ...tlock/herbie/src/core/matcher.rkt:163:2 rewriter [77] 42.6% matcher [104] 29.1% for-loop [116] 21.8% for-loop [124] 3.7% ??? [108] 0.6% ----------------------------------------------------------------------------------------- match-e [71] 44.5% for-loop [79] 55.5% [105] 728(0.2%) 410(0.1%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [122] 43.7% ----------------------------------------------------------------------------------------- for-loop [87] 100.0% [106] 302(0.1%) 96(0.0%) for-loop .../ztatlock/herbie/src/points.rkt:167:26 ??? [123] 68.2% ----------------------------------------------------------------------------------------- filter-exacts [89] 100.0% [107] 96(0.0%) 96(0.0%) for-loop ...e/ztatlock/herbie/src/points.rkt:137:4 ----------------------------------------------------------------------------------------- matcher [104] 0.2% setup-prog [29] 0.2% free-variables [13] 0.4% setfindf [27] 0.5% debug7 [189] 0.5% for-loop [132] 0.7% substitute-e [83] 3.3% ??? [262] 4.1% variable? [93] 23.7% match-e [71] 28.9% finalize-iter! [50] 35.7% [108] 63924(14.4%) 25678(5.8%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [126] 35.0% hash-has-key? [129] 21.4% ??? [133] 1.7% ??? [262] 0.8% atab-add-altns [137] 0.8% ----------------------------------------------------------------------------------------- for-loop [98] 4.1% apply-match [65] 8.8% merge-egraph-nodes! [80] 26.7% loop [224] 27.8% for-loop [72] 32.6% [109] 63906(14.4%) 12146(2.7%) loop! .../ztatlock/herbie/src/core/enode.rkt:163:2 custom-set-union [125] 38.6% loop [224] 31.7% set [128] 12.4% update-en-expr [171] 5.9% ----------------------------------------------------------------------------------------- update-leader! [91] 100.0% [110] 17672(4.0%) 960(0.2%) for-loop ...tlock/herbie/src/core/egraph.rkt:222:6 for-loop [127] 94.0% update-en-expr [171] 0.6% ----------------------------------------------------------------------------------------- ??? [92] 100.0% [111] 9772(2.2%) 0(0.0%) approximate9 ...ck/herbie/src/core/taylor.rkt:12:0 loop [130] 59.7% taylor-sqrt [131] 22.1% f6 [149] 17.0% ----------------------------------------------------------------------------------------- for-loop [59] 4.0% for-loop [90] 96.0% [112] 3196(0.7%) 1302(0.3%) ??? /home/ztatlock/herbie/src/core/ematch.rkt:50:5 for-loop [132] 55.3% custom-in-set [255] 4.0% ----------------------------------------------------------------------------------------- list-cartesian-product [97] 100.0% [113] 2202(0.5%) 2202(0.5%) for-loop ...atlock/herbie/src/core/ematch.rkt:24:8 ----------------------------------------------------------------------------------------- enode-merge! [102] 100.0% [114] 1788(0.4%) 602(0.1%) adopt-enode! ...ock/herbie/src/core/enode.rkt:76:0 custom-set-union [125] 66.3% ----------------------------------------------------------------------------------------- mk-enode! [96] 100.0% [115] 1754(0.4%) 290(0.1%) new-enode ...atlock/herbie/src/core/enode.rkt:68:0 set [128] 46.0% mutable-set [135] 18.8% check-valid-enode5 [138] 18.7% ----------------------------------------------------------------------------------------- matcher [104] 100.0% [116] 1238(0.3%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:179:21 matcher [104] 100.0% ----------------------------------------------------------------------------------------- ??? [92] 100.0% [117] 1160(0.3%) 0(0.0%) best-alt /home/ztatlock/herbie/src/glue.rkt:78:0 loop [134] 63.6% argmins [136] 36.4% ----------------------------------------------------------------------------------------- update-leader! [91] 100.0% [118] 1032(0.2%) 924(0.2%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [139] 10.5% ----------------------------------------------------------------------------------------- enode-merge! [102] 100.0% [119] 532(0.1%) 532(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ----------------------------------------------------------------------------------------- for-loop [103] 100.0% [120] 450(0.1%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 ??? [252] 100.0% ----------------------------------------------------------------------------------------- ??? [101] 100.0% [121] 320(0.1%) 320(0.1%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ----------------------------------------------------------------------------------------- curry* [105] 100.0% [122] 318(0.1%) 318(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ----------------------------------------------------------------------------------------- for-loop [106] 100.0% [123] 206(0.0%) 206(0.0%) ??? /home/ztatlock/herbie/src/points.rkt:156:9 ----------------------------------------------------------------------------------------- matcher [104] 100.0% [124] 100(0.0%) 0(0.0%) for-loop ...lock/herbie/src/core/matcher.rkt:155:6 pattern-substitute [140] 100.0% ----------------------------------------------------------------------------------------- adopt-enode! [114] 4.4% loop! [109] 95.6% [125] 27234(6.1%) 8892(2.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [144] 56.4% for-loop [146] 10.9% ----------------------------------------------------------------------------------------- ??? [108] 100.0% [126] 22766(5.1%) 102(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [142] 99.6% ----------------------------------------------------------------------------------------- for-loop [110] 100.0% [127] 16604(3.7%) 452(0.1%) for-loop ...tlock/herbie/src/core/egraph.rkt:223:8 hash-update! [143] 97.3% ----------------------------------------------------------------------------------------- new-enode [115] 4.9% loop! [109] 95.1% [128] 16414(3.7%) 16414(3.7%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------------------------------- mk-enode! [96] 11.5% ??? [108] 88.5% [129] 15920(3.6%) 8050(1.8%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [141] 37.0% ??? [148] 12.4% ----------------------------------------------------------------------------------------- approximate9 [111] 100.0% [130] 5838(1.3%) 0(0.0%) loop ...e/ztatlock/herbie/src/core/taylor.rkt:83:4 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- f6 [149] 18.9% hash-ref! [208] 33.8% approximate9 [111] 47.3% [131] 4570(1.0%) 0(0.0%) taylor-sqrt ...ck/herbie/src/core/taylor.rkt:342:0 hash-ref! [208] 79.4% simplify [145] 17.1% first-nonzero-exp [30] 3.5% ----------------------------------------------------------------------------------------- ??? [112] 100.0% [132] 1766(0.4%) 1348(0.3%) for-loop ...atlock/herbie/src/core/ematch.rkt:51:7 ??? [108] 23.7% ----------------------------------------------------------------------------------------- ??? [108] 100.0% [133] 1160(0.3%) 0(0.0%) ??? ...ztatlock/herbie/src/core/alt-table.rkt:54:0 ??? [92] 100.0% ----------------------------------------------------------------------------------------- extract-alt [39] 31.5% best-alt [117] 68.5% [134] 1078(0.2%) 0(0.0%) loop /home/ztatlock/herbie/src/common.rkt:135:2 composed [147] 100.0% ----------------------------------------------------------------------------------------- mk-enode! [96] 16.1% update-leader! [91] 30.6% new-enode [115] 53.2% [135] 620(0.1%) 620(0.1%) mutable-set .../racket/private/set-types.rkt:999:0 ----------------------------------------------------------------------------------------- extract-alt [39] 22.1% best-alt [117] 77.9% [136] 542(0.1%) 0(0.0%) argmins /home/ztatlock/herbie/src/common.rkt:134:0 composed [147] 100.0% ----------------------------------------------------------------------------------------- ??? [108] 100.0% [137] 492(0.1%) 0(0.0%) atab-add-altns ...rbie/src/core/alt-table.rkt:50:0 atab-add-altn [142] 100.0% ----------------------------------------------------------------------------------------- new-enode [115] 100.0% [138] 328(0.1%) 328(0.1%) check-valid-enode5 ...bie/src/core/enode.rkt:177:0 ----------------------------------------------------------------------------------------- custom-set-union! [118] 100.0% [139] 108(0.0%) 108(0.0%) for-loop ...cts/racket/private/set-types.rkt:253:4 ----------------------------------------------------------------------------------------- pattern-substitute [140] 50.0% for-loop [124] 50.0% [140] 100(0.0%) 100(0.0%) pattern-substitute ...ie/src/core/matcher.rkt:72:0 pattern-substitute [140] 50.0% ----------------------------------------------------------------------------------------- hash-has-key? [129] 19.0% table-ref [81] 81.0% [141] 31080(7.0%) 10598(2.4%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [151] 52.4% ??? [160] 8.4% successfully-got-the-right-kind-of-function [231] 2.5% ??? [254] 1.6% arrow-higher-order:lnp [232] 1.0% ----------------------------------------------------------------------------------------- atab-add-altns [137] 2.1% for-loop [126] 97.9% [142] 23156(5.2%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [150] 98.6% loop [155] 0.4% ----------------------------------------------------------------------------------------- for-loop [127] 100.0% [143] 16152(3.6%) 200(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [152] 98.8% ----------------------------------------------------------------------------------------- custom-set-union [125] 100.0% [144] 15360(3.5%) 4918(1.1%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [153] 68.0% ----------------------------------------------------------------------------------------- taylor-quotient [11] 1.2% for-loop [22] 1.2% for-loop [23] 1.2% ??? [92] 2.1% loop [224] 2.4% taylor-sqrt [131] 8.1% hash-ref! [208] 81.6% [145] 9692(2.2%) 226(0.1%) simplify ...atlock/herbie/src/core/reduce.rkt:15:0 f6 [149] 69.1% parse-loop12 [172] 13.2% debug7 [189] 5.6% simplify* [187] 4.8% debug-print [154] 3.6% simplify-node [178] 1.3% ----------------------------------------------------------------------------------------- custom-set-union [125] 100.0% [146] 2982(0.7%) 2982(0.7%) for-loop ...cts/racket/private/set-types.rkt:152:2 ----------------------------------------------------------------------------------------- argmins [136] 21.1% f6 [149] 37.1% loop [134] 41.9% [147] 2574(0.6%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [157] 62.9% f6 [149] 37.1% ----------------------------------------------------------------------------------------- table-ref [81] 10.1% hash-has-key? [129] 89.9% [148] 2194(0.5%) 2194(0.5%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ----------------------------------------------------------------------------------------- composed [147] 0.3% parse-loop12 [172] 0.8% append-map [164] 1.1% approximate9 [111] 1.1% hash-ref! [208] 1.7% eval-const-expr [28] 2.2% eval-prog [207] 5.3% map [158] 6.0% simplify [145] 7.8% f6 [149] 12.6% split-table [38] 61.2% [149] 39742(9.0%) 1646(0.4%) f6 ...et/collects/racket/match/compiler.rkt:507:40 option-on-expr [156] 52.8% map [158] 13.9% f6 [149] 12.6% loop [224] 6.4% ??? [92] 5.5% exprs-to-branch-on [163] 2.0% append-map [164] 1.4% taylor-sqrt [131] 0.9% ??? [167] 0.5% taylor-quotient [11] 0.4% ...erbie/src/common.rkt:46:2 [82] 0.3% ??? [161] 0.3% composed [147] 0.3% table-ref [81] 0.3% combine-mterms [14] 0.2% taylor [180] 0.1% ----------------------------------------------------------------------------------------- atab-add-altn [142] 100.0% [150] 22838(5.1%) 336(0.1%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [157] 97.5% ----------------------------------------------------------------------------------------- ??? [141] 100.0% [151] 16294(3.7%) 9658(2.2%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [160] 25.0% for-loop [162] 8.2% ??? [166] 4.2% arrow-higher-order:lnp [232] 2.6% successfully-got-the-right-kind-of-function [231] 0.6% ----------------------------------------------------------------------------------------- hash-update! [143] 100.0% [152] 15952(3.6%) 290(0.1%) ??? .../ztatlock/herbie/src/core/egraph.rkt:225:24 for-loop [159] 98.2% ----------------------------------------------------------------------------------------- for-loop [144] 100.0% [153] 10442(2.4%) 10442(2.4%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------------------------------- iterate-egraph!5 [36] 24.9% simplify [145] 26.1% for-loop [57] 48.9% [154] 1324(0.3%) 548(0.1%) debug-print ...ztatlock/herbie/src/debug.rkt:107:0 for-loop [165] 58.6% ----------------------------------------------------------------------------------------- atab-add-altn [142] 100.0% [155] 102(0.0%) 0(0.0%) loop ...atlock/herbie/src/core/alt-table.rkt:182:2 loop [168] 100.0% ----------------------------------------------------------------------------------------- loop [224] 10.0% f6 [149] 90.0% [156] 26686(6.0%) 118(0.0%) option-on-expr ...erbie/src/core/regimes.rkt:115:0 sort-context-on-expr [169] 84.3% pick-errors [174] 6.8% loop [224] 4.0% errors [157] 3.4% err-lsts->split-indices [182] 1.2% ----------------------------------------------------------------------------------------- option-on-expr [156] 3.4% loop [224] 4.1% composed [147] 6.2% best-and-tied-at-points [150] 85.0% [157] 26186(5.9%) 0(0.0%) errors /home/ztatlock/herbie/src/points.rkt:184:0 for-loop [170] 84.7% eval-prog [207] 15.3% ----------------------------------------------------------------------------------------- simplify [3] 0.1% loop [224] 0.3% ??? [176] 0.5% loop [99] 30.9% make-exacts* [95] 32.1% f6 [149] 35.9% [158] 21060(4.7%) 278(0.1%) map ...acket/collects/racket/private/map.rkt:20:13 loop [224] 63.3% f6 [149] 20.1% parse-loop12 [172] 9.1% make-multiplication-node [177] 1.5% ??? [176] 1.3% simplify-node [178] 1.2% simplify* [187] 0.9% ->flonum [236] 0.5% taylor [180] 0.5% ----------------------------------------------------------------------------------------- ??? [152] 100.0% [159] 15662(3.5%) 13288(3.0%) for-loop ...lock/herbie/src/core/egraph.rkt:226:26 update-en-expr [171] 15.2% ----------------------------------------------------------------------------------------- ??? [141] 39.1% for-loop [151] 60.9% [160] 6694(1.5%) 2348(0.5%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [173] 64.9% ----------------------------------------------------------------------------------------- f6 [149] 6.6% ??? [92] 34.3% for-loop [73] 59.1% [161] 1800(0.4%) 1464(0.3%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 get/build-late-neg-projection [181] 18.7% ----------------------------------------------------------------------------------------- for-loop [151] 100.0% [162] 1342(0.3%) 880(0.2%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [260] 18.9% ??? [183] 15.5% ----------------------------------------------------------------------------------------- f6 [149] 100.0% [163] 986(0.2%) 0(0.0%) exprs-to-branch-on ...ie/src/core/regimes.rkt:44:0 critical-subexpression [175] 100.0% ----------------------------------------------------------------------------------------- f6 [149] 100.0% [164] 954(0.2%) 248(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 f6 [149] 77.8% free-variables [13] 14.1% ----------------------------------------------------------------------------------------- debug-print [154] 100.0% [165] 776(0.2%) 776(0.2%) for-loop /home/ztatlock/herbie/src/debug.rkt:113:2 ----------------------------------------------------------------------------------------- for-loop [151] 100.0% [166] 688(0.2%) 242(0.1%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [179] 64.8% ----------------------------------------------------------------------------------------- f6 [149] 100.0% [167] 216(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [262] 100.0% ----------------------------------------------------------------------------------------- loop [155] 100.0% [168] 102(0.0%) 102(0.0%) loop ...cket/collects/racket/private/hash.rkt:20:4 ----------------------------------------------------------------------------------------- option-on-expr [156] 100.0% [169] 22490(5.1%) 0(0.0%) sort-context-on-expr ...herbie/src/points.rkt:79:0 ??? [184] 100.0% ----------------------------------------------------------------------------------------- errors [157] 100.0% [170] 22180(5.0%) 656(0.1%) for-loop ...e/ztatlock/herbie/src/points.rkt:187:4 ??? [228] 87.9% ->flonum [236] 6.1% ulp-difference [191] 2.5% ----------------------------------------------------------------------------------------- for-loop [110] 0.8% for-loop [103] 2.1% update-leader! [91] 5.8% for-loop [159] 16.9% for-loop [94] 20.6% loop! [109] 53.8% [171] 14030(3.2%) 14030(3.2%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 ----------------------------------------------------------------------------------------- parse-loop12 [172] 9.5% hash-ref! [208] 10.6% simplify [145] 12.8% map [158] 26.1% for-loop [25] 41.1% [172] 6016(1.4%) 3362(0.8%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 for-loop [185] 41.1% loop [224] 10.2% parse-loop12 [172] 9.5% f6 [149] 5.1% simplify* [187] 1.9% loop [16] 0.4% ----------------------------------------------------------------------------------------- ??? [160] 100.0% [173] 4346(1.0%) 4346(1.0%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ----------------------------------------------------------------------------------------- option-on-expr [156] 100.0% [174] 1802(0.4%) 0(0.0%) pick-errors ...k/herbie/src/core/regimes.rkt:187:0 for-loop [186] 100.0% ----------------------------------------------------------------------------------------- exprs-to-branch-on [163] 100.0% [175] 986(0.2%) 0(0.0%) critical-subexpression ...rc/core/regimes.rkt:52:0 for-loop [188] 100.0% ----------------------------------------------------------------------------------------- map [158] 18.0% loop [224] 82.0% [176] 636(0.1%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [208] 88.6% map [158] 11.4% ----------------------------------------------------------------------------------------- map [158] 100.0% [177] 604(0.1%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:219:0 make-multiplication-subnode [190] 100.0% ----------------------------------------------------------------------------------------- simplify [145] 22.3% map [158] 77.7% [178] 574(0.1%) 224(0.1%) simplify-node ...k/herbie/src/core/reduce.rkt:39:0 combine-aterms [192] 61.0% ----------------------------------------------------------------------------------------- ??? [166] 100.0% [179] 446(0.1%) 318(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [195] 28.7% ----------------------------------------------------------------------------------------- hash-ref! [208] 22.6% map [158] 24.4% f6 [149] 53.0% [180] 434(0.1%) 0(0.0%) taylor ...tatlock/herbie/src/core/taylor.rkt:159:0 loop [224] 53.0% debug7 [189] 47.0% ----------------------------------------------------------------------------------------- ??? [161] 100.0% [181] 336(0.1%) 114(0.0%) get/build-late-neg-projection ...te/guts.rkt:691:0 unconstrained-domain->-projection [194] 66.1% ----------------------------------------------------------------------------------------- option-on-expr [156] 100.0% [182] 308(0.1%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:238:0 add-splitpoint [193] 100.0% ----------------------------------------------------------------------------------------- for-loop [162] 100.0% [183] 208(0.0%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [260] 100.0% ----------------------------------------------------------------------------------------- sort-context-on-expr [169] 99.6% [184] 22584(5.1%) 100(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [196] 85.0% loop [205] 14.6% ----------------------------------------------------------------------------------------- parse-loop12 [172] 100.0% [185] 3358(0.8%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:486:59 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- pick-errors [174] 100.0% [186] 1802(0.4%) 0(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:190:4 eval-prog [207] 93.3% ??? [228] 6.7% ----------------------------------------------------------------------------------------- parse-loop12 [172] 9.1% simplify [145] 38.1% map [158] 52.8% [187] 1232(0.3%) 548(0.1%) simplify* ...tlock/herbie/src/core/reduce.rkt:20:0 hash-ref! [208] 24.7% ??? [200] 22.1% return/no-unsupplied [257] 8.8% ----------------------------------------------------------------------------------------- critical-subexpression [175] 100.0% [188] 986(0.2%) 0(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:87:19 eval-prog [207] 100.0% ----------------------------------------------------------------------------------------- simplify-expr [19] 13.6% taylor [180] 23.6% simplify [145] 62.8% [189] 866(0.2%) 314(0.1%) debug7 /home/ztatlock/herbie/src/debug.rkt:102:0 ??? [108] 37.2% ??? [256] 26.6% ----------------------------------------------------------------------------------------- make-multiplication-node [177] 100.0% [190] 604(0.1%) 148(0.0%) make-multiplication-subnode ...re/reduce.rkt:229:0 group-by68 [198] 57.3% for-loop [201] 18.2% ----------------------------------------------------------------------------------------- for-loop [170] 100.0% [191] 554(0.1%) 0(0.0%) ulp-difference ...atlock/herbie/src/float.rkt:19:0 ??? [252] 100.0% ----------------------------------------------------------------------------------------- simplify-node [178] 100.0% [192] 350(0.1%) 0(0.0%) combine-aterms ...herbie/src/core/reduce.rkt:172:0 for-loop [197] 100.0% ----------------------------------------------------------------------------------------- err-lsts->split-indices [182] 100.0% [193] 308(0.1%) 0(0.0%) add-splitpoint ...erbie/src/core/regimes.rkt:251:2 for-loop [199] 100.0% ----------------------------------------------------------------------------------------- get/build-late-neg-projection [181] 100.0% [194] 222(0.1%) 222(0.1%) unconstrained-domain->-projection ...rrow.rkt:60:0 ----------------------------------------------------------------------------------------- check-hash/c [179] 100.0% [195] 128(0.0%) 128(0.0%) flat-contract? .../contract/private/guts.rkt:111:0 ----------------------------------------------------------------------------------------- ??? [184] 100.0% [196] 19198(4.3%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [202] 83.6% loop [205] 15.9% jloop [4] 0.5% ----------------------------------------------------------------------------------------- combine-aterms [192] 100.0% [197] 350(0.1%) 248(0.1%) for-loop ...tlock/herbie/src/core/reduce.rkt:174:4 hash-ref! [208] 29.1% ----------------------------------------------------------------------------------------- make-multiplication-subnode [190] 100.0% [198] 346(0.1%) 346(0.1%) group-by68 ...acket/collects/racket/list.rkt:749:0 ----------------------------------------------------------------------------------------- add-splitpoint [193] 100.0% [199] 308(0.1%) 100(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:253:4 for-loop [203] 67.5% ----------------------------------------------------------------------------------------- simplify* [187] 100.0% [200] 272(0.1%) 114(0.0%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [263] 58.1% ----------------------------------------------------------------------------------------- make-multiplication-subnode [190] 100.0% [201] 110(0.0%) 0(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:231:3 loop [204] 100.0% ----------------------------------------------------------------------------------------- generic-sort/key [196] 44.7% copying-mergesort [202] 55.3% [202] 16050(3.6%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [202] 55.3% loop [205] 33.1% jloop [4] 11.6% ----------------------------------------------------------------------------------------- for-loop [199] 100.0% [203] 208(0.0%) 208(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:257:8 ----------------------------------------------------------------------------------------- errors-score [34] 46.1% for-loop [201] 53.9% [204] 204(0.0%) 204(0.0%) loop ...hare/racket/collects/racket/list.rkt:551:2 ----------------------------------------------------------------------------------------- generic-sort/key [196] 20.4% ??? [184] 22.0% copying-mergesort [202] 57.6% [205] 14944(3.4%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [206] 98.6% ??? [228] 0.7% ->flonum [236] 0.7% ----------------------------------------------------------------------------------------- jloop [4] 32.9% loop [205] 67.1% [206] 21952(4.9%) 508(0.1%) ??? /home/ztatlock/herbie/src/points.rkt:81:27 eval-prog [207] 87.1% ??? [228] 9.4% ->flonum [236] 1.1% ----------------------------------------------------------------------------------------- loop [84] 1.2% make-exacts* [95] 2.4% for-loop [188] 3.7% for-loop [186] 6.3% errors [157] 15.0% ??? [206] 71.5% [207] 26760(6.0%) 14044(3.2%) eval-prog ...tatlock/herbie/src/programs.rkt:146:0 f6 [149] 27.9% hash-ref! [208] 8.7% ??? [209] 3.0% go [211] 1.9% parse-lambda [212] 1.6% ??? [210] 1.5% ??? [213] 1.2% parse-app [214] 0.4% ----------------------------------------------------------------------------------------- for-loop [32] 0.1% for-loop [45] 0.1% for-loop [197] 0.2% simplify* [187] 0.5% update-leader! [91] 1.0% for-loop [26] 1.7% ??? [41] 1.8% for-loop [185] 2.1% first-nonzero-exp [30] 2.3% ??? [176] 2.4% ??? [217] 3.2% taylor-sqrt [131] 3.4% for-loop [40] 3.5% eval-prog [207] 5.4% for-loop [22] 6.0% loop [130] 6.3% loop [224] 7.4% for-loop [23] 7.9% ??? [216] 8.3% compile [85] 16.8% ??? [215] 17.3% [208] 18160(4.1%) 5430(1.2%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [215] 29.2% simplify [145] 9.0% ??? [216] 8.3% ??? [6] 8.0% ??? [5] 7.5% bigfloat-hash [218] 4.9% ??? [217] 3.5% ??? [8] 3.5% parse-loop12 [172] 2.8% ??? [9] 2.1% f6 [149] 1.8% ??? [10] 1.7% taylor-sqrt [131] 1.5% taylor [180] 0.3% ??? [15] 0.1% ----------------------------------------------------------------------------------------- eval-prog [207] 100.0% [209] 806(0.2%) 226(0.1%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [220] 72.0% ----------------------------------------------------------------------------------------- eval-const-expr [28] 43.5% eval-prog [207] 56.5% [210] 718(0.2%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack242 [219] 100.0% ----------------------------------------------------------------------------------------- eval-prog [207] 100.0% [211] 520(0.1%) 286(0.1%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [221] 45.0% ----------------------------------------------------------------------------------------- eval-prog [207] 100.0% [212] 428(0.1%) 212(0.0%) parse-lambda ...llects/racket/private/kw.rkt:437:2 loop [222] 25.2% simple-args? [223] 25.2% ----------------------------------------------------------------------------------------- eval-prog [207] 100.0% [213] 314(0.1%) 100(0.0%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ??? [260] 68.2% ----------------------------------------------------------------------------------------- eval-const-expr [28] 46.9% eval-prog [207] 53.1% [214] 192(0.0%) 192(0.0%) parse-app .../collects/racket/private/kw.rkt:951:2 ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [215] 7226(1.6%) 1564(0.4%) ??? /home/ztatlock/herbie/src/programs.rkt:181:5 hash-ref! [208] 61.8% loop [224] 27.7% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [216] 5638(1.3%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:64:15 hash-ref! [208] 100.0% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [217] 3462(0.8%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:43:15 hash-ref! [208] 95.3% ??? [41] 4.7% ----------------------------------------------------------------------------------------- hash-ref! [208] 100.0% [218] 2092(0.5%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [225] 87.0% sig+exp->bigfloat [227] 13.0% ----------------------------------------------------------------------------------------- ??? [210] 100.0% [219] 718(0.2%) 98(0.0%) unpack242 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [226] 86.4% ----------------------------------------------------------------------------------------- ??? [209] 100.0% [220] 580(0.1%) 580(0.1%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ----------------------------------------------------------------------------------------- loop [221] 30.8% go [211] 69.2% [221] 234(0.1%) 234(0.1%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [221] 30.8% ----------------------------------------------------------------------------------------- parse-lambda [212] 20.0% loop [222] 80.0% [222] 108(0.0%) 108(0.0%) loop .../collects/racket/private/stxcase.rkt:112:7 loop [222] 80.0% ----------------------------------------------------------------------------------------- parse-lambda [212] 100.0% [223] 108(0.0%) 108(0.0%) simple-args? ...llects/racket/private/kw.rkt:350:2 ----------------------------------------------------------------------------------------- make-exacts* [95] 0.2% parse-loop12 [172] 0.2% map [158] 0.2% taylor [180] 0.3% map-enodes [52] 0.7% option-on-expr [156] 0.9% match-e [71] 2.2% ??? [215] 2.4% f6 [149] 2.9% for-loop [79] 3.0% loop! [109] 7.6% extract-alt [39] 10.0% loop [224] 69.4% [224] 84440(19.0%) 5622(1.3%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [224] 69.4% simplify [3] 10.0% loop! [109] 7.1% option-on-expr [156] 2.9% hash-ref! [208] 2.3% foldl [229] 0.9% errors [157] 0.9% curried [230] 0.7% for-loop [7] 0.6% ??? [228] 0.4% simplify [145] 0.3% ??? [176] 0.2% map [158] 0.1% set-precompute! [234] 0.0% ->flonum [236] 0.0% ----------------------------------------------------------------------------------------- bigfloat-hash [218] 100.0% [225] 1820(0.4%) 1716(0.4%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [233] 5.7% ----------------------------------------------------------------------------------------- unpack242 [219] 100.0% [226] 620(0.1%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [231] 66.1% arrow-higher-order:lnp [232] 33.9% ----------------------------------------------------------------------------------------- bigfloat-hash [218] 100.0% [227] 272(0.1%) 272(0.1%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ----------------------------------------------------------------------------------------- loop [205] 0.3% for-loop [186] 0.3% jloop [4] 0.6% ??? [206] 5.1% loop [224] 45.6% for-loop [170] 48.2% [228] 40462(9.1%) 1230(0.3%) ??? /home/ztatlock/herbie/src/programs.rkt:152:4 ??? [235] 80.8% ??? [237] 8.8% ->flonum [236] 7.4% ----------------------------------------------------------------------------------------- for-loop [79] 17.7% loop [224] 82.3% [229] 1620(0.4%) 832(0.2%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [239] 48.6% ----------------------------------------------------------------------------------------- for-loop [79] 22.2% for-loop [7] 23.7% loop [224] 54.1% [230] 1516(0.3%) 1516(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ----------------------------------------------------------------------------------------- for-loop [151] 7.7% maybe-cons-kwd [226] 32.2% ??? [141] 60.1% [231] 1274(0.3%) 730(0.2%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [241] 42.7% ----------------------------------------------------------------------------------------- maybe-cons-kwd [226] 21.8% ??? [141] 33.5% for-loop [151] 44.7% [232] 962(0.2%) 390(0.1%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [240] 59.5% ----------------------------------------------------------------------------------------- bfcanonicalize [225] 100.0% [233] 104(0.0%) 0(0.0%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 new-mpz [242] 100.0% ----------------------------------------------------------------------------------------- loop [224] 100.0% [234] 100(0.0%) 0(0.0%) set-precompute! ...bie/src/core/simplify.rkt:160:0 make-sequence [238] 100.0% ----------------------------------------------------------------------------------------- ??? [228] 100.0% [235] 32686(7.4%) 16000(3.6%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [253] 17.4% ??? [243] 13.0% ??? [245] 9.5% bf* [246] 9.5% ...higher-order.rkt:346:33 [248] 1.0% ??? [260] 0.7% ----------------------------------------------------------------------------------------- loop [205] 1.8% loop [16] 2.0% ??? [92] 2.4% map [158] 3.9% ??? [206] 4.4% loop [224] 8.0% for-loop [170] 24.3% ??? [228] 53.2% [236] 5596(1.3%) 178(0.0%) ->flonum .../ztatlock/herbie/src/programs.rkt:34:0 ??? [252] 92.5% ??? [250] 4.3% ----------------------------------------------------------------------------------------- ??? [92] 10.7% ??? [228] 89.3% [237] 3996(0.9%) 232(0.1%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [244] 86.4% integer->bigfloat [249] 7.8% ----------------------------------------------------------------------------------------- set-precompute! [234] 11.8% reduce-to-single! [78] 12.1% update-leader! [91] 13.7% for-loop [60] 22.9% merge-egraph-nodes! [80] 39.5% [238] 846(0.2%) 646(0.1%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [251] 23.6% ----------------------------------------------------------------------------------------- foldl [229] 100.0% [239] 788(0.2%) 788(0.2%) merge2 ...ztatlock/herbie/src/core/ematch.rkt:31:0 ----------------------------------------------------------------------------------------- arrow-higher-order:lnp [232] 100.0% [240] 572(0.1%) 572(0.1%) ??? ...et/contract/private/arity-checking.rkt:19:2 ----------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [231]100.0% [241] 544(0.1%) 122(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [247] 77.6% ----------------------------------------------------------------------------------------- bigfloat->sig+exp [233] 100.0% [242] 104(0.0%) 104(0.0%) new-mpz ...-lib/math/private/bigfloat/gmp.rkt:73:0 ----------------------------------------------------------------------------------------- ??? [235] 100.0% [243] 4252(1.0%) 206(0.0%) ??? ...tatlock/herbie/src/syntax/syntax.rkt:118:17 ??? [252] 95.2% ----------------------------------------------------------------------------------------- ??? [237] 100.0% [244] 3454(0.8%) 2606(0.6%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [265] 24.6% ----------------------------------------------------------------------------------------- eval-const-expr [28] 2.9% ??? [235] 97.1% [245] 3200(0.7%) 3200(0.7%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ----------------------------------------------------------------------------------------- ??? [235] 100.0% [246] 3090(0.7%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [253] 100.0% ----------------------------------------------------------------------------------------- arity-checking-wrapper [241] 100.0% [247] 422(0.1%) 422(0.1%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ----------------------------------------------------------------------------------------- ??? [235] 100.0% [248] 342(0.1%) 126(0.0%) ...higher-order.rkt:346:33 (unknown source) ??? [254] 63.2% ----------------------------------------------------------------------------------------- ??? [237] 100.0% [249] 310(0.1%) 218(0.0%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ??? [265] 29.7% ----------------------------------------------------------------------------------------- ->flonum [236] 100.0% [250] 242(0.1%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [265] 100.0% ----------------------------------------------------------------------------------------- make-sequence [238] 100.0% [251] 200(0.0%) 98(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [255] 51.0% ----------------------------------------------------------------------------------------- *simplify-rules* [54] 1.0% for-loop [103] 2.0% ormap [120] 4.3% ulp-difference [191] 5.3% ??? [243] 38.4% ->flonum [236] 49.1% [252] 10548(2.4%) 5482(1.2%) ??? /home/ztatlock/herbie/src/config.rkt:48:0 return/no-unsupplied [257] 23.8% ??? [256] 23.2% ----------------------------------------------------------------------------------------- bf* [246] 35.2% ??? [235] 64.8% [253] 8768(2.0%) 3310(0.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfdiv [258] 50.8% bfsqrt [261] 11.5% ----------------------------------------------------------------------------------------- ...higher-order.rkt:346:33 [248] 3.2% ??? [141] 7.2% table-ref [81] 11.6% ??? [100] 77.9% [254] 6684(1.5%) 3256(0.7%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [100] 23.1% for-loop [259] 20.4% ??? [260] 4.5% ??? [262] 3.2% ----------------------------------------------------------------------------------------- ??? [251] 9.8% setfindf [27] 10.7% ??? [112] 12.3% match-e [71] 67.2% [255] 1044(0.2%) 1044(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ----------------------------------------------------------------------------------------- debug7 [189] 4.5% ??? [101] 14.7% table-ref [81] 33.3% ??? [252] 47.5% [256] 5150(1.2%) 1180(0.3%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [263] 71.1% ??? [262] 6.0% ----------------------------------------------------------------------------------------- simplify* [187] 2.2% table-ref [81] 22.0% ??? [101] 23.6% ??? [252] 52.1% [257] 4824(1.1%) 3066(0.7%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [264] 36.4% ----------------------------------------------------------------------------------------- ??? [253] 100.0% [258] 4450(1.0%) 2966(0.7%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [265] 33.3% ----------------------------------------------------------------------------------------- ??? [254] 100.0% [259] 1362(0.3%) 836(0.2%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [100] 38.6% ----------------------------------------------------------------------------------------- ??? [183] 17.4% ??? [213] 17.9% ??? [235] 18.1% for-loop [162] 21.2% ??? [254] 25.4% [260] 1196(0.3%) 402(0.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [266] 66.4% ----------------------------------------------------------------------------------------- ??? [253] 100.0% [261] 1008(0.2%) 890(0.2%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [265] 11.7% ----------------------------------------------------------------------------------------- ??? [167] 4.0% ??? [254] 4.0% ??? [256] 5.7% ??? [108] 9.9% ??? [100] 21.4% ??? [92] 54.9% [262] 5358(1.2%) 1328(0.3%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [108] 57.0% contract? [267] 14.8% dict? [268] 3.4% ----------------------------------------------------------------------------------------- ??? [200] 4.1% ??? [256] 95.9% [263] 3820(0.9%) 3728(0.8%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [270] 2.4% ----------------------------------------------------------------------------------------- match-e [71] 6.4% for-loop [60] 10.1% one-iter [48] 12.7% for-loop [79] 13.8% return/no-unsupplied [257] 57.0% [264] 3082(0.7%) 3082(0.7%) filter ...t/collects/racket/private/list.rkt:256:2 ----------------------------------------------------------------------------------------- integer->bigfloat [249] 3.3% bfsqrt [261] 4.2% ??? [250] 8.7% real->bigfloat [244] 30.5% bfdiv [258] 53.3% [265] 2784(0.6%) 2784(0.6%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ----------------------------------------------------------------------------------------- ??? [260] 100.0% [266] 794(0.2%) 372(0.1%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [269] 53.1% ----------------------------------------------------------------------------------------- ??? [262] 100.0% [267] 792(0.2%) 792(0.2%) contract? ...acket/contract/private/guts.rkt:109:0 ----------------------------------------------------------------------------------------- *rules* [12] 26.1% ??? [262] 32.5% table-ref [81] 41.3% [268] 566(0.1%) 566(0.1%) dict? ...ollects/racket/private/generic.rkt:146:11 ----------------------------------------------------------------------------------------- ??? [266] 100.0% [269] 422(0.1%) 422(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ----------------------------------------------------------------------------------------- ??? [263] 100.0% [270] 92(0.0%) 92(0.0%) ??? ...ects/racket/contract/private/prop.rkt:256:4 -----------------------------------------------------------------------------------------