Profiling results ----------------- Total cpu time observed: 79094ms (out of 79496ms) Number of samples taken: 237 (once every 334ms) (Hiding functions with self<1.0% and local<2.0%: 3 of 195 hidden) ============================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ============================================================================ ??? [73] 100.0% [1] 79094(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [9] 100.0% ---------------------------------------------------------------------------- ??? [73] 100.0% [2] 51520(65.1%) 0(0.0%) run-improve40 .../better-rr/src/mainloop.rkt:336:0 for-loop [10] 97.6% prepare-points-intervals [11] 2.4% ---------------------------------------------------------------------------- match-e [76] 100.0% [3] 1290(1.6%) 0(0.0%) variable? ...etter-rr/src/syntax/syntax.rkt:1159:0 ??? [28] 100.0% ---------------------------------------------------------------------------- ??? [81] 100.0% [4] 944(1.2%) 0(0.0%) approximate9 ...better-rr/src/core/taylor.rkt:12:0 loop [12] 100.0% ---------------------------------------------------------------------------- matcher [63] 100.0% [5] 656(0.8%) 0(0.0%) ??? ...erbie/better-rr/src/core/matcher.rkt:130:11 for-loop [13] 100.0% ---------------------------------------------------------------------------- hash-ref! [98] 100.0% [6] 342(0.4%) 0(0.0%) ??? ...herbie/better-rr/src/core/taylor.rkt:301:23 for-loop [14] 100.0% ---------------------------------------------------------------------------- for-loop [180] 100.0% [7] 302(0.4%) 0(0.0%) expand-identifier (unknown source) resolve+shift28 [178] 100.0% ---------------------------------------------------------------------------- hash-ref! [98] 100.0% [8] 300(0.4%) 0(0.0%) ??? ...herbie/better-rr/src/core/taylor.rkt:291:26 for-loop [15] 100.0% ---------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [9] 79094(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [73] 100.0% ---------------------------------------------------------------------------- run-improve40 [2] 100.0% [10] 50276(63.6%) 0(0.0%) for-loop ...erbie/better-rr/src/mainloop.rkt:351:4 run-iter! [16] 100.0% ---------------------------------------------------------------------------- run-improve40 [2] 4.7% ??? [73] 95.3% [11] 26326(33.3%) 0(0.0%) prepare-points-intervals ...r/src/points.rkt:133:0 loop [17] 97.9% eval-prog [100] 2.1% ---------------------------------------------------------------------------- approximate9 [4] 100.0% [12] 944(1.2%) 0(0.0%) loop .../herbie/better-rr/src/core/taylor.rkt:87:4 ??? [81] 100.0% ---------------------------------------------------------------------------- ??? [5] 100.0% [13] 656(0.8%) 0(0.0%) for-loop .../better-rr/src/core/matcher.rkt:132:15 matcher [63] 100.0% ---------------------------------------------------------------------------- ??? [6] 100.0% [14] 342(0.4%) 0(0.0%) for-loop ...e/better-rr/src/core/taylor.rkt:304:27 hash-ref! [98] 100.0% ---------------------------------------------------------------------------- ??? [8] 100.0% [15] 300(0.4%) 0(0.0%) for-loop ...e/better-rr/src/core/taylor.rkt:291:52 simplify [18] 100.0% ---------------------------------------------------------------------------- for-loop [10] 100.0% [16] 50276(63.6%) 0(0.0%) run-iter! ...rbie/better-rr/src/mainloop.rkt:317:0 simplify! [19] 91.3% finalize-iter! [21] 4.2% gen-rewrites! [23] 1.9% gen-series! [24] 1.9% localize! [26] 0.6% ---------------------------------------------------------------------------- prepare-points-intervals [11] 100.0% [17] 25786(32.6%) 624(0.8%) loop ...lies/herbie/better-rr/src/points.rkt:145:4 loop [20] 89.7% ??? [22] 7.9% ---------------------------------------------------------------------------- for-loop [15] 31.8% hash-ref! [98] 68.2% [18] 944(1.2%) 0(0.0%) simplify ...bie/better-rr/src/core/reduce.rkt:16:0 parse-loop15 [127] 68.2% f9 [25] 31.8% ---------------------------------------------------------------------------- run-iter! [16] 100.0% [19] 45926(58.1%) 0(0.0%) simplify! ...rbie/better-rr/src/mainloop.rkt:213:0 ??? [27] 99.3% ---------------------------------------------------------------------------- loop [17] 100.0% [20] 23124(29.2%) 310(0.4%) loop ...lies/herbie/better-rr/src/points.rkt:104:2 ??? [67] 91.7% ??? [81] 5.4% ??? [28] 1.5% ---------------------------------------------------------------------------- run-iter! [16] 100.0% [21] 2120(2.7%) 0(0.0%) finalize-iter! ...better-rr/src/mainloop.rkt:268:0 ??? [28] 100.0% ---------------------------------------------------------------------------- loop [17] 100.0% [22] 2038(2.6%) 298(0.4%) ??? ...tlies/herbie/better-rr/src/points.rkt:129:2 ??? [81] 85.4% ---------------------------------------------------------------------------- run-iter! [16] 100.0% [23] 960(1.2%) 0(0.0%) gen-rewrites! .../better-rr/src/mainloop.rkt:172:0 for-loop [29] 100.0% ---------------------------------------------------------------------------- run-iter! [16] 100.0% [24] 944(1.2%) 0(0.0%) gen-series! ...ie/better-rr/src/mainloop.rkt:149:0 for-loop [30] 100.0% ---------------------------------------------------------------------------- simplify [18] 47.9% hash-ref! [98] 52.1% [25] 626(0.8%) 0(0.0%) f9 ....0/collects/racket/match/compiler.rkt:507:40 map [31] 52.1% eval-const-expr [85] 47.9% ---------------------------------------------------------------------------- run-iter! [16] 100.0% [26] 326(0.4%) 0(0.0%) localize! ...rbie/better-rr/src/mainloop.rkt:116:0 localize-error [32] 100.0% ---------------------------------------------------------------------------- simplify! [19] 100.0% [27] 45594(57.6%) 0(0.0%) ??? ...herbie/better-rr/src/core/simplify.rkt:26:0 for-loop [33] 67.0% one-iter [39] 18.2% loop [34] 14.7% ---------------------------------------------------------------------------- substitute-e [92] 6.5% loop [20] 7.6% match-e [76] 13.0% variable? [3] 27.6% finalize-iter! [21] 45.3% [28] 4680(5.9%) 2202(2.8%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [35] 45.3% ??? [38] 7.6% ---------------------------------------------------------------------------- gen-rewrites! [23] 100.0% [29] 960(1.2%) 0(0.0%) for-loop ...rbie/better-rr/src/mainloop.rkt:180:11 rewrite-expression-head20 [36] 100.0% ---------------------------------------------------------------------------- gen-series! [24] 100.0% [30] 944(1.2%) 0(0.0%) for-loop ...erbie/better-rr/src/mainloop.rkt:156:7 taylor-alt [37] 100.0% ---------------------------------------------------------------------------- f9 [25] 100.0% [31] 326(0.4%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 loop [136] 100.0% ---------------------------------------------------------------------------- localize! [26] 100.0% [32] 326(0.4%) 0(0.0%) localize-error ...er-rr/src/core/localize.rkt:52:0 hash-ref! [98] 100.0% ---------------------------------------------------------------------------- ??? [27] 100.0% [33] 30554(38.6%) 0(0.0%) for-loop ...e/better-rr/src/core/simplify.rkt:33:2 one-iter [39] 100.0% ---------------------------------------------------------------------------- ??? [27] 100.0% [34] 6722(8.5%) 310(0.4%) loop ...rbie/better-rr/src/core/simplify.rkt:143:2 for-loop [40] 95.4% ---------------------------------------------------------------------------- ??? [28] 100.0% [35] 2120(2.7%) 0(0.0%) for-loop .../better-rr/src/core/alt-table.rkt:56:2 atab-add-altn [41] 85.8% loop [45] 14.2% ---------------------------------------------------------------------------- for-loop [29] 100.0% [36] 960(1.2%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [42] 100.0% ---------------------------------------------------------------------------- for-loop [30] 100.0% [37] 944(1.2%) 0(0.0%) taylor-alt ...bie/better-rr/src/mainloop.rkt:135:0 for-loop [43] 100.0% ---------------------------------------------------------------------------- ??? [28] 100.0% [38] 358(0.5%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:519:4 ??? [44] 100.0% ---------------------------------------------------------------------------- ??? [27] 21.4% for-loop [33] 78.6% [39] 38872(49.1%) 0(0.0%) one-iter ...e/better-rr/src/core/simplify.rkt:86:0 for-loop [46] 61.8% find-matches [47] 32.5% for-loop [49] 5.7% ---------------------------------------------------------------------------- loop [34] 100.0% [40] 6412(8.1%) 0(0.0%) for-loop .../better-rr/src/core/simplify.rkt:149:4 loop [48] 43.2% for-loop [51] 23.9% argmin [52] 14.2% expression-cost [59] 14.1% make-sequence [55] 4.7% ---------------------------------------------------------------------------- for-loop [35] 100.0% [41] 1820(2.3%) 0(0.0%) atab-add-altn ...r-rr/src/core/alt-table.rkt:202:0 errors [50] 100.0% ---------------------------------------------------------------------------- matcher [63] 48.2% rewrite-expression-head20 [36] 51.8% [42] 960(1.2%) 0(0.0%) rewriter ...ie/better-rr/src/core/matcher.rkt:89:2 for-loop [53] 60.5% *rules* [54] 39.5% ---------------------------------------------------------------------------- taylor-alt [37] 100.0% [43] 944(1.2%) 0(0.0%) for-loop ...erbie/better-rr/src/mainloop.rkt:141:6 ??? [81] 100.0% ---------------------------------------------------------------------------- ??? [38] 100.0% [44] 358(0.5%) 358(0.5%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ---------------------------------------------------------------------------- for-loop [35] 100.0% [45] 300(0.4%) 0(0.0%) loop ...bie/better-rr/src/core/alt-table.rkt:176:2 argmax [56] 100.0% ---------------------------------------------------------------------------- one-iter [39] 100.0% [46] 24030(30.4%) 0(0.0%) for-loop ...e/better-rr/src/core/simplify.rkt:95:2 loop [57] 88.4% update-leader! [94] 11.6% ---------------------------------------------------------------------------- one-iter [39] 100.0% [47] 12642(16.0%) 0(0.0%) find-matches ...tter-rr/src/core/simplify.rkt:56:0 for-loop [58] 100.0% ---------------------------------------------------------------------------- for-loop [40] 100.0% [48] 2768(3.5%) 598(0.8%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [59] 44.4% for-loop [62] 34.0% ---------------------------------------------------------------------------- one-iter [39] 100.0% [49] 2200(2.8%) 0(0.0%) for-loop .../better-rr/src/core/simplify.rkt:111:2 set-precompute! [60] 100.0% ---------------------------------------------------------------------------- ??? [73] 14.0% atab-add-altn [41] 86.0% [50] 2116(2.7%) 0(0.0%) errors ...es/herbie/better-rr/src/points.rkt:228:0 for-loop [61] 71.6% eval-prog [100] 28.4% ---------------------------------------------------------------------------- for-loop [40] 100.0% [51] 1532(1.9%) 932(1.2%) for-loop ...better-rr/src/core/simplify.rkt:153:16 for-loop [64] 39.2% ---------------------------------------------------------------------------- for-loop [40] 100.0% [52] 908(1.1%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 expression-cost [59] 100.0% ---------------------------------------------------------------------------- rewriter [42] 100.0% [53] 656(0.8%) 0(0.0%) for-loop ...ie/better-rr/src/core/matcher.rkt:91:4 matcher [63] 81.9% for-loop [65] 18.1% ---------------------------------------------------------------------------- rewriter [42] 100.0% [54] 604(0.8%) 300(0.4%) *rules* ...ie/better-rr/src/syntax/rules.rkt:783:0 for-loop [109] 50.3% ---------------------------------------------------------------------------- for-loop [40] 100.0% [55] 300(0.4%) 300(0.4%) make-sequence ...ects/racket/private/for.rkt:528:2 ---------------------------------------------------------------------------- loop [45] 100.0% [56] 300(0.4%) 0(0.0%) argmax ...acket-7.0/collects/racket/list.rkt:766:0 alt-cost [66] 100.0% ---------------------------------------------------------------------------- for-loop [46] 100.0% [57] 21236(26.8%) 0(0.0%) loop ...rbie/better-rr/src/core/simplify.rkt:100:4 apply-match [68] 100.0% ---------------------------------------------------------------------------- for-loop [58] 50.0% find-matches [47] 50.0% [58] 12642(16.0%) 2840(3.6%) for-loop ...e/better-rr/src/core/simplify.rkt:58:8 for-loop [58] 50.0% match-e [76] 38.8% ---------------------------------------------------------------------------- for-loop [40] 29.7% argmin [52] 29.8% loop [48] 40.4% [59] 3042(3.8%) 306(0.4%) expression-cost ...etter-rr/src/programs.rkt:204:0 compile [69] 89.9% ---------------------------------------------------------------------------- for-loop [49] 100.0% [60] 2200(2.8%) 0(0.0%) set-precompute! ...-rr/src/core/simplify.rkt:117:0 for-loop [70] 100.0% ---------------------------------------------------------------------------- errors [50] 100.0% [61] 1516(1.9%) 0(0.0%) for-loop .../herbie/better-rr/src/points.rkt:230:2 ??? [67] 78.6% ??? [81] 21.4% ---------------------------------------------------------------------------- loop [48] 100.0% [62] 940(1.2%) 296(0.4%) for-loop ...erbie/better-rr/src/programs.rkt:205:2 table-ref [71] 68.5% ---------------------------------------------------------------------------- for-loop [13] 50.0% for-loop [53] 50.0% [63] 656(0.8%) 0(0.0%) matcher ...ie/better-rr/src/core/matcher.rkt:118:2 ??? [5] 50.0% rewriter [42] 50.0% ---------------------------------------------------------------------------- for-loop [51] 100.0% [64] 600(0.8%) 600(0.8%) for-loop ...better-rr/src/core/simplify.rkt:157:23 ---------------------------------------------------------------------------- for-loop [53] 100.0% [65] 356(0.5%) 0(0.0%) for-loop ...ie/better-rr/src/core/matcher.rkt:99:8 fix-up-variables [72] 100.0% ---------------------------------------------------------------------------- argmax [56] 100.0% [66] 300(0.4%) 0(0.0%) alt-cost ...bie/better-rr/src/alternative.rkt:23:0 ??? [83] 100.0% ---------------------------------------------------------------------------- for-loop [108] 1.4% for-loop [61] 5.2% loop [20] 93.3% [67] 22722(28.7%) 0(0.0%) ??? ...ies/herbie/better-rr/src/programs.rkt:146:2 ??? [74] 88.5% ??? [81] 11.5% ---------------------------------------------------------------------------- loop [57] 100.0% [68] 21236(26.8%) 288(0.4%) apply-match ...etter-rr/src/core/simplify.rkt:65:0 for-loop [75] 82.4% match-e [76] 13.3% set [126] 1.6% custom-set-intersect [80] 1.4% ---------------------------------------------------------------------------- expression-cost [59] 100.0% [69] 2736(3.5%) 0(0.0%) compile ...herbie/better-rr/src/programs.rkt:181:0 hash-ref! [98] 100.0% ---------------------------------------------------------------------------- set-precompute! [60] 100.0% [70] 2200(2.8%) 0(0.0%) for-loop .../better-rr/src/core/simplify.rkt:119:2 ??? [73] 44.1% merge-egraph-nodes! [82] 42.4% setfindf [79] 13.5% ---------------------------------------------------------------------------- for-loop [62] 100.0% [71] 644(0.8%) 0(0.0%) table-ref .../herbie/better-rr/src/common.rkt:42:0 for-loop [77] 100.0% ---------------------------------------------------------------------------- for-loop [65] 100.0% [72] 356(0.5%) 0(0.0%) fix-up-variables ...-rr/src/core/matcher.rkt:111:2 pattern-substitute [78] 100.0% ---------------------------------------------------------------------------- for-loop [70] 0.4% run [9] 49.8% [73] 79094(100.0%) 336(0.4%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.8% run-improve40 [2] 32.4% prepare-points-intervals [11] 15.9% oracle-error [87] 0.6% eval-errors [88] 0.4% eval-const-expr [85] 0.3% get-final-combination [90] 0.2% for-loop [91] 0.2% errors [50] 0.2% ---------------------------------------------------------------------------- ??? [67] 100.0% [74] 20118(25.4%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [83] 52.3% ??? [81] 43.1% ??? [150] 4.6% ---------------------------------------------------------------------------- apply-match [68] 100.0% [75] 17500(22.1%) 0(0.0%) for-loop ...e/better-rr/src/core/simplify.rkt:78:2 merge-egraph-nodes! [82] 79.1% dedup-children! [117] 12.3% mk-enode! [86] 6.9% substitute-e [92] 1.7% ---------------------------------------------------------------------------- apply-match [68] 14.1% for-loop [97] 20.8% for-loop [58] 65.2% [76] 12622(16.0%) 3400(4.3%) match-e ...rbie/better-rr/src/core/ematch.rkt:39:0 for-loop [84] 71.2% variable? [3] 4.7% ??? [28] 2.0% ---------------------------------------------------------------------------- table-ref [71] 100.0% [77] 644(0.8%) 644(0.8%) for-loop ...s/herbie/better-rr/src/common.rkt:44:4 ---------------------------------------------------------------------------- fix-up-variables [72] 100.0% [78] 356(0.5%) 0(0.0%) pattern-substitute ...rr/src/core/matcher.rkt:46:0 curried [89] 100.0% ---------------------------------------------------------------------------- for-loop [70] 100.0% [79] 298(0.4%) 298(0.4%) setfindf .../herbie/better-rr/src/common.rkt:139:0 ---------------------------------------------------------------------------- apply-match [68] 100.0% [80] 298(0.4%) 0(0.0%) custom-set-intersect ...rivate/set-types.rkt:195:0 for-loop [93] 100.0% ---------------------------------------------------------------------------- loop [12] 2.0% location-do [106] 2.0% for-loop [43] 2.0% for-loop [61] 2.1% loop [20] 8.0% ??? [22] 11.2% ??? [67] 16.8% ??? [74] 55.8% [81] 15532(19.6%) 340(0.4%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ival-mult [95] 55.8% ->flonum [101] 14.0% mk-ival [103] 12.9% sample-multi-bounded [105] 9.0% location-do [106] 2.0% approximate9 [4] 2.0% hash-ref! [98] 2.0% ---------------------------------------------------------------------------- merge-egraph-nodes! [82] 1.9% for-loop [104] 3.6% for-loop [70] 4.8% for-loop [75] 89.7% [82] 14770(18.7%) 626(0.8%) merge-egraph-nodes! ...r/src/core/egraph.rkt:145:0 update-leader! [94] 69.2% loop! [102] 13.3% for-loop [104] 6.6% dedup-children! [117] 2.5% for-loop [109] 2.3% merge-egraph-nodes! [82] 1.9% ---------------------------------------------------------------------------- alt-cost [66] 2.8% ??? [74] 97.2% [83] 10830(13.7%) 300(0.4%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-sqrt [96] 61.1% ival-sub [99] 36.1% ---------------------------------------------------------------------------- match-e [76] 100.0% [84] 10138(12.8%) 5140(6.5%) for-loop ...ie/better-rr/src/core/ematch.rkt:52:11 for-loop [97] 38.8% loop [136] 9.4% cartesian-product [111] 5.9% ---------------------------------------------------------------------------- f9 [25] 19.0% ??? [73] 40.2% parse-loop15 [127] 40.8% [85] 1578(2.0%) 0(0.0%) eval-const-expr ...etter-rr/src/programs.rkt:149:0 eval-prog [100] 100.0% ---------------------------------------------------------------------------- for-loop [75] 100.0% [86] 1200(1.5%) 598(0.8%) mk-enode! ...ie/better-rr/src/core/egraph.rkt:99:0 new-enode [110] 50.2% ---------------------------------------------------------------------------- ??? [73] 100.0% [87] 902(1.1%) 0(0.0%) oracle-error ...bie/better-rr/src/points.rkt:212:0 for-loop [107] 100.0% ---------------------------------------------------------------------------- ??? [73] 100.0% [88] 648(0.8%) 0(0.0%) eval-errors ...rbie/better-rr/src/points.rkt:203:0 for-loop [108] 100.0% ---------------------------------------------------------------------------- pattern-substitute [78] 100.0% [89] 356(0.5%) 356(0.5%) curried ...-7.0/collects/racket/function.rkt:71:18 ---------------------------------------------------------------------------- ??? [73] 100.0% [90] 334(0.4%) 0(0.0%) get-final-combination ...rr/src/mainloop.rkt:357:0 infer-splitpoints [112] 100.0% ---------------------------------------------------------------------------- ??? [73] 100.0% [91] 312(0.4%) 0(0.0%) for-loop .../herbie/better-rr/src/sandbox.rkt:70:8 errors-score [113] 100.0% ---------------------------------------------------------------------------- for-loop [114] 50.0% for-loop [75] 50.0% [92] 302(0.4%) 0(0.0%) substitute-e ...better-rr/src/core/ematch.rkt:64:0 for-loop [114] 50.0% ??? [28] 50.0% ---------------------------------------------------------------------------- custom-set-intersect [80] 100.0% [93] 298(0.4%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:207:3 for-loop [115] 100.0% ---------------------------------------------------------------------------- for-loop [46] 20.8% merge-egraph-nodes! [82] 79.2% [94] 13464(17.0%) 0(0.0%) update-leader! ...ter-rr/src/core/egraph.rkt:213:0 for-loop [116] 100.0% ---------------------------------------------------------------------------- ??? [81] 100.0% [95] 8672(11.0%) 0(0.0%) ival-mult ...e/better-rr/src/biginterval.rkt:105:0 classify-ival [120] 24.3% bfmax* [121] 23.4% ??? [156] 20.0% bfmin* [122] 17.8% bf* [125] 14.5% ---------------------------------------------------------------------------- ??? [83] 100.0% [96] 6616(8.4%) 1634(2.1%) ival-sqrt ...e/better-rr/src/biginterval.rkt:191:0 ??? [156] 55.3% ...higher-order.rkt:357:33 [123] 20.0% ---------------------------------------------------------------------------- for-loop [84] 100.0% [97] 4734(6.0%) 326(0.4%) for-loop ...ie/better-rr/src/core/ematch.rkt:58:37 match-e [76] 96.6% ---------------------------------------------------------------------------- for-loop [14] 2.8% loop [136] 4.1% localize-error [32] 4.1% ??? [128] 10.4% ??? [81] 10.4% ??? [119] 32.5% compile [69] 35.8% [98] 4006(5.1%) 2736(3.5%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [119] 32.5% ??? [128] 10.4% simplify [18] 6.6% parse-loop15 [127] 4.1% f9 [25] 4.1% ??? [8] 3.7% ??? [6] 2.8% ---------------------------------------------------------------------------- ??? [83] 100.0% [99] 3914(4.9%) 332(0.4%) ival-sub ...bie/better-rr/src/biginterval.rkt:93:0 ??? [156] 91.5% ---------------------------------------------------------------------------- prepare-points-intervals [11] 19.9% errors [50] 22.1% eval-const-expr [85] 58.1% [100] 2718(3.4%) 0(0.0%) eval-prog ...rbie/better-rr/src/programs.rkt:130:0 temp68_2 [118] 80.1% loop [175] 19.9% ---------------------------------------------------------------------------- ??? [81] 100.0% [101] 2170(2.7%) 1582(2.0%) ->flonum ...herbie/better-rr/src/programs.rkt:38:0 return/no-unsupplied [169] 27.1% ---------------------------------------------------------------------------- loop [136] 21.2% merge-egraph-nodes! [82] 78.8% [102] 2110(2.7%) 0(0.0%) loop! ...herbie/better-rr/src/core/enode.rkt:191:2 custom-set-union [129] 36.3% loop [136] 35.4% update-en-expr [174] 14.2% set [126] 14.1% ---------------------------------------------------------------------------- ??? [81] 100.0% [103] 2006(2.5%) 692(0.9%) mk-ival ...rbie/better-rr/src/biginterval.rkt:59:0 bf [124] 65.5% ---------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [104] 1574(2.0%) 0(0.0%) for-loop ...ie/better-rr/src/core/egraph.rkt:199:4 merge-egraph-nodes! [82] 57.6% dedup-children! [117] 42.4% ---------------------------------------------------------------------------- ??? [81] 100.0% [105] 1400(1.8%) 1006(1.3%) sample-multi-bounded ...ter-rr/src/points.rkt:16:0 ??? [130] 28.1% ---------------------------------------------------------------------------- ??? [81] 100.0% [106] 944(1.2%) 0(0.0%) location-do ...ie/better-rr/src/programs.rkt:111:0 ??? [81] 100.0% ---------------------------------------------------------------------------- oracle-error [87] 100.0% [107] 902(1.1%) 0(0.0%) for-loop .../herbie/better-rr/src/points.rkt:213:2 loop [136] 100.0% ---------------------------------------------------------------------------- eval-errors [88] 100.0% [108] 648(0.8%) 0(0.0%) for-loop .../herbie/better-rr/src/points.rkt:205:2 point-error [151] 50.3% ??? [67] 49.7% ---------------------------------------------------------------------------- *rules* [54] 47.6% merge-egraph-nodes! [82] 52.4% [109] 638(0.8%) 334(0.4%) for-loop ...s/herbie/better-rr/src/common.rkt:71:9 flag-set? [133] 47.6% ---------------------------------------------------------------------------- mk-enode! [86] 100.0% [110] 602(0.8%) 0(0.0%) new-enode ...bie/better-rr/src/core/enode.rkt:96:0 set [126] 50.2% type-of-enode-expr [134] 49.8% ---------------------------------------------------------------------------- for-loop [84] 100.0% [111] 600(0.8%) 600(0.8%) cartesian-product ...ollects/racket/list.rkt:822:0 ---------------------------------------------------------------------------- get-final-combination [90] 100.0% [112] 334(0.4%) 0(0.0%) infer-splitpoints ...-rr/src/core/regimes.rkt:34:0 exprs-to-branch-on [131] 100.0% ---------------------------------------------------------------------------- for-loop [91] 100.0% [113] 312(0.4%) 0(0.0%) errors-score ...bie/better-rr/src/points.rkt:220:0 loop [132] 100.0% ---------------------------------------------------------------------------- substitute-e [92] 100.0% [114] 302(0.4%) 0(0.0%) for-loop ...ie/better-rr/src/core/ematch.rkt:73:24 substitute-e [92] 100.0% ---------------------------------------------------------------------------- for-loop [93] 100.0% [115] 298(0.4%) 298(0.4%) for-loop ...cts/racket/private/set-types.rkt:201:4 ---------------------------------------------------------------------------- update-leader! [94] 100.0% [116] 13464(17.0%) 0(0.0%) for-loop ...ie/better-rr/src/core/egraph.rkt:218:6 for-loop [135] 51.2% hash-update! [147] 48.8% ---------------------------------------------------------------------------- merge-egraph-nodes! [82] 11.3% for-loop [104] 20.9% for-loop [75] 67.7% [117] 3190(4.0%) 0(0.0%) dedup-children! ...ter-rr/src/core/enode.rkt:199:0 loop [137] 68.9% loop [140] 31.1% ---------------------------------------------------------------------------- eval-prog [100] 100.0% [118] 2178(2.8%) 0(0.0%) temp68_2 (unknown source) compile16 [138] 100.0% ---------------------------------------------------------------------------- hash-ref! [98] 100.0% [119] 2140(2.7%) 0(0.0%) ??? ...ies/herbie/better-rr/src/programs.rkt:189:5 hash-ref! [98] 100.0% ---------------------------------------------------------------------------- ival-mult [95] 100.0% [120] 2110(2.7%) 1810(2.3%) classify-ival ...tter-rr/src/biginterval.rkt:310:0 force [145] 14.2% ---------------------------------------------------------------------------- ival-mult [95] 100.0% [121] 2028(2.6%) 0(0.0%) bfmax* ...rbie/better-rr/src/biginterval.rkt:102:0 foldl [148] 100.0% ---------------------------------------------------------------------------- ival-mult [95] 100.0% [122] 1544(2.0%) 300(0.4%) bfmin* ...erbie/better-rr/src/biginterval.rkt:99:0 foldl [148] 80.6% ---------------------------------------------------------------------------- ival-sqrt [96] 100.0% [123] 1326(1.7%) 0(0.0%) ...higher-order.rkt:357:33 (unknown source) ??? [139] 100.0% ---------------------------------------------------------------------------- mk-ival [103] 100.0% [124] 1314(1.7%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [171] 77.2% ??? [172] 22.8% ---------------------------------------------------------------------------- ival-mult [95] 100.0% [125] 1258(1.6%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [156] 100.0% ---------------------------------------------------------------------------- new-enode [110] 24.6% apply-match [68] 26.9% loop! [102] 48.5% [126] 1228(1.6%) 898(1.1%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [143] 26.9% ---------------------------------------------------------------------------- parse-loop15 [127] 33.2% simplify [18] 33.2% hash-ref! [98] 33.6% [127] 970(1.2%) 0(0.0%) parse-loop15 ...s/racket/match/compiler.rkt:418:15 loop [136] 33.6% parse-loop15 [127] 33.2% eval-const-expr [85] 33.2% ---------------------------------------------------------------------------- hash-ref! [98] 100.0% [128] 944(1.2%) 0(0.0%) ??? .../herbie/better-rr/src/core/taylor.rkt:45:15 hash-ref! [98] 100.0% ---------------------------------------------------------------------------- loop! [102] 100.0% [129] 916(1.2%) 0(0.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [141] 68.1% for-loop [146] 31.9% ---------------------------------------------------------------------------- sample-multi-bounded [105] 100.0% [130] 394(0.5%) 394(0.5%) ??? ...ects/racket/contract/private/guts.rkt:746:8 ---------------------------------------------------------------------------- infer-splitpoints [112] 100.0% [131] 334(0.4%) 0(0.0%) exprs-to-branch-on ...rr/src/core/regimes.rkt:58:0 all-critical-subexpressions [142] 100.0% ---------------------------------------------------------------------------- errors-score [113] 100.0% [132] 312(0.4%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [144] 100.0% ---------------------------------------------------------------------------- for-loop [109] 100.0% [133] 304(0.4%) 304(0.4%) flag-set? .../herbie/better-rr/src/config.rkt:28:0 ---------------------------------------------------------------------------- new-enode [110] 100.0% [134] 300(0.4%) 300(0.4%) type-of-enode-expr ...r-rr/src/core/enode.rkt:69:0 ---------------------------------------------------------------------------- for-loop [116] 100.0% [135] 6900(8.7%) 0(0.0%) for-loop ...ie/better-rr/src/core/egraph.rkt:219:8 hash-update! [147] 100.0% ---------------------------------------------------------------------------- map [31] 0.2% parse-loop15 [127] 0.2% for-loop [84] 3.0% loop! [102] 7.3% for-loop [107] 26.7% loop [136] 62.7% [136] 3378(4.3%) 894(1.1%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [136] 62.7% ??? [155] 8.9% point-error [151] 8.9% loop! [102] 6.5% hash-ref! [98] 0.2% ??? [150] 0.2% foldl [148] 0.0% ---------------------------------------------------------------------------- dedup-children! [117] 12.3% loop [137] 87.7% [137] 2198(2.8%) 2198(2.8%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [137] 87.7% ---------------------------------------------------------------------------- temp68_2 [118] 100.0% [138] 2178(2.8%) 0(0.0%) compile16 (unknown source) temp74_0 [149] 100.0% ---------------------------------------------------------------------------- ...higher-order.rkt:357:33 [123] 100.0% [139] 1326(1.7%) 1326(1.7%) ??? ...cts/racket/contract/private/list.rkt:209:10 ---------------------------------------------------------------------------- dedup-children! [117] 18.0% loop [140] 82.0% [140] 992(1.3%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [140] 82.0% loop [175] 18.0% ---------------------------------------------------------------------------- custom-set-union [129] 100.0% [141] 624(0.8%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [152] 100.0% ---------------------------------------------------------------------------- exprs-to-branch-on [131] 100.0% [142] 334(0.4%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:75:0 for-loop [153] 100.0% ---------------------------------------------------------------------------- set [126] 100.0% [143] 330(0.4%) 330(0.4%) for-loop ...cts/racket/private/set-types.rkt:937:4 ---------------------------------------------------------------------------- loop [132] 100.0% [144] 312(0.4%) 0(0.0%) ordinary-value? ...ie/better-rr/src/float.rkt:54:0 list-member? [154] 100.0% ---------------------------------------------------------------------------- classify-ival [120] 100.0% [145] 300(0.4%) 300(0.4%) force ...collects/racket/private/promise.rkt:109:0 ---------------------------------------------------------------------------- custom-set-union [129] 100.0% [146] 292(0.4%) 292(0.4%) for-loop ...cts/racket/private/set-types.rkt:152:2 ---------------------------------------------------------------------------- for-loop [116] 48.8% for-loop [135] 51.2% [147] 13464(17.0%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [157] 100.0% ---------------------------------------------------------------------------- loop [136] 9.0% bfmin* [122] 34.6% bfmax* [121] 56.4% [148] 3596(4.5%) 0(0.0%) foldl ....0/collects/racket/private/list.rkt:229:4 ??? [156] 91.0% merge2 [162] 9.0% ---------------------------------------------------------------------------- compile16 [138] 100.0% [149] 2178(2.8%) 0(0.0%) temp74_0 (unknown source) expand-single [158] 69.0% compile-top9 [160] 31.0% ---------------------------------------------------------------------------- loop [136] 26.2% ??? [74] 73.8% [150] 1242(1.6%) 920(1.2%) ??? ...rbie/better-rr/src/syntax/syntax.rkt:317:17 ??? [163] 25.9% ---------------------------------------------------------------------------- loop [136] 47.9% for-loop [108] 52.1% [151] 626(0.8%) 0(0.0%) point-error ...rbie/better-rr/src/points.rkt:195:0 ulp-difference [159] 100.0% ---------------------------------------------------------------------------- for-loop [141] 100.0% [152] 624(0.8%) 624(0.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------------------- all-critical-subexpressions [142] 100.0% [153] 334(0.4%) 0(0.0%) for-loop ...ie/better-rr/src/core/regimes.rkt:82:2 list-intersect [161] 100.0% ---------------------------------------------------------------------------- ordinary-value? [144] 100.0% [154] 312(0.4%) 312(0.4%) list-member? ...llects/racket/private/set.rkt:24:0 ---------------------------------------------------------------------------- loop [136] 100.0% [155] 302(0.4%) 0(0.0%) ??? ...lies/herbie/better-rr/src/points.rkt:214:26 ulp-difference [159] 100.0% ---------------------------------------------------------------------------- bf* [125] 9.3% ival-mult [95] 12.8% foldl [148] 24.2% ival-sub [99] 26.5% ival-sqrt [96] 27.1% [156] 13500(17.1%) 914(1.2%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmin2 [165] 53.3% bfsqrt [166] 27.1% bfnext [168] 12.8% ---------------------------------------------------------------------------- hash-update! [147] 100.0% [157] 13464(17.0%) 630(0.8%) ??? ...herbie/better-rr/src/core/egraph.rkt:221:24 for-loop [164] 95.3% ---------------------------------------------------------------------------- temp74_0 [149] 100.0% [158] 1502(1.9%) 0(0.0%) expand-single (unknown source) expand-capturing-lifts [167] 100.0% ---------------------------------------------------------------------------- ??? [155] 32.5% point-error [151] 67.5% [159] 928(1.2%) 628(0.8%) ulp-difference ...bie/better-rr/src/float.rkt:14:0 return/no-unsupplied [169] 32.3% ---------------------------------------------------------------------------- temp74_0 [149] 100.0% [160] 676(0.9%) 0(0.0%) compile-top9 (unknown source) compile-forms31 [170] 100.0% ---------------------------------------------------------------------------- for-loop [153] 100.0% [161] 334(0.4%) 334(0.4%) list-intersect ...ects/racket/private/set.rkt:64:0 ---------------------------------------------------------------------------- foldl [148] 100.0% [162] 324(0.4%) 324(0.4%) merge2 ...erbie/better-rr/src/core/ematch.rkt:24:0 ---------------------------------------------------------------------------- ??? [150] 100.0% [163] 322(0.4%) 322(0.4%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ---------------------------------------------------------------------------- ??? [157] 100.0% [164] 12834(16.2%) 11878(15.0%) for-loop ...e/better-rr/src/core/egraph.rkt:222:26 update-en-expr [174] 7.4% ---------------------------------------------------------------------------- ??? [156] 100.0% [165] 7198(9.1%) 300(0.4%) bfmin2 ...lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [171] 65.2% ??? [172] 30.6% ---------------------------------------------------------------------------- ??? [156] 100.0% [166] 3656(4.6%) 0(0.0%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:618:4 new-mpfr [171] 76.0% ??? [172] 24.0% ---------------------------------------------------------------------------- loop [175] 26.4% expand-single [158] 73.6% [167] 2042(2.6%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [173] 73.6% loop [175] 26.4% ---------------------------------------------------------------------------- ??? [156] 100.0% [168] 1732(2.2%) 0(0.0%) bfnext ...lib/math/private/bigfloat/mpfr.rkt:867:0 ??? [172] 81.5% new-mpfr [171] 18.5% ---------------------------------------------------------------------------- ulp-difference [159] 33.8% ->flonum [101] 66.2% [169] 888(1.1%) 888(1.1%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 ---------------------------------------------------------------------------- compile-top9 [160] 100.0% [170] 676(0.9%) 0(0.0%) compile-forms31 (unknown source) for-loop [180] 100.0% ---------------------------------------------------------------------------- bfnext [168] 3.6% bf [124] 11.5% bfsqrt [166] 31.6% bfmin2 [165] 53.3% [171] 8804(11.1%) 8804(11.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ---------------------------------------------------------------------------- bf [124] 6.3% bfsqrt [166] 18.3% bfnext [168] 29.4% bfmin2 [165] 46.0% [172] 4796(6.1%) 4796(6.1%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ---------------------------------------------------------------------------- expand-capturing-lifts [167] 100.0% [173] 1502(1.9%) 300(0.4%) lambda-clause-expander (unknown source) finish-bodys [176] 60.1% loop [175] 20.0% ---------------------------------------------------------------------------- loop! [102] 23.9% for-loop [164] 76.1% [174] 1256(1.6%) 1256(1.6%) update-en-expr ...ter-rr/src/core/egraph.rkt:207:0 ---------------------------------------------------------------------------- loop [175] 8.4% expand-capturing-lifts [167] 8.4% eval-prog [100] 8.4% lambda-clause-expander [173] 14.1% apply-transformer52 [186] 14.1% loop [140] 46.5% [175] 2132(2.7%) 992(1.3%) loop (unknown source) core-form-sym [177] 14.1% dispatch-transformer41 [181] 14.1% expand-capturing-lifts [167] 8.4% loop [175] 8.4% for-loop [180] 8.4% ---------------------------------------------------------------------------- lambda-clause-expander [173] 34.4% for-loop [180] 65.6% [176] 902(1.1%) 0(0.0%) finish-bodys (unknown source) for-loop [180] 100.0% ---------------------------------------------------------------------------- loop [175] 100.0% [177] 300(0.4%) 0(0.0%) core-form-sym (unknown source) resolve+shift28 [178] 100.0% ---------------------------------------------------------------------------- core-form-sym [177] 49.8% expand-identifier [7] 50.2% [178] 602(0.8%) 0(0.0%) resolve+shift28 (unknown source) fallback-loop [179] 100.0% ---------------------------------------------------------------------------- resolve+shift28 [178] 100.0% [179] 602(0.8%) 0(0.0%) fallback-loop (unknown source) for-loop [180] 100.0% ---------------------------------------------------------------------------- fallback-loop [179] 5.3% temp37_0 [183] 8.5% run-module-instance!125 [184] 8.5% loop [175] 8.5% for-loop [180] 10.6% finish-bodys [176] 26.6% compile-forms31 [170] 31.9% [180] 2118(2.7%) 1278(1.6%) for-loop (unknown source) finish-bodys [176] 17.8% for-loop [180] 10.6% run-module-instance!125 [184] 8.5% temp37_0 [183] 8.5% module-path-index-resolve [182] 8.5% dispatch-transformer41 [181] 3.5% expand-implicit [185] 3.5% expand-identifier [7] 1.8% ---------------------------------------------------------------------------- loop [175] 50.0% for-loop [180] 50.0% [181] 600(0.8%) 0(0.0%) dispatch-transformer41 (unknown source) apply-transformer52 [186] 100.0% ---------------------------------------------------------------------------- for-loop [180] 100.0% [182] 540(0.7%) 0(0.0%) module-path-index-resolve (unknown source) standard-module-name-resolver [187]100.0% ---------------------------------------------------------------------------- for-loop [180] 100.0% [183] 540(0.7%) 0(0.0%) temp37_0 (unknown source) for-loop [180] 100.0% ---------------------------------------------------------------------------- for-loop [180] 100.0% [184] 540(0.7%) 0(0.0%) run-module-instance!125 (unknown source) for-loop [180] 100.0% ---------------------------------------------------------------------------- for-loop [180] 100.0% [185] 300(0.4%) 0(0.0%) expand-implicit (unknown source) binding-lookup50 [188] 100.0% ---------------------------------------------------------------------------- dispatch-transformer41 [181] 100.0% [186] 600(0.8%) 0(0.0%) apply-transformer52 (unknown source) loop [175] 50.0% apply-transformer-in-context [189] 50.0% ---------------------------------------------------------------------------- module-path-index-resolve [182] 100.0% [187] 540(0.7%) 540(0.7%) standard-module-name-resolver (unknown source) ---------------------------------------------------------------------------- expand-implicit [185] 100.0% [188] 300(0.4%) 300(0.4%) binding-lookup50 (unknown source) ---------------------------------------------------------------------------- apply-transformer52 [186] 100.0% [189] 300(0.4%) 0(0.0%) apply-transformer-in-context (unknown source) go [190] 100.0% ---------------------------------------------------------------------------- apply-transformer-in-context [189] 100.0% [190] 300(0.4%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [191] 100.0% ---------------------------------------------------------------------------- go [190] 100.0% [191] 300(0.4%) 0(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 stx-cdr [192] 100.0% ---------------------------------------------------------------------------- loop [191] 100.0% [192] 300(0.4%) 300(0.4%) stx-cdr ....0/collects/racket/private/stx.rkt:74:4 ----------------------------------------------------------------------------