Profiling results ----------------- Total cpu time observed: 475072ms (out of 477783ms) Number of samples taken: 2290 (once every 207ms) (Hiding functions with self<1.0% and local<2.0%: 18 of 297 hidden) ================================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================================ [1] 474631(99.9%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [15] 100.0% -------------------------------------------------------------------------------- loop [107] 100.0% [2] 108788(22.9%) 0(0.0%) sidx->spoint .../herbie/src/core/regimes.rkt:126:2 binary-search [16] 53.5% binary-search-floats [17] 46.5% -------------------------------------------------------------------------------- ??? [245] 100.0% [3] 22811(4.8%) 210(0.0%) approximate9 ...ch/herbie/src/core/taylor.rkt:12:0 loop [18] 97.2% for-loop [26] 1.8% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [4] 20482(4.3%) 0(0.0%) ??? ...k/research/herbie/src/core/taylor.rkt:44:15 ??? [30] 91.7% hash-ref! [252] 6.2% simplify [40] 2.1% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [5] 19208(4.0%) 227(0.0%) ??? .../research/herbie/src/core/taylor.rkt:285:26 for-loop [19] 99.8% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [6] 16027(3.4%) 0(0.0%) ??? .../research/herbie/src/core/taylor.rkt:295:23 for-loop [20] 100.0% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [7] 9485(2.0%) 0(0.0%) ??? ...k/research/herbie/src/core/taylor.rkt:67:15 ??? [245] 91.1% hash-ref! [252] 8.9% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [8] 8766(1.8%) 0(0.0%) ??? .../research/herbie/src/core/taylor.rkt:392:23 for-loop [21] 100.0% -------------------------------------------------------------------------------- parse-loop374 [9] 6.5% gather-additive-terms6 [56] 18.0% append-map [141] 75.5% [9] 2369(0.5%) 221(0.0%) parse-loop374 (unknown source) parse-loop395 [22] 35.5% make-multiplication-node [35] 27.4% simplify-node [47] 21.3% parse-loop374 [9] 6.5% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [10] 1204(0.3%) 0(0.0%) f8 (unknown source) map [130] 100.0% -------------------------------------------------------------------------------- rewriter [112] 100.0% [11] 808(0.2%) 0(0.0%) *rules* ...earch/herbie/src/syntax/rules.rkt:512:0 for-loop [23] 100.0% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [12] 662(0.1%) 0(0.0%) ??? .../research/herbie/src/core/taylor.rkt:483:23 for-loop [24] 100.0% -------------------------------------------------------------------------------- taylor [266] 100.0% [13] 644(0.1%) 0(0.0%) taylor-invert .../herbie/src/core/taylor.rkt:312:0 simplify [40] 65.3% first-nonzero-exp [27] 34.7% -------------------------------------------------------------------------------- parse-loop80 [159] 49.2% map [130] 50.8% [14] 435(0.1%) 0(0.0%) ??? ...ck/research/herbie/src/core/reduce.rkt:61:5 for-loop [25] 100.0% -------------------------------------------------------------------------------- ??? [1] 100.0% [15] 474631(99.9%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [28] 100.0% -------------------------------------------------------------------------------- sidx->spoint [2] 100.0% [16] 58182(12.2%) 0(0.0%) binary-search ...earch/herbie/src/common.rkt:226:0 pred [29] 100.0% -------------------------------------------------------------------------------- sidx->spoint [2] 100.0% [17] 50606(10.7%) 0(0.0%) binary-search-floats ...erbie/src/common.rkt:241:0 pred [29] 100.0% -------------------------------------------------------------------------------- approximate9 [3] 100.0% [18] 22180(4.7%) 0(0.0%) loop ...k/research/herbie/src/core/taylor.rkt:86:4 ??? [245] 56.3% hash-ref! [252] 42.8% -------------------------------------------------------------------------------- ??? [5] 100.0% [19] 19208(4.0%) 430(0.1%) for-loop ...arch/herbie/src/core/taylor.rkt:285:52 ??? [30] 67.3% hash-ref! [252] 30.3% simplify [40] 2.0% -------------------------------------------------------------------------------- ??? [6] 100.0% [20] 16027(3.4%) 220(0.0%) for-loop ...arch/herbie/src/core/taylor.rkt:298:27 hash-ref! [252] 99.2% simplify [40] 0.5% -------------------------------------------------------------------------------- ??? [8] 100.0% [21] 8766(1.8%) 0(0.0%) for-loop ...arch/herbie/src/core/taylor.rkt:396:33 hash-ref! [252] 100.0% -------------------------------------------------------------------------------- parse-loop374 [9] 100.0% [22] 841(0.2%) 0(0.0%) parse-loop395 (unknown source) for-loop [31] 100.0% -------------------------------------------------------------------------------- *rules* [11] 100.0% [23] 808(0.2%) 0(0.0%) for-loop (unknown source) ormap [90] 74.2% flag-set? [104] 25.8% -------------------------------------------------------------------------------- ??? [12] 100.0% [24] 662(0.1%) 0(0.0%) for-loop ...arch/herbie/src/core/taylor.rkt:487:35 parse-loop400 [32] 100.0% -------------------------------------------------------------------------------- ??? [14] 100.0% [25] 435(0.1%) 0(0.0%) for-loop ...search/herbie/src/core/reduce.rkt:62:7 pattern-match [33] 100.0% -------------------------------------------------------------------------------- approximate9 [3] 100.0% [26] 421(0.1%) 0(0.0%) for-loop ...earch/herbie/src/core/taylor.rkt:29:18 taylor [266] 100.0% -------------------------------------------------------------------------------- taylor-invert [13] 100.0% [27] 224(0.0%) 0(0.0%) first-nonzero-exp ...bie/src/core/taylor.rkt:260:0 hash-ref! [252] 100.0% -------------------------------------------------------------------------------- profile-thunk16 [15] 100.0% [28] 474631(99.9%) 0(0.0%) run ... v6.12/share/pkgs/profile-lib/main.rkt:39:2 .../more-scheme.rkt:261:28 [34] 100.0% -------------------------------------------------------------------------------- binary-search-floats [17] 46.5% binary-search [16] 53.5% [29] 108788(22.9%) 206(0.0%) pred ...esearch/herbie/src/core/regimes.rkt:132:17 loop [42] 97.4% errors [226] 2.2% -------------------------------------------------------------------------------- ??? [4] 34.1% for-loop [19] 65.9% [30] 18990(4.0%) 0(0.0%) ??? .../research/herbie/src/core/taylor.rkt:288:19 hash-ref! [252] 100.0% -------------------------------------------------------------------------------- parse-loop395 [22] 100.0% [31] 841(0.2%) 0(0.0%) for-loop ...earch/herbie/src/core/reduce.rkt:99:13 make-multiplication-node [35] 50.4% simplify-node [47] 49.6% -------------------------------------------------------------------------------- for-loop [24] 100.0% [32] 662(0.1%) 0(0.0%) parse-loop400 (unknown source) for-loop [36] 100.0% -------------------------------------------------------------------------------- for-loop [37] 24.6% for-loop [25] 75.4% [33] 435(0.1%) 221(0.0%) pattern-match .../herbie/src/core/matcher.rkt:48:0 for-loop [37] 24.6% variable? [161] 24.6% -------------------------------------------------------------------------------- for-loop [82] 16.5% run [28] 83.5% [34] 474631(99.9%) 0(0.0%) .../more-scheme.rkt:261:28 (unknown source) run-improve50 [38] 53.9% loop [42] 29.6% unpack24 [39] 16.5% -------------------------------------------------------------------------------- for-loop [31] 17.7% parse-loop374 [9] 27.0% map [130] 55.3% [35] 2400(0.5%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [41] 100.0% -------------------------------------------------------------------------------- parse-loop400 [32] 100.0% [36] 662(0.1%) 0(0.0%) for-loop ...arch/herbie/src/core/taylor.rkt:490:59 hash-ref! [252] 68.6% simplify [40] 31.4% -------------------------------------------------------------------------------- pattern-match [33] 100.0% [37] 214(0.0%) 0(0.0%) for-loop ...earch/herbie/src/core/matcher.rkt:66:9 pattern-match [33] 100.0% -------------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [34] 100.0% [38] 334288(70.4%) 220(0.0%) run-improve50 ...rch/herbie/src/mainloop.rkt:234:0 for-loop [43] 58.4% get-final-combination [44] 38.0% loop [42] 3.5% -------------------------------------------------------------------------------- .../more-scheme.rkt:261:28 [34] 100.0% [39] 156696(33.0%) 0(0.0%) unpack24 ...arch/herbie/src/core/simplify.rkt:40:0 for-loop [45] 76.0% ??? [52] 24.0% -------------------------------------------------------------------------------- for-loop [36] 1.0% for-loop [20] 1.1% taylor-invert [13] 2.1% ??? [4] 2.1% for-loop [19] 5.4% hash-ref! [252] 87.3% [40] 20456(4.3%) 660(0.1%) simplify ...search/herbie/src/core/reduce.rkt:16:0 f46 [158] 43.6% parse-loop80 [159] 32.9% f67 [46] 8.6% simplify-node [47] 3.2% debug-print [274] 3.2% simplify* [147] 2.2% f16 [50] 2.1% -------------------------------------------------------------------------------- make-multiplication-node [35] 100.0% [41] 2400(0.5%) 229(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [48] 46.1% group-by70 [49] 44.4% -------------------------------------------------------------------------------- run-improve50 [38] 4.6% pred [29] 41.1% .../more-scheme.rkt:261:28 [34] 54.4% [42] 258176(54.3%) 198(0.0%) loop ...tlock/research/herbie/src/points.rkt:199:2 loop [65] 32.7% make-exacts* [68] 28.7% loop [54] 26.6% make-exacts [55] 11.6% for-loop [58] 0.3% debug-print [274] 0.1% -------------------------------------------------------------------------------- run-improve50 [38] 100.0% [43] 195100(41.1%) 0(0.0%) for-loop ...esearch/herbie/src/mainloop.rkt:249:10 run-iter! [51] 100.0% -------------------------------------------------------------------------------- run-improve50 [38] 100.0% [44] 127145(26.8%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:264:0 split-table [53] 99.6% extract-alt [59] 0.4% -------------------------------------------------------------------------------- unpack24 [39] 100.0% [45] 119161(25.1%) 0(0.0%) for-loop ...rch/herbie/src/core/simplify.rkt:63:12 ??? [52] 100.0% -------------------------------------------------------------------------------- parse-loop80 [159] 13.7% simplify [40] 28.8% map [130] 57.6% [46] 6098(1.3%) 2619(0.6%) f67 (unknown source) map [130] 31.6% composed [88] 25.7% compose [149] 3.4% -------------------------------------------------------------------------------- for-loop [31] 7.0% parse-loop374 [9] 11.0% simplify [40] 14.8% map [130] 67.1% [47] 2980(0.6%) 0(0.0%) simplify-node ...h/herbie/src/core/reduce.rkt:50:0 append-map [141] 36.4% gather-additive-terms6 [56] 25.0% combine-mterms [57] 24.6% gather-multiplicative-terms [151] 7.1% combine-aterms [62] 6.9% -------------------------------------------------------------------------------- make-multiplication-subnode [41] 100.0% [48] 1106(0.2%) 0(0.0%) for-loop ...earch/herbie/src/core/reduce.rkt:242:3 make-multiplication-subsubsubnode [60] 39.7% mterm->expr [78] 21.1% partition [61] 20.6% loop [107] 18.6% -------------------------------------------------------------------------------- make-multiplication-subnode [41] 100.0% [49] 1064(0.2%) 1064(0.2%) group-by70 ...v6.12/collects/racket/list.rkt:772:0 -------------------------------------------------------------------------------- simplify [40] 25.0% f16 [50] 75.0% [50] 420(0.1%) 217(0.0%) f16 (unknown source) f16 [50] 75.0% loop [63] 12.1% -------------------------------------------------------------------------------- for-loop [43] 100.0% [51] 195100(41.1%) 0(0.0%) run-iter! ...esearch/herbie/src/mainloop.rkt:215:0 simplify! [64] 80.4% gen-series! [69] 11.7% finalize-iter! [71] 4.8% localize-error [72] 2.2% gen-rewrites! [74] 0.5% choose-best-alt! [79] 0.3% -------------------------------------------------------------------------------- unpack24 [39] 24.0% for-loop [45] 76.0% [52] 156696(33.0%) 0(0.0%) ??? .../research/herbie/src/core/simplify.rkt:74:0 iterate-egraph!13 [66] 90.8% loop [70] 8.6% mk-egraph [76] 0.5% -------------------------------------------------------------------------------- get-final-combination [44] 100.0% [53] 126684(26.7%) 0(0.0%) split-table .../research/herbie/src/glue.rkt:162:0 f12 [67] 100.0% -------------------------------------------------------------------------------- loop [42] 100.0% [54] 68578(14.4%) 0(0.0%) loop ...tlock/research/herbie/src/points.rkt:158:2 loop [65] 70.3% make-exacts* [68] 29.7% -------------------------------------------------------------------------------- loop [42] 100.0% [55] 29878(6.3%) 0(0.0%) make-exacts ...esearch/herbie/src/points.rkt:156:0 make-exacts* [68] 55.3% loop [65] 44.7% -------------------------------------------------------------------------------- gather-additive-terms6 [56] 11.2% simplify-node [47] 11.2% append-map [141] 77.6% [56] 2138(0.4%) 0(0.0%) gather-additive-terms6 ...src/core/reduce.rkt:72:0 append-map [141] 84.4% gather-additive-terms6 [56] 11.2% parse-loop374 [9] 4.4% -------------------------------------------------------------------------------- simplify-node [47] 100.0% [57] 1058(0.2%) 0(0.0%) combine-mterms ...herbie/src/core/reduce.rkt:191:0 for-loop [73] 100.0% -------------------------------------------------------------------------------- loop [42] 100.0% [58] 802(0.2%) 0(0.0%) for-loop .../research/herbie/src/points.rkt:213:24 for-loop [77] 100.0% -------------------------------------------------------------------------------- get-final-combination [44] 100.0% [59] 462(0.1%) 0(0.0%) extract-alt ...k/research/herbie/src/glue.rkt:55:0 argmins [80] 51.6% loop [75] 48.4% -------------------------------------------------------------------------------- for-loop [48] 100.0% [60] 440(0.1%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [78] 100.0% -------------------------------------------------------------------------------- for-loop [48] 100.0% [61] 228(0.0%) 228(0.0%) partition ... v6.12/collects/racket/list.rkt:556:0 -------------------------------------------------------------------------------- simplify-node [47] 100.0% [62] 206(0.0%) 0(0.0%) combine-aterms ...herbie/src/core/reduce.rkt:183:0 for-loop [81] 100.0% -------------------------------------------------------------------------------- f16 [50] 100.0% [63] 203(0.0%) 0(0.0%) loop ...k/research/herbie/src/core/reduce.rkt:18:2 expression->type [125] 100.0% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [64] 156902(33.0%) 0(0.0%) simplify! ...esearch/herbie/src/mainloop.rkt:155:0 for-loop [82] 100.0% -------------------------------------------------------------------------------- make-exacts [55] 9.2% loop [54] 33.0% loop [42] 57.8% [65] 145970(30.7%) 136(0.0%) loop ...tlock/research/herbie/src/points.rkt:141:4 loop [107] 93.8% ??? [154] 5.7% ??? [245] 0.4% -------------------------------------------------------------------------------- ??? [52] 100.0% [66] 142314(30.0%) 0(0.0%) iterate-egraph!13 ...e/src/core/simplify.rkt:102:0 one-iter [83] 97.1% map-enodes [87] 2.9% -------------------------------------------------------------------------------- split-table [53] 100.0% [67] 126684(26.7%) 0(0.0%) f12 (unknown source) loop [107] 88.8% option-on-expr [84] 11.0% exprs-to-branch-on [93] 0.2% -------------------------------------------------------------------------------- make-exacts [55] 14.9% loop [54] 18.3% loop [42] 66.8% [68] 111019(23.4%) 424(0.1%) make-exacts* ...search/herbie/src/points.rkt:138:0 loop [107] 92.9% eval-prog [232] 6.8% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [69] 22811(4.8%) 0(0.0%) gen-series! ...earch/herbie/src/mainloop.rkt:129:0 for-loop [85] 100.0% -------------------------------------------------------------------------------- ??? [52] 100.0% [70] 13532(2.8%) 225(0.0%) loop ...esearch/herbie/src/core/simplify.rkt:215:2 for-loop [86] 98.3% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [71] 9461(2.0%) 0(0.0%) finalize-iter! ...ch/herbie/src/mainloop.rkt:169:0 ??? [201] 100.0% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [72] 4302(0.9%) 0(0.0%) localize-error ...erbie/src/core/localize.rkt:47:0 hash-ref! [252] 95.0% ormap [90] 5.0% -------------------------------------------------------------------------------- combine-mterms [57] 100.0% [73] 1058(0.2%) 654(0.1%) for-loop ...earch/herbie/src/core/reduce.rkt:195:5 hash-ref! [252] 38.3% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [74] 990(0.2%) 0(0.0%) gen-rewrites! ...rch/herbie/src/mainloop.rkt:142:0 for-loop [89] 100.0% -------------------------------------------------------------------------------- extract-alt [59] 26.0% best-alt [257] 74.0% [75] 858(0.2%) 0(0.0%) loop ...tlock/research/herbie/src/common.rkt:151:2 composed [88] 100.0% -------------------------------------------------------------------------------- ??? [52] 100.0% [76] 849(0.2%) 0(0.0%) mk-egraph ...arch/herbie/src/core/egraph.rkt:123:0 expr->enode [92] 51.5% mk-enode! [172] 48.5% -------------------------------------------------------------------------------- for-loop [58] 100.0% [77] 802(0.2%) 0(0.0%) for-loop .../research/herbie/src/points.rkt:214:26 ??? [245] 100.0% -------------------------------------------------------------------------------- for-loop [48] 34.7% make-multiplication-subsubsubnode [60] 65.3% [78] 673(0.1%) 218(0.0%) mterm->expr ...ch/herbie/src/core/reduce.rkt:270:0 free-variables [163] 34.7% expression->type [125] 32.8% -------------------------------------------------------------------------------- run-iter! [51] 100.0% [79] 634(0.1%) 0(0.0%) choose-best-alt! .../herbie/src/mainloop.rkt:115:0 ...ow-val-first.rkt:388:18 [91] 100.0% -------------------------------------------------------------------------------- extract-alt [59] 100.0% [80] 238(0.1%) 0(0.0%) argmins ...ck/research/herbie/src/common.rkt:150:0 composed [88] 100.0% -------------------------------------------------------------------------------- combine-aterms [62] 100.0% [81] 206(0.0%) 206(0.0%) for-loop ...earch/herbie/src/core/reduce.rkt:185:4 -------------------------------------------------------------------------------- simplify! [64] 100.0% [82] 156902(33.0%) 0(0.0%) for-loop ...research/herbie/src/mainloop.rkt:159:6 .../more-scheme.rkt:261:28 [34] 99.9% debug-print [274] 0.1% -------------------------------------------------------------------------------- iterate-egraph!13 [66] 100.0% [83] 138163(29.1%) 2015(0.4%) one-iter ...rch/herbie/src/core/simplify.rkt:113:0 loop [107] 72.8% for-loop [95] 23.6% apply-match [118] 2.2% -------------------------------------------------------------------------------- f12 [67] 11.0% loop [107] 89.0% [84] 126450(26.6%) 211(0.0%) option-on-expr ...erbie/src/core/regimes.rkt:103:0 sindices->spoints [94] 86.0% loop [107] 5.4% sort-context-on-expr [98] 4.0% err-lsts->split-indices [99] 2.4% errors [226] 1.2% pick-errors [102] 0.7% map [130] 0.2% -------------------------------------------------------------------------------- gen-series! [69] 100.0% [85] 22811(4.8%) 0(0.0%) for-loop ...research/herbie/src/mainloop.rkt:135:7 taylor-alt [96] 100.0% -------------------------------------------------------------------------------- loop [70] 100.0% [86] 13308(2.8%) 462(0.1%) for-loop ...ch/herbie/src/core/simplify.rkt:208:29 argmin [97] 69.8% loop [100] 21.6% for-loop [105] 3.2% make-sequence [206] 1.8% -------------------------------------------------------------------------------- iterate-egraph!13 [66] 100.0% [87] 4152(0.9%) 0(0.0%) map-enodes ...rch/herbie/src/core/egraph.rkt:139:0 loop [107] 94.0% set-precompute! [120] 6.0% -------------------------------------------------------------------------------- argmins [80] 8.9% loop [75] 32.2% f67 [46] 58.9% [88] 2665(0.6%) 226(0.0%) composed ...ollects/racket/private/list.rkt:321:16 f286 [134] 42.0% errors [226] 41.1% free-variables [163] 8.3% -------------------------------------------------------------------------------- gen-rewrites! [74] 100.0% [89] 990(0.2%) 0(0.0%) for-loop ...esearch/herbie/src/mainloop.rkt:147:11 ??? [101] 100.0% -------------------------------------------------------------------------------- localize-error [72] 26.3% for-loop [23] 73.7% [90] 813(0.2%) 402(0.1%) ormap ...12/collects/racket/private/map.rkt:121:13 flag-set? [104] 50.5% -------------------------------------------------------------------------------- choose-best-alt! [79] 100.0% [91] 634(0.1%) 0(0.0%) ...ow-val-first.rkt:388:18 (unknown source) ??? [103] 100.0% -------------------------------------------------------------------------------- expr->enode [92] 38.0% mk-egraph [76] 62.0% [92] 437(0.1%) 0(0.0%) expr->enode ...ch/herbie/src/core/egraph.rkt:124:2 mk-enode! [172] 62.0% expr->enode [92] 38.0% -------------------------------------------------------------------------------- f12 [67] 100.0% [93] 234(0.0%) 0(0.0%) exprs-to-branch-on ...ie/src/core/regimes.rkt:55:0 for-loop [106] 100.0% -------------------------------------------------------------------------------- option-on-expr [84] 100.0% [94] 108788(22.9%) 0(0.0%) sindices->spoints ...ie/src/core/regimes.rkt:116:0 loop [107] 100.0% -------------------------------------------------------------------------------- for-loop [95] 48.7% one-iter [83] 51.3% [95] 32568(6.9%) 7758(1.6%) for-loop ...ch/herbie/src/core/simplify.rkt:123:12 for-loop [95] 48.7% match-e [129] 38.1% -------------------------------------------------------------------------------- for-loop [85] 100.0% [96] 22811(4.8%) 0(0.0%) taylor-alt ...k/research/herbie/src/glue.rkt:134:0 for-loop [108] 100.0% -------------------------------------------------------------------------------- for-loop [86] 100.0% [97] 9293(2.0%) 0(0.0%) argmin ...ket v6.12/collects/racket/list.rkt:766:0 for-loop [109] 90.9% expression-cost [113] 9.1% -------------------------------------------------------------------------------- option-on-expr [84] 100.0% [98] 5086(1.1%) 0(0.0%) sort-context-on-expr ...erbie/src/points.rkt:115:0 ??? [110] 100.0% -------------------------------------------------------------------------------- option-on-expr [84] 100.0% [99] 2973(0.6%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 loop [111] 100.0% -------------------------------------------------------------------------------- for-loop [86] 100.0% [100] 2878(0.6%) 0(0.0%) loop ...acket v6.12/collects/racket/list.rkt:752:4 for-loop [109] 100.0% -------------------------------------------------------------------------------- for-loop [89] 100.0% [101] 990(0.2%) 0(0.0%) ??? ...ck/research/herbie/src/alternative.rkt:88:0 rewriter [112] 100.0% -------------------------------------------------------------------------------- option-on-expr [84] 100.0% [102] 839(0.2%) 420(0.1%) pick-errors ...h/herbie/src/core/regimes.rkt:184:0 point->alt [116] 25.6% for-loop [117] 24.3% -------------------------------------------------------------------------------- ...ow-val-first.rkt:388:18 [91] 100.0% [103] 634(0.1%) 0(0.0%) ??? ...research/herbie/src/core/alt-table.rkt:54:0 ??? [245] 100.0% -------------------------------------------------------------------------------- for-loop [23] 33.7% ormap [90] 66.3% [104] 619(0.1%) 208(0.0%) flag-set? ...k/research/herbie/src/config.rkt:34:0 ??? [264] 35.1% return/no-unsupplied [265] 31.3% -------------------------------------------------------------------------------- for-loop [86] 100.0% [105] 432(0.1%) 204(0.0%) for-loop ...ch/herbie/src/core/simplify.rkt:195:13 for-loop [115] 52.6% -------------------------------------------------------------------------------- exprs-to-branch-on [93] 100.0% [106] 234(0.0%) 0(0.0%) for-loop ...arch/herbie/src/core/regimes.rkt:57:27 all-critical-subexpressions [114] 100.0% -------------------------------------------------------------------------------- for-loop [138] 0.0% for-loop [48] 0.1% parse-loop14 [263] 0.2% parse-loop55 [143] 0.2% parse-loop80 [159] 0.3% map-enodes [87] 0.4% option-on-expr [84] 0.5% list-member? [260] 0.5% loop! [173] 0.5% ??? [262] 0.8% make-exacts* [68] 2.3% loop [65] 2.4% sindices->spoints [94] 5.5% f12 [67] 6.3% one-iter [83] 21.7% loop [107] 58.3% [107] 387800(81.6%) 7349(1.5%) loop (unknown source) loop [107] 58.3% apply-match [118] 21.6% option-on-expr [84] 6.3% sidx->spoint [2] 5.5% ??? [154] 4.4% hash-ref! [252] 0.8% loop! [173] 0.5% errors [226] 0.5% set-precompute! [120] 0.4% parse-loop80 [159] 0.3% ??? [245] 0.2% f46 [158] 0.2% ??? [121] 0.2% ??? [190] 0.0% bf* [182] 0.0% ??? [238] 0.0% -------------------------------------------------------------------------------- taylor-alt [96] 100.0% [108] 22811(4.8%) 0(0.0%) for-loop ...ock/research/herbie/src/glue.rkt:139:6 ??? [245] 100.0% -------------------------------------------------------------------------------- loop [100] 25.4% argmin [97] 74.6% [109] 11328(2.4%) 0(0.0%) for-loop ...research/herbie/src/programs.rkt:199:2 table-ref [202] 72.5% ...erbie/src/common.rkt:47:2 [205] 25.4% ...rivate/arr-i.rkt:815:10 [203] 2.0% -------------------------------------------------------------------------------- sort-context-on-expr [98] 100.0% [110] 5086(1.1%) 0(0.0%) ??? ...6.12/collects/racket/private/sort.rkt:403:3 generic-sort/key [119] 82.8% loop [142] 13.0% ??? [245] 4.1% -------------------------------------------------------------------------------- err-lsts->split-indices [99] 100.0% [111] 2973(0.6%) 0(0.0%) loop ...research/herbie/src/core/regimes.rkt:272:4 for-loop [122] 100.0% -------------------------------------------------------------------------------- ??? [101] 28.8% matcher [135] 71.2% [112] 990(0.2%) 0(0.0%) rewriter ...arch/herbie/src/core/matcher.rkt:131:2 for-loop [123] 71.2% *rules* [11] 19.6% expression->type [125] 9.2% -------------------------------------------------------------------------------- argmin [97] 100.0% [113] 844(0.2%) 0(0.0%) expression-cost ...h/herbie/src/programs.rkt:198:0 compile [124] 100.0% -------------------------------------------------------------------------------- for-loop [106] 100.0% [114] 234(0.0%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:71:0 for-loop [126] 100.0% -------------------------------------------------------------------------------- for-loop [105] 100.0% [115] 227(0.0%) 227(0.0%) for-loop ...ch/herbie/src/core/simplify.rkt:198:37 -------------------------------------------------------------------------------- pick-errors [102] 100.0% [116] 215(0.0%) 0(0.0%) point->alt ...ch/herbie/src/core/regimes.rkt:171:0 eval-prog [232] 100.0% -------------------------------------------------------------------------------- pick-errors [102] 100.0% [117] 204(0.0%) 0(0.0%) for-loop ...arch/herbie/src/core/regimes.rkt:186:2 ??? [127] 100.0% -------------------------------------------------------------------------------- one-iter [83] 2.9% loop [107] 97.1% [118] 102944(21.7%) 3483(0.7%) apply-match .../herbie/src/core/simplify.rkt:130:2 for-loop [128] 84.3% match-e [129] 8.0% update-leader! [155] 3.6% reduce-to-single! [136] 0.6% -------------------------------------------------------------------------------- ??? [110] 100.0% [119] 4213(0.9%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [132] 89.5% loop [142] 10.5% -------------------------------------------------------------------------------- map-enodes [87] 6.0% loop [107] 94.0% [120] 4152(0.9%) 220(0.0%) set-precompute! ...bie/src/core/simplify.rkt:172:0 for-loop [131] 94.7% -------------------------------------------------------------------------------- map [130] 10.1% loop [107] 89.9% [121] 3769(0.8%) 0(0.0%) ??? ....12/collects/racket/private/list.rkt:323:18 hash-ref! [252] 79.1% map [130] 15.7% taylor [266] 5.3% -------------------------------------------------------------------------------- loop [111] 100.0% [122] 2973(0.6%) 870(0.2%) for-loop ...arch/herbie/src/core/regimes.rkt:237:4 for-loop [133] 70.7% -------------------------------------------------------------------------------- rewriter [112] 100.0% [123] 990(0.2%) 0(0.0%) for-loop ...rch/herbie/src/core/matcher.rkt:134:10 matcher [135] 100.0% -------------------------------------------------------------------------------- expression-cost [113] 100.0% [124] 844(0.2%) 0(0.0%) compile .../research/herbie/src/programs.rkt:175:0 hash-ref! [252] 100.0% -------------------------------------------------------------------------------- loop [63] 8.4% for-loop [137] 25.1% rewriter [112] 30.1% mterm->expr [78] 36.4% [125] 606(0.1%) 221(0.0%) expression->type ...herbie/src/type-check.rkt:45:0 for-loop [137] 63.6% -------------------------------------------------------------------------------- all-critical-subexpressions [114] 100.0% [126] 234(0.0%) 0(0.0%) for-loop ...earch/herbie/src/core/regimes.rkt:75:2 f286 [134] 100.0% -------------------------------------------------------------------------------- for-loop [117] 100.0% [127] 204(0.0%) 0(0.0%) ??? .../research/herbie/src/core/regimes.rkt:177:2 ??? [154] 100.0% -------------------------------------------------------------------------------- apply-match [118] 100.0% [128] 86828(18.3%) 423(0.1%) for-loop ...ch/herbie/src/core/simplify.rkt:145:10 loop! [173] 27.6% mk-enode! [172] 26.1% merge-egraph-nodes! [139] 24.2% substitute-e [140] 15.2% list-member? [260] 6.4% -------------------------------------------------------------------------------- apply-match [118] 14.8% for-loop [156] 26.8% for-loop [95] 58.4% [129] 33080(7.0%) 4690(1.0%) match-e ...esearch/herbie/src/core/ematch.rkt:46:0 for-loop [138] 73.1% ??? [201] 9.1% variable? [161] 3.6% make-sequence [206] 1.3% -------------------------------------------------------------------------------- gather-multiplicative-terms [151] 1.4% option-on-expr [84] 1.4% ??? [121] 6.3% f67 [46] 6.7% f8 [10] 8.1% taylor [266] 9.6% parse-loop80 [159] 9.6% f46 [158] 56.9% [130] 14908(3.1%) 432(0.1%) map ...v6.12/collects/racket/private/map.rkt:20:13 f46 [158] 34.8% parse-loop80 [159] 13.2% loop [146] 9.5% taylor [266] 8.2% ??? [245] 6.3% f67 [46] 6.1% ??? [121] 5.8% parse-loop55 [143] 4.3% make-multiplication-node [35] 4.2% simplify* [147] 2.2% simplify-node [47] 1.8% gather-multiplicative-terms [151] 1.4% ??? [14] 0.4% -------------------------------------------------------------------------------- set-precompute! [120] 100.0% [131] 3932(0.8%) 0(0.0%) for-loop ...rch/herbie/src/core/simplify.rkt:173:2 eval-const-expr [144] 67.2% setfindf [150] 10.7% compose [149] 10.6% curried [167] 5.8% ??? [245] 5.7% -------------------------------------------------------------------------------- generic-sort/key [119] 45.8% copying-mergesort [132] 54.2% [132] 3772(0.8%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [132] 54.2% loop [142] 35.7% jloop [145] 10.1% -------------------------------------------------------------------------------- for-loop [122] 100.0% [133] 2102(0.4%) 2102(0.4%) for-loop ...arch/herbie/src/core/regimes.rkt:241:8 -------------------------------------------------------------------------------- for-loop [126] 2.9% composed [88] 19.1% append-map [141] 78.0% [134] 1354(0.3%) 0(0.0%) f286 (unknown source) append-map [141] 100.0% -------------------------------------------------------------------------------- for-loop [148] 50.0% for-loop [123] 50.0% [135] 990(0.2%) 0(0.0%) matcher ...earch/herbie/src/core/matcher.rkt:167:2 for-loop [148] 50.0% rewriter [112] 50.0% -------------------------------------------------------------------------------- apply-match [118] 100.0% [136] 640(0.1%) 0(0.0%) reduce-to-single! ...bie/src/core/egraph.rkt:324:0 make-sequence [206] 66.0% for-loop [153] 34.0% -------------------------------------------------------------------------------- expression->type [125] 100.0% [137] 386(0.1%) 0(0.0%) for-loop ...esearch/herbie/src/type-check.rkt:52:5 f177 [152] 60.5% expression->type [125] 39.5% -------------------------------------------------------------------------------- match-e [129] 100.0% [138] 28006(5.9%) 11256(2.4%) for-loop ...earch/herbie/src/core/ematch.rkt:59:11 for-loop [156] 52.2% list-cartesian-product [162] 8.2% foldl [165] 3.4% loop [107] 1.6% curried [167] 0.8% filter [275] 0.4% -------------------------------------------------------------------------------- for-loop [160] 14.2% for-loop [128] 85.8% [139] 21020(4.4%) 420(0.1%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 update-leader! [155] 64.3% for-loop [160] 28.0% enode-merge! [164] 4.7% make-sequence [206] 1.0% update-en-expr [210] 0.5% -------------------------------------------------------------------------------- for-loop [157] 7.5% for-loop [128] 92.5% [140] 13158(2.8%) 844(0.2%) substitute-e ...ch/herbie/src/core/ematch.rkt:71:0 for-loop [157] 92.5% ??? [201] 2.2% variable? [161] 1.5% -------------------------------------------------------------------------------- append-map [141] 2.3% parse-loop292 [169] 2.3% simplify-node [47] 14.8% f286 [134] 34.1% gather-additive-terms6 [56] 46.5% [141] 3722(0.8%) 464(0.1%) append-map ...v6.12/collects/racket/list.rkt:587:2 gather-additive-terms6 [56] 40.2% f286 [134] 27.2% parse-loop374 [9] 21.2% free-variables [163] 2.7% parse-loop292 [169] 2.3% append-map [141] 2.3% -------------------------------------------------------------------------------- generic-sort/key [119] 13.2% ??? [110] 19.8% copying-mergesort [132] 67.1% [142] 3352(0.7%) 0(0.0%) loop ....12/collects/racket/private/sort.rkt:97:12 ??? [154] 93.6% ??? [245] 6.4% -------------------------------------------------------------------------------- map [130] 100.0% [143] 2687(0.6%) 0(0.0%) parse-loop55 (unknown source) f46 [158] 66.3% loop [107] 33.7% -------------------------------------------------------------------------------- for-loop [131] 100.0% [144] 2644(0.6%) 0(0.0%) eval-const-expr ...h/herbie/src/programs.rkt:166:0 f138 [237] 66.4% ??? [190] 24.2% ??? [170] 9.4% -------------------------------------------------------------------------------- copying-mergesort [132] 100.0% [145] 1524(0.3%) 206(0.0%) jloop ...2/collects/racket/private/sort.rkt:121:23 ??? [154] 86.5% -------------------------------------------------------------------------------- loop [146] 37.0% map [130] 63.0% [146] 1415(0.3%) 0(0.0%) loop ...6.12/collects/racket/private/map.rkt:25:19 parse-loop80 [159] 61.8% loop [146] 37.0% ??? [190] 1.2% -------------------------------------------------------------------------------- simplify [40] 33.7% map [130] 66.3% [147] 1330(0.3%) 418(0.1%) simplify* ...earch/herbie/src/core/reduce.rkt:31:0 ??? [166] 51.3% hash-ref! [252] 17.3% -------------------------------------------------------------------------------- matcher [135] 100.0% [148] 990(0.2%) 0(0.0%) for-loop ...rch/herbie/src/core/matcher.rkt:183:21 matcher [135] 100.0% -------------------------------------------------------------------------------- f67 [46] 33.0% for-loop [131] 67.0% [149] 620(0.1%) 620(0.1%) compose ...collects/racket/private/list.rkt:385:12 -------------------------------------------------------------------------------- for-loop [131] 100.0% [150] 422(0.1%) 0(0.0%) setfindf ...k/research/herbie/src/common.rkt:184:0 for-loop [168] 100.0% -------------------------------------------------------------------------------- map [130] 40.0% simplify-node [47] 60.0% [151] 422(0.1%) 422(0.1%) gather-multiplicative-terms ...re/reduce.rkt:116:0 map [130] 40.0% -------------------------------------------------------------------------------- for-loop [137] 100.0% [152] 386(0.1%) 0(0.0%) f177 (unknown source) ??? [201] 52.7% ...rivate/arr-i.rkt:815:10 [203] 47.3% -------------------------------------------------------------------------------- reduce-to-single! [136] 100.0% [153] 218(0.0%) 218(0.0%) for-loop ...earch/herbie/src/core/egraph.rkt:325:8 -------------------------------------------------------------------------------- ??? [127] 0.1% jloop [145] 0.5% loop [142] 1.2% loop [65] 3.3% for-loop [231] 5.2% loop [107] 89.7% [154] 252413(53.1%) 51721(10.9%) ??? ...lock/research/herbie/src/programs.rkt:154:4 ??? [171] 54.7% ??? [251] 23.4% ??? [245] 1.2% ??? [238] 0.2% -------------------------------------------------------------------------------- apply-match [118] 19.7% merge-egraph-nodes! [139] 80.3% [155] 18946(4.0%) 674(0.1%) update-leader! ...herbie/src/core/egraph.rkt:217:0 for-loop [174] 70.2% for-loop [175] 20.6% custom-set-union! [181] 2.3% make-sequence [206] 2.2% -------------------------------------------------------------------------------- for-loop [138] 100.0% [156] 17966(3.8%) 1030(0.2%) for-loop ...earch/herbie/src/core/ematch.rkt:65:37 match-e [129] 89.1% ??? [177] 5.8% -------------------------------------------------------------------------------- substitute-e [140] 100.0% [157] 12943(2.7%) 0(0.0%) for-loop ...earch/herbie/src/core/ematch.rkt:80:24 mk-enode! [172] 86.4% substitute-e [140] 13.6% -------------------------------------------------------------------------------- loop [107] 2.8% parse-loop55 [143] 4.8% simplify [40] 31.0% map [130] 61.4% [158] 8922(1.9%) 0(0.0%) f46 (unknown source) map [130] 100.0% -------------------------------------------------------------------------------- loop [146] 2.1% loop [107] 4.2% map [130] 22.3% parse-loop80 [159] 33.3% simplify [40] 38.1% [159] 8260(1.7%) 6727(1.4%) parse-loop80 (unknown source) parse-loop80 [159] 33.3% parse-app [176] 7.2% map [130] 4.5% loop [107] 4.2% f67 [46] 3.3% ??? [14] 2.6% -------------------------------------------------------------------------------- merge-egraph-nodes! [139] 100.0% [160] 7800(1.6%) 0(0.0%) for-loop ...arch/herbie/src/core/egraph.rkt:200:10 merge-egraph-nodes! [139] 62.7% loop! [173] 37.3% -------------------------------------------------------------------------------- pattern-match [33] 4.6% substitute-e [140] 9.9% free-variables [163] 19.3% match-e [129] 66.2% [161] 4677(1.0%) 0(0.0%) variable? ...ch/herbie/src/syntax/syntax.rkt:660:0 ??? [201] 100.0% -------------------------------------------------------------------------------- list-cartesian-product [162] 19.0% for-loop [138] 81.0% [162] 2847(0.6%) 2847(0.6%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [162] 19.0% -------------------------------------------------------------------------------- composed [88] 16.5% mterm->expr [78] 17.4% append-map [141] 66.1% [163] 1345(0.3%) 222(0.0%) free-variables ...ch/herbie/src/programs.rkt:100:0 variable? [161] 67.1% ??? [201] 16.3% -------------------------------------------------------------------------------- merge-egraph-nodes! [139] 100.0% [164] 1094(0.2%) 0(0.0%) enode-merge! ...ch/herbie/src/core/enode.rkt:129:0 adopt-enode! [179] 59.9% custom-set-intersect! [180] 40.1% -------------------------------------------------------------------------------- for-loop [138] 100.0% [165] 1050(0.2%) 223(0.0%) foldl ...12/collects/racket/private/list.rkt:229:4 merge2 [178] 78.8% -------------------------------------------------------------------------------- simplify* [147] 100.0% [166] 682(0.1%) 458(0.1%) ??? ... v6.12/collects/racket/private/kw.rkt:764:9 ??? [271] 32.8% -------------------------------------------------------------------------------- for-loop [138] 49.1% for-loop [131] 50.9% [167] 448(0.1%) 448(0.1%) curried ...6.12/collects/racket/function.rkt:71:18 -------------------------------------------------------------------------------- setfindf [150] 100.0% [168] 422(0.1%) 422(0.1%) for-loop ...k/research/herbie/src/common.rkt:185:2 -------------------------------------------------------------------------------- append-map [141] 100.0% [169] 254(0.1%) 0(0.0%) parse-loop292 (unknown source) append-map [141] 100.0% -------------------------------------------------------------------------------- eval-const-expr [144] 100.0% [170] 248(0.1%) 248(0.1%) ??? ...6.12/collects/racket/private/kw.rkt:1635:36 -------------------------------------------------------------------------------- ??? [154] 100.0% [171] 138175(29.1%) 14083(3.0%) ??? ...v6.12/collects/racket/private/kw.rkt:446:14 ??? [190] 62.2% bf* [182] 23.0% ??? [186] 2.6% ??? [246] 0.3% -------------------------------------------------------------------------------- mk-egraph [76] 1.2% expr->enode [92] 1.3% for-loop [157] 32.2% for-loop [128] 65.3% [172] 34713(7.3%) 1517(0.3%) mk-enode! ...arch/herbie/src/core/egraph.rkt:101:0 new-enode [183] 87.4% for-loop [187] 7.0% hash-has-key? [209] 1.2% -------------------------------------------------------------------------------- for-loop [160] 8.7% loop [107] 27.7% for-loop [128] 63.6% [173] 27838(5.9%) 7744(1.6%) loop! .../research/herbie/src/core/enode.rkt:192:2 custom-set-union [185] 35.7% loop [107] 30.9% set [194] 10.6% update-en-expr [210] 5.0% -------------------------------------------------------------------------------- update-leader! [155] 100.0% [174] 13292(2.8%) 1090(0.2%) for-loop ...earch/herbie/src/core/egraph.rkt:222:6 for-loop [184] 90.0% update-en-expr [210] 1.8% -------------------------------------------------------------------------------- update-leader! [155] 100.0% [175] 3901(0.8%) 3061(0.6%) for-loop ...earch/herbie/src/core/egraph.rkt:232:6 update-en-expr [210] 21.5% -------------------------------------------------------------------------------- parse-loop80 [159] 100.0% [176] 1113(0.2%) 1113(0.2%) parse-app .../collects/racket/private/kw.rkt:953:2 -------------------------------------------------------------------------------- for-loop [156] 100.0% [177] 1034(0.2%) 634(0.1%) ??? ...ck/research/herbie/src/core/ematch.rkt:50:5 for-loop [188] 38.7% -------------------------------------------------------------------------------- foldl [165] 100.0% [178] 828(0.2%) 828(0.2%) merge2 ...research/herbie/src/core/ematch.rkt:31:0 -------------------------------------------------------------------------------- enode-merge! [164] 100.0% [179] 656(0.1%) 432(0.1%) adopt-enode! ...ch/herbie/src/core/enode.rkt:105:0 custom-set-union [185] 34.1% -------------------------------------------------------------------------------- enode-merge! [164] 100.0% [180] 438(0.1%) 438(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 -------------------------------------------------------------------------------- update-leader! [155] 100.0% [181] 428(0.1%) 212(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [189] 50.5% -------------------------------------------------------------------------------- loop [107] 1.6% ??? [171] 98.4% [182] 32342(6.8%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [190] 100.0% -------------------------------------------------------------------------------- mk-enode! [172] 100.0% [183] 30348(6.4%) 0(0.0%) new-enode ...search/herbie/src/core/enode.rkt:97:0 type-of-enode-expr [191] 97.9% set [194] 1.4% -------------------------------------------------------------------------------- for-loop [174] 100.0% [184] 11960(2.5%) 224(0.0%) for-loop ...earch/herbie/src/core/egraph.rkt:223:8 hash-update! [192] 98.1% -------------------------------------------------------------------------------- adopt-enode! [179] 2.1% loop! [173] 97.9% [185] 10695(2.3%) 3256(0.7%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [193] 63.0% for-loop [195] 6.6% -------------------------------------------------------------------------------- ??? [171] 100.0% [186] 3554(0.7%) 2650(0.6%) ??? ...esearch/herbie/src/syntax/syntax.rkt:153:17 ??? [264] 12.9% return/no-unsupplied [265] 12.5% -------------------------------------------------------------------------------- mk-enode! [172] 100.0% [187] 2419(0.5%) 2419(0.5%) for-loop ...arch/herbie/src/core/egraph.rkt:113:10 -------------------------------------------------------------------------------- ??? [177] 100.0% [188] 400(0.1%) 400(0.1%) for-loop ...search/herbie/src/core/ematch.rkt:51:7 -------------------------------------------------------------------------------- custom-set-union! [181] 100.0% [189] 216(0.0%) 216(0.0%) for-loop ...cts/racket/private/set-types.rkt:253:4 -------------------------------------------------------------------------------- loop [146] 0.4% eval-const-expr [144] 0.5% loop [107] 0.8% bf* [182] 26.9% ??? [171] 71.3% [190] 120436(25.4%) 55550(11.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfdiv [196] 37.0% bfsqrt [198] 16.9% -------------------------------------------------------------------------------- new-enode [183] 100.0% [191] 29703(6.3%) 200(0.0%) type-of-enode-expr ...rbie/src/core/enode.rkt:68:0 get-sigs [197] 99.3% -------------------------------------------------------------------------------- for-loop [184] 100.0% [192] 11736(2.5%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [199] 100.0% -------------------------------------------------------------------------------- custom-set-union [185] 100.0% [193] 6737(1.4%) 1748(0.4%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [200] 74.1% -------------------------------------------------------------------------------- new-enode [183] 6.4% loop! [173] 93.6% [194] 6386(1.3%) 6386(1.3%) set ...collects/racket/private/set-types.rkt:981:0 -------------------------------------------------------------------------------- custom-set-union [185] 100.0% [195] 702(0.1%) 702(0.1%) for-loop ...cts/racket/private/set-types.rkt:152:2 -------------------------------------------------------------------------------- ??? [190] 100.0% [196] 44540(9.4%) 2890(0.6%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:821:4 ??? [270] 93.5% -------------------------------------------------------------------------------- type-of-enode-expr [191] 100.0% [197] 29503(6.2%) 198(0.0%) get-sigs ...research/herbie/src/type-check.rkt:5:0 ...rivate/arr-i.rkt:815:10 [203] 48.1% table-ref [202] 34.9% ??? [201] 10.3% ...erbie/src/common.rkt:47:2 [205] 6.0% -------------------------------------------------------------------------------- ??? [190] 100.0% [198] 20346(4.3%) 1580(0.3%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:618:4 ??? [270] 92.2% -------------------------------------------------------------------------------- hash-update! [192] 100.0% [199] 11736(2.5%) 214(0.0%) ??? .../research/herbie/src/core/egraph.rkt:225:24 for-loop [204] 96.3% make-sequence [206] 1.9% -------------------------------------------------------------------------------- for-loop [193] 100.0% [200] 4989(1.1%) 4989(1.1%) for-loop ...cts/racket/private/set-types.rkt:178:5 -------------------------------------------------------------------------------- f177 [152] 0.8% free-variables [163] 0.9% ??? [271] 2.1% substitute-e [140] 2.7% get-sigs [197] 12.3% variable? [161] 18.9% match-e [129] 22.8% finalize-iter! [71] 37.8% [201] 24760(5.2%) 8729(1.8%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [208] 35.9% hash-has-key? [209] 25.1% atab-add-altns [213] 1.9% ??? [271] 1.8% -------------------------------------------------------------------------------- ??? [245] 5.2% for-loop [109] 42.1% get-sigs [197] 52.7% [202] 19526(4.1%) 4539(1.0%) table-ref ...k/research/herbie/src/common.rkt:46:0 ??? [214] 74.4% ??? [264] 1.2% -------------------------------------------------------------------------------- f177 [152] 1.2% for-loop [109] 1.5% ??? [245] 2.8% get-sigs [197] 94.4% [203] 15039(3.2%) 1124(0.2%) ...rivate/arr-i.rkt:815:10 (unknown source) for-loop [207] 56.0% ??? [211] 33.5% get/build-late-neg-projection [235] 1.6% -------------------------------------------------------------------------------- ??? [199] 100.0% [204] 11304(2.4%) 9991(2.1%) for-loop ...arch/herbie/src/core/egraph.rkt:226:26 update-en-expr [210] 11.6% -------------------------------------------------------------------------------- ??? [245] 8.2% get-sigs [197] 34.9% for-loop [109] 56.9% [205] 5064(1.1%) 871(0.2%) ...erbie/src/common.rkt:47:2 (unknown source) ??? [229] 60.9% ...rivate/arr-i.rkt:1285:39 [212] 21.9% -------------------------------------------------------------------------------- ??? [199] 11.2% merge-egraph-nodes! [139] 11.3% for-loop [86] 12.5% update-leader! [155] 21.5% reduce-to-single! [136] 21.7% match-e [129] 21.9% [206] 1947(0.4%) 1947(0.4%) make-sequence ...ects/racket/private/for.rkt:524:2 -------------------------------------------------------------------------------- for-loop [222] 17.2% ...rivate/arr-i.rkt:815:10 [203] 82.8% [207] 10173(2.1%) 1362(0.3%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [215] 84.8% ??? [246] 1.8% -------------------------------------------------------------------------------- ??? [201] 100.0% [208] 9002(1.9%) 0(0.0%) for-loop ...rch/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [216] 100.0% -------------------------------------------------------------------------------- mk-enode! [172] 6.3% ??? [201] 93.7% [209] 6758(1.4%) 2872(0.6%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [214] 41.1% ??? [219] 16.4% -------------------------------------------------------------------------------- merge-egraph-nodes! [139] 4.0% for-loop [174] 4.5% for-loop [175] 15.7% for-loop [204] 24.5% loop! [173] 51.4% [210] 5365(1.1%) 3196(0.7%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 for-loop [218] 40.4% -------------------------------------------------------------------------------- ...rivate/arr-i.rkt:815:10 [203] 100.0% [211] 5040(1.1%) 222(0.0%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [217] 95.6% -------------------------------------------------------------------------------- ...erbie/src/common.rkt:47:2 [205] 100.0% [212] 1109(0.2%) 646(0.1%) ...rivate/arr-i.rkt:1285:39 (unknown source) return/no-unsupplied [265] 41.7% -------------------------------------------------------------------------------- ??? [201] 100.0% [213] 459(0.1%) 0(0.0%) atab-add-altns ...rbie/src/core/alt-table.rkt:50:0 atab-add-altn [216] 100.0% -------------------------------------------------------------------------------- hash-has-key? [209] 16.1% table-ref [202] 83.9% [214] 17309(3.6%) 6174(1.3%) ??? ...ects/racket/contract/private/list.rkt:744:4 for-loop [222] 46.7% ??? [228] 14.0% ??? [215] 2.5% -------------------------------------------------------------------------------- ??? [214] 3.7% ??? [229] 20.8% for-loop [207] 73.8% [215] 11680(2.5%) 623(0.1%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [221] 73.8% for-loop [224] 11.4% ??? [229] 5.7% ??? [246] 3.7% -------------------------------------------------------------------------------- atab-add-altns [213] 4.9% for-loop [208] 95.1% [216] 9461(2.0%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [220] 95.5% override-at-pnts [225] 4.5% -------------------------------------------------------------------------------- ??? [211] 100.0% [217] 4818(1.0%) 223(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [223] 95.4% -------------------------------------------------------------------------------- update-en-expr [210] 100.0% [218] 2168(0.5%) 2168(0.5%) for-loop ...earch/herbie/src/core/egraph.rkt:213:6 -------------------------------------------------------------------------------- hash-has-key? [209] 100.0% [219] 1106(0.2%) 1106(0.2%) ??? ...ects/racket/contract/private/hash.rkt:245:7 -------------------------------------------------------------------------------- atab-add-altn [216] 100.0% [220] 9036(1.9%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [226] 95.0% for-loop [230] 5.0% -------------------------------------------------------------------------------- ??? [215] 100.0% [221] 8624(1.8%) 425(0.1%) ??? ...ects/racket/contract/private/list.rkt:693:7 ??? [271] 90.2% ??? [246] 4.8% -------------------------------------------------------------------------------- ??? [214] 100.0% [222] 8078(1.7%) 3740(0.8%) for-loop ...acket/contract/private/list.rkt:750:12 ??? [228] 26.9% for-loop [207] 21.6% ??? [236] 5.2% -------------------------------------------------------------------------------- ??? [217] 100.0% [223] 4595(1.0%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:685:5 for-loop [227] 100.0% -------------------------------------------------------------------------------- ??? [215] 100.0% [224] 1332(0.3%) 217(0.0%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [229] 83.7% -------------------------------------------------------------------------------- atab-add-altn [216] 100.0% [225] 425(0.1%) 0(0.0%) override-at-pnts ...e/src/core/alt-table.rkt:145:0 errors [226] 100.0% -------------------------------------------------------------------------------- override-at-pnts [225] 2.0% composed [88] 5.3% option-on-expr [84] 7.5% pred [29] 11.4% loop [107] 32.6% best-and-tied-at-points [220] 41.2% [226] 20821(4.4%) 0(0.0%) errors ...ock/research/herbie/src/points.rkt:234:0 for-loop [231] 77.5% eval-prog [232] 22.5% -------------------------------------------------------------------------------- ??? [223] 100.0% [227] 4595(1.0%) 906(0.2%) for-loop ...racket/contract/private/list.rkt:687:9 add-list-context [233] 65.9% get/build-late-neg-projection [235] 14.4% -------------------------------------------------------------------------------- for-loop [222] 47.4% ??? [214] 52.6% [228] 4590(1.0%) 2827(0.6%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [234] 38.4% -------------------------------------------------------------------------------- ??? [215] 10.9% for-loop [224] 18.1% ...erbie/src/common.rkt:47:2 [205] 71.0% [229] 3084(0.6%) 1786(0.4%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [215] 49.8% ??? [236] 14.5% ??? [271] 3.4% -------------------------------------------------------------------------------- best-and-tied-at-points [220] 100.0% [230] 450(0.1%) 450(0.1%) for-loop ...h/herbie/src/core/alt-table.rkt:124:16 -------------------------------------------------------------------------------- errors [226] 100.0% [231] 16134(3.4%) 865(0.2%) for-loop ...k/research/herbie/src/points.rkt:237:4 ??? [154] 80.9% ulp-difference [239] 6.7% ??? [245] 4.3% ??? [238] 1.5% -------------------------------------------------------------------------------- point->alt [116] 1.7% errors [226] 37.8% make-exacts* [68] 60.5% [232] 12400(2.6%) 2884(0.6%) eval-prog ...esearch/herbie/src/programs.rkt:148:0 hash-ref! [252] 44.2% f138 [237] 21.9% ??? [240] 7.2% go [244] 1.6% -------------------------------------------------------------------------------- for-loop [227] 100.0% [233] 3030(0.6%) 3030(0.6%) add-list-context ...ontract/private/list.rkt:759:0 -------------------------------------------------------------------------------- ??? [228] 100.0% [234] 1762(0.4%) 1762(0.4%) make-keyword-procedure ...ket/private/kw.rkt:262:4 -------------------------------------------------------------------------------- ??? [243] 13.1% ...rivate/arr-i.rkt:815:10 [203] 13.1% for-loop [227] 73.7% [235] 894(0.2%) 230(0.0%) get/build-late-neg-projection ...te/guts.rkt:752:0 ??? [241] 61.2% ??? [243] 13.1% -------------------------------------------------------------------------------- for-loop [222] 48.4% ??? [229] 51.6% [236] 866(0.2%) 206(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [242] 76.2% -------------------------------------------------------------------------------- eval-prog [232] 24.9% f138 [237] 35.9% eval-const-expr [144] 39.3% [237] 4472(0.9%) 439(0.1%) f138 (unknown source) ??? [245] 53.9% f138 [237] 35.9% ??? [249] 4.8% -------------------------------------------------------------------------------- for-loop [231] 19.7% ??? [154] 32.3% loop [107] 48.0% [238] 1206(0.3%) 178(0.0%) ??? ...tract/private/arrow-higher-order.rkt:146:21 ??? [246] 67.7% ??? [271] 17.5% -------------------------------------------------------------------------------- for-loop [231] 100.0% [239] 1080(0.2%) 217(0.0%) ulp-difference ...search/herbie/src/float.rkt:19:0 return/no-unsupplied [265] 59.3% ??? [264] 20.6% -------------------------------------------------------------------------------- eval-prog [232] 100.0% [240] 890(0.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ??? [246] 100.0% -------------------------------------------------------------------------------- get/build-late-neg-projection [235] 100.0% [241] 664(0.1%) 448(0.1%) ??? ...cts/racket/contract/private/prop.rkt:327:12 build-compound-type-name [248] 32.5% -------------------------------------------------------------------------------- ??? [236] 100.0% [242] 660(0.1%) 0(0.0%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [247] 100.0% -------------------------------------------------------------------------------- get/build-late-neg-projection [235] 100.0% [243] 235(0.0%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [235] 100.0% -------------------------------------------------------------------------------- eval-prog [232] 100.0% [244] 196(0.0%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [250] 100.0% -------------------------------------------------------------------------------- ??? [110] 0.4% loop [142] 0.5% for-loop [131] 0.5% loop [65] 1.2% ??? [103] 1.4% for-loop [231] 1.5% for-loop [77] 1.7% map [130] 2.0% ??? [154] 6.4% ??? [7] 6.7% f138 [237] 8.1% loop [18] 8.9% location-do [253] 16.5% for-loop [108] 16.5% loop [107] 27.8% [245] 46990(9.9%) 815(0.2%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ->flonum [254] 38.5% location-do [253] 16.5% approximate9 [3] 16.5% hash-ref! [252] 15.6% ??? [251] 2.8% table-ref [202] 2.2% sample-multi-bounded [256] 1.7% best-alt [257] 1.4% ??? [271] 1.3% ...rivate/arr-i.rkt:815:10 [203] 0.9% ...erbie/src/common.rkt:47:2 [205] 0.9% -------------------------------------------------------------------------------- for-loop [207] 5.9% ??? [221] 13.2% ??? [171] 13.3% ??? [215] 13.6% ??? [238] 25.8% ??? [240] 28.2% [246] 3162(0.7%) 1887(0.4%) ??? ...ects/racket/contract/private/prop.rkt:506:4 ??? [255] 40.3% -------------------------------------------------------------------------------- check-hash/c [242] 100.0% [247] 660(0.1%) 660(0.1%) flat-contract? .../contract/private/guts.rkt:116:0 -------------------------------------------------------------------------------- ??? [241] 100.0% [248] 216(0.0%) 216(0.0%) build-compound-type-name ...private/guts.rkt:507:0 -------------------------------------------------------------------------------- f138 [237] 100.0% [249] 212(0.0%) 212(0.0%) ??? ...tract/private/arrow-higher-order.rkt:345:46 -------------------------------------------------------------------------------- go [244] 100.0% [250] 196(0.0%) 196(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 -------------------------------------------------------------------------------- ??? [245] 2.2% ??? [154] 97.8% [251] 60438(12.7%) 572(0.1%) ??? ...contract/private/../../private/kw.rkt:763:9 real->bigfloat [258] 96.9% integer->bigfloat [267] 2.2% -------------------------------------------------------------------------------- simplify* [147] 0.0% for-loop [36] 0.1% for-loop [73] 0.2% first-nonzero-exp [27] 0.2% ??? [4] 0.8% compile [124] 1.1% ??? [7] 1.2% ??? [262] 1.5% for-loop [21] 2.2% ??? [259] 3.8% for-loop [19] 5.0% loop [18] 5.9% localize-error [72] 6.0% ??? [121] 6.5% eval-prog [232] 7.0% ??? [245] 9.4% loop [107] 9.8% for-loop [20] 10.9% ??? [30] 27.0% [252] 32599(6.9%) 1482(0.3%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [5] 26.6% parse-loop14 [263] 11.6% ??? [262] 11.6% ??? [6] 11.0% ??? [4] 7.6% ??? [7] 7.2% bigfloat-hash [261] 7.0% simplify [40] 6.2% ??? [259] 3.9% ??? [8] 2.2% taylor [266] 1.8% f8 [10] 0.9% ??? [12] 0.2% -------------------------------------------------------------------------------- location-do [253] 14.0% ??? [245] 86.0% [253] 22811(4.8%) 0(0.0%) location-do ...earch/herbie/src/programs.rkt:114:0 ??? [245] 86.0% location-do [253] 14.0% -------------------------------------------------------------------------------- ??? [245] 100.0% [254] 18108(3.8%) 13280(2.8%) ->flonum .../research/herbie/src/programs.rkt:37:0 ??? [264] 15.6% return/no-unsupplied [265] 8.0% list-member? [260] 1.2% -------------------------------------------------------------------------------- ??? [246] 100.0% [255] 1275(0.3%) 195(0.0%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [268] 84.7% -------------------------------------------------------------------------------- ??? [245] 100.0% [256] 802(0.2%) 602(0.1%) sample-multi-bounded ...herbie/src/points.rkt:44:0 for-loop [269] 25.0% -------------------------------------------------------------------------------- ??? [245] 100.0% [257] 634(0.1%) 0(0.0%) best-alt ...lock/research/herbie/src/glue.rkt:71:0 loop [75] 100.0% -------------------------------------------------------------------------------- ??? [251] 100.0% [258] 58537(12.3%) 3941(0.8%) real->bigfloat .../private/bigfloat/mpfr.rkt:453:0 ??? [270] 93.3% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [259] 14055(3.0%) 0(0.0%) ??? .../research/herbie/src/core/taylor.rkt:322:33 hash-ref! [252] 98.4% -------------------------------------------------------------------------------- ->flonum [254] 3.8% for-loop [128] 96.2% [260] 5774(1.2%) 603(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 loop [107] 69.7% member [276] 19.8% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [261] 5487(1.2%) 394(0.1%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:167:0 bfcanonicalize [272] 63.0% sig+exp->bigfloat [277] 18.2% bigfloat->sig+exp [279] 11.7% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [262] 5320(1.1%) 205(0.0%) ??? ...lock/research/herbie/src/programs.rkt:183:5 loop [107] 84.1% hash-ref! [252] 13.9% -------------------------------------------------------------------------------- hash-ref! [252] 100.0% [263] 4088(0.9%) 0(0.0%) parse-loop14 (unknown source) loop [107] 100.0% -------------------------------------------------------------------------------- flag-set? [104] 5.5% ulp-difference [239] 5.6% table-ref [202] 5.9% ??? [186] 11.6% ->flonum [254] 71.4% [264] 3962(0.8%) 1296(0.3%) ??? ... v6.12/collects/racket/private/kw.rkt:763:9 ??? [273] 62.0% ??? [271] 5.2% -------------------------------------------------------------------------------- flag-set? [104] 6.1% ??? [186] 14.0% ...rivate/arr-i.rkt:1285:39 [212] 14.5% ulp-difference [239] 20.1% ->flonum [254] 45.3% [265] 3188(0.7%) 1875(0.4%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [275] 41.2% -------------------------------------------------------------------------------- ??? [121] 5.2% for-loop [26] 9.1% hash-ref! [252] 11.0% map [130] 24.4% taylor [266] 50.4% [266] 1910(0.4%) 420(0.1%) taylor ...esearch/herbie/src/core/taylor.rkt:163:0 taylor [266] 50.4% map [130] 29.6% taylor-invert [13] 9.5% debug-print [274] 7.2% -------------------------------------------------------------------------------- ??? [251] 100.0% [267] 1328(0.3%) 1328(0.3%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:401:0 -------------------------------------------------------------------------------- ??? [255] 100.0% [268] 1080(0.2%) 1080(0.2%) ??? ...ects/racket/contract/private/list.rkt:141:5 -------------------------------------------------------------------------------- sample-multi-bounded [256] 100.0% [269] 200(0.0%) 200(0.0%) for-loop ...ck/research/herbie/src/points.rkt:47:4 -------------------------------------------------------------------------------- bfsqrt [198] 16.3% bfdiv [196] 36.2% real->bigfloat [258] 47.4% [270] 115198(24.2%) 115198(24.2%) ??? .../Racket v6.12/collects/ffi/unsafe.rkt:873:4 -------------------------------------------------------------------------------- ??? [264] 2.1% ??? [229] 2.2% ??? [238] 2.2% ??? [166] 2.3% ??? [201] 4.6% ??? [245] 6.5% ??? [221] 80.1% [271] 9714(2.0%) 9083(1.9%) ??? ...ects/racket/contract/private/guts.rkt:705:8 ??? [201] 6.5% -------------------------------------------------------------------------------- bigfloat-hash [261] 100.0% [272] 3456(0.7%) 3052(0.6%) bfcanonicalize .../private/bigfloat/mpfr.rkt:157:0 bigfloat->sig+exp [279] 11.7% -------------------------------------------------------------------------------- ??? [264] 100.0% [273] 2458(0.5%) 2458(0.5%) ??? ...s/racket/contract/private/arr-i.rkt:1251:29 -------------------------------------------------------------------------------- loop [42] 11.1% for-loop [82] 12.2% taylor [266] 38.0% simplify [40] 38.7% [274] 1687(0.4%) 606(0.1%) debug-print ...research/herbie/src/debug.rkt:107:0 for-loop [278] 64.0% -------------------------------------------------------------------------------- for-loop [138] 14.2% return/no-unsupplied [265] 85.8% [275] 1530(0.3%) 1530(0.3%) filter ...2/collects/racket/private/list.rkt:256:2 -------------------------------------------------------------------------------- list-member? [260] 100.0% [276] 1144(0.2%) 1144(0.2%) member (unknown source) -------------------------------------------------------------------------------- bigfloat-hash [261] 100.0% [277] 996(0.2%) 996(0.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:387:0 -------------------------------------------------------------------------------- debug-print [274] 100.0% [278] 1080(0.2%) 1080(0.2%) for-loop ...ck/research/herbie/src/debug.rkt:113:2 -------------------------------------------------------------------------------- bfcanonicalize [272] 38.7% bigfloat-hash [261] 61.3% [279] 1045(0.2%) 1045(0.2%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:372:0 --------------------------------------------------------------------------------