Profiling results ----------------- Total cpu time observed: 442226ms (out of 462060ms) Number of samples taken: 2970 (once every 149ms) (Hiding functions with self<1.0% and local<2.0%: 20 of 286 hidden) =============================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =============================================================================== ??? [70] 100.0% [1] 406970(92.0%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [19] 100.0% ------------------------------------------------------------------------------- ??? [70] 100.0% [2] 244484(55.3%) 0(0.0%) run-improve50 ...ock/herbie/src/mainloop.rkt:234:0 for-loop [20] 75.0% get-final-combination [23] 22.3% loop [141] 2.4% setup-prog [27] 0.3% ------------------------------------------------------------------------------- for-loop [89] 0.1% ??? [187] 0.2% ??? [156] 1.2% map [182] 2.0% for-loop [199] 14.0% loop [197] 82.5% [3] 200492(45.3%) 17002(3.8%) ??? /home/ztatlock/herbie/src/programs.rkt:152:4 ??? [21] 56.6% loop [197] 19.5% ??? [203] 12.7% ->flonum [204] 2.4% ------------------------------------------------------------------------------- simplify-alt [44] 0.4% loop [197] 1.5% ??? [70] 98.2% [4] 143896(32.5%) 320(0.1%) simplify ...lock/herbie/src/core/simplify.rkt:39:0 simplify-expr [22] 60.0% iterate-egraph!5 [34] 20.2% for-loop [24] 13.2% loop [36] 6.2% mk-egraph [43] 0.2% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [5] 10044(2.3%) 286(0.1%) ??? /home/ztatlock/herbie/src/programs.rkt:181:5 loop [197] 82.0% hash-ref! [218] 17.2% ------------------------------------------------------------------------------- copying-mergesort [123] 100.0% [6] 7316(1.7%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [156] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [7] 2958(0.7%) 112(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:291:23 for-loop [25] 96.2% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [8] 1610(0.4%) 176(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:334:33 hash-ref! [218] 58.1% for-loop [28] 30.9% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [9] 1366(0.3%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:388:23 for-loop [26] 100.0% ------------------------------------------------------------------------------- f134 [49] 100.0% [10] 608(0.1%) 0(0.0%) taylor-invert .../herbie/src/core/taylor.rkt:308:0 simplify [233] 75.0% first-nonzero-exp [194] 25.0% ------------------------------------------------------------------------------- rewriter [88] 100.0% [11] 546(0.1%) 0(0.0%) *rules* ...tlock/herbie/src/syntax/rules.rkt:411:0 for-loop [118] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [12] 510(0.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:281:26 for-loop [29] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [13] 288(0.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:318:33 for-loop [30] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [14] 284(0.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:479:23 for-loop [31] 100.0% ------------------------------------------------------------------------------- loop [84] 100.0% [15] 278(0.1%) 0(0.0%) ??? ...ztatlock/herbie/src/core/localize.rkt:43:32 ulp-difference [212] 100.0% ------------------------------------------------------------------------------- f134 [49] 100.0% [16] 150(0.0%) 0(0.0%) taylor-log ...ock/herbie/src/core/taylor.rkt:472:0 simplify [233] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [17] 144(0.0%) 0(0.0%) taylor-exp ...ock/herbie/src/core/taylor.rkt:382:0 simplify [233] 100.0% ------------------------------------------------------------------------------- matcher [115] 100.0% [18] 130(0.0%) 0(0.0%) for-loop ...lock/herbie/src/core/matcher.rkt:155:6 pattern-match [32] 100.0% ------------------------------------------------------------------------------- profile-thunk16 [1] 99.5% [19] 409156(92.5%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [70] 100.0% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [20] 183458(41.5%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:245:8 run-iter! [33] 100.0% ------------------------------------------------------------------------------- ??? [3] 100.0% [21] 113482(25.7%) 39698(9.0%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [50] 39.5% bf* [37] 13.0% ??? [38] 4.7% ??? [39] 2.9% ??? [219] 2.6% ...higher-order.rkt:346:33 [40] 2.3% ------------------------------------------------------------------------------- simplify [4] 100.0% [22] 86320(19.5%) 258(0.1%) simplify-expr ...herbie/src/core/simplify.rkt:68:0 iterate-egraph!5 [34] 82.2% loop [36] 17.3% mk-egraph [43] 0.2% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [23] 54584(12.3%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:260:0 split-table [35] 95.4% extract-alt [41] 4.6% ------------------------------------------------------------------------------- simplify [4] 100.0% [24] 18992(4.3%) 332(0.1%) for-loop ...ock/herbie/src/core/simplify.rkt:61:12 iterate-egraph!5 [34] 85.0% loop [36] 10.5% mk-egraph [43] 1.4% debug7 [245] 0.8% debug-print [242] 0.5% ------------------------------------------------------------------------------- ??? [7] 100.0% [25] 2846(0.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:294:27 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- ??? [9] 100.0% [26] 1366(0.3%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:392:33 for-loop [42] 100.0% ------------------------------------------------------------------------------- run-improve50 [2] 100.0% [27] 662(0.1%) 0(0.0%) setup-prog /home/ztatlock/herbie/src/glue.rkt:45:0 simplify-alt [44] 78.2% ??? [104] 21.8% ------------------------------------------------------------------------------- ??? [8] 100.0% [28] 566(0.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:337:46 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- ??? [12] 100.0% [29] 510(0.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:281:52 hash-ref! [218] 65.9% ??? [45] 17.1% simplify [233] 17.1% ------------------------------------------------------------------------------- ??? [13] 100.0% [30] 288(0.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:320:46 simplify [233] 100.0% ------------------------------------------------------------------------------- ??? [14] 100.0% [31] 284(0.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:483:35 parse-loop12 [241] 100.0% ------------------------------------------------------------------------------- for-loop [46] 50.0% for-loop [18] 50.0% [32] 130(0.0%) 0(0.0%) pattern-match .../herbie/src/core/matcher.rkt:47:0 for-loop [46] 50.0% ??? [104] 50.0% ------------------------------------------------------------------------------- for-loop [20] 100.0% [33] 183458(41.5%) 0(0.0%) run-iter! ...tatlock/herbie/src/mainloop.rkt:215:0 simplify! [47] 77.0% finalize-iter! [51] 16.3% gen-series! [53] 4.7% gen-rewrites! [55] 0.9% choose-best-alt! [56] 0.8% localize-error [91] 0.3% ------------------------------------------------------------------------------- for-loop [24] 13.9% simplify [4] 25.0% simplify-expr [22] 61.1% [34] 116146(26.3%) 750(0.2%) iterate-egraph!5 ...bie/src/core/simplify.rkt:95:0 one-iter [48] 96.2% map-enodes [54] 2.7% *simplify-rules* [58] 0.3% debug-print [242] 0.2% ------------------------------------------------------------------------------- get-final-combination [23] 100.0% [35] 52070(11.8%) 0(0.0%) split-table .../ztatlock/herbie/src/glue.rkt:164:0 f134 [49] 95.7% ??? [104] 4.3% ------------------------------------------------------------------------------- for-loop [24] 7.7% simplify [4] 34.7% simplify-expr [22] 57.6% [36] 25902(5.9%) 0(0.0%) loop ...tatlock/herbie/src/core/simplify.rkt:203:2 pass [52] 100.0% ------------------------------------------------------------------------------- ??? [21] 100.0% [37] 14724(3.3%) 242(0.1%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [50] 98.4% ------------------------------------------------------------------------------- ??? [21] 100.0% [38] 5284(1.2%) 772(0.2%) ??? ...tatlock/herbie/src/syntax/syntax.rkt:118:17 ??? [217] 85.4% ------------------------------------------------------------------------------- ??? [21] 100.0% [39] 3332(0.8%) 3332(0.8%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------- ??? [21] 100.0% [40] 2646(0.6%) 786(0.2%) ...higher-order.rkt:346:33 (unknown source) ??? [126] 64.0% ??? [238] 6.3% ------------------------------------------------------------------------------- get-final-combination [23] 100.0% [41] 2514(0.6%) 0(0.0%) extract-alt ...e/ztatlock/herbie/src/glue.rkt:56:0 loop [197] 85.2% loop [176] 10.8% argmins [179] 4.0% ------------------------------------------------------------------------------- for-loop [26] 100.0% [42] 1366(0.3%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:394:39 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- simplify-expr [22] 23.4% simplify [4] 37.1% for-loop [24] 39.5% [43] 684(0.2%) 0(0.0%) mk-egraph ...lock/herbie/src/core/egraph.rkt:123:0 expr->enode [57] 76.6% mk-enode! [110] 23.4% ------------------------------------------------------------------------------- setup-prog [27] 100.0% [44] 518(0.1%) 0(0.0%) simplify-alt .../ztatlock/herbie/src/glue.rkt:83:0 simplify [4] 100.0% ------------------------------------------------------------------------------- for-loop [29] 100.0% [45] 174(0.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:284:19 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- pattern-match [32] 100.0% [46] 130(0.0%) 0(0.0%) for-loop ...tlock/herbie/src/core/matcher.rkt:65:9 pattern-match [32] 100.0% ------------------------------------------------------------------------------- run-iter! [33] 100.0% [47] 141252(31.9%) 264(0.1%) simplify! ...tatlock/herbie/src/mainloop.rkt:155:0 for-loop [59] 99.8% ------------------------------------------------------------------------------- iterate-egraph!5 [34] 100.0% [48] 111778(25.3%) 3338(0.8%) one-iter ...ock/herbie/src/core/simplify.rkt:106:0 for-loop [60] 68.1% loop [63] 24.9% apply-match [71] 3.1% loop [175] 1.0% ------------------------------------------------------------------------------- for-loop [259] 0.1% composed [185] 0.2% ??? [208] 0.2% for-loop [178] 0.3% append-map [202] 0.3% parse-loop12 [241] 0.4% eval-const-expr [222] 0.7% hash-ref! [218] 0.8% approximate9 [157] 0.8% simplify [233] 2.5% map [182] 3.6% eval-prog [198] 6.6% f134 [49] 15.7% split-table [35] 67.8% [49] 62896(14.2%) 2042(0.5%) f134 .../collects/racket/match/compiler.rkt:507:40 option-on-expr [61] 48.0% loop [197] 17.9% f134 [49] 15.7% ??? [143] 6.2% map [182] 6.1% exprs-to-branch-on [68] 2.0% append-map [202] 0.5% ??? [104] 0.4% taylor [193] 0.4% taylor-invert [10] 0.4% table-ref [171] 0.3% composed [185] 0.3% ??? [163] 0.2% make-keyword-procedure [206] 0.2% gather-multiplicative-terms [69] 0.2% parse-app [251] 0.1% taylor-quotient [188] 0.0% taylor-log [16] 0.0% ------------------------------------------------------------------------------- bf* [37] 24.4% ??? [21] 75.6% [50] 59276(13.4%) 19388(4.4%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfsub [62] 47.6% bfexp [65] 19.7% ------------------------------------------------------------------------------- run-iter! [33] 100.0% [51] 29904(6.8%) 0(0.0%) finalize-iter! ...ck/herbie/src/mainloop.rkt:169:0 ??? [104] 100.0% ------------------------------------------------------------------------------- loop [36] 100.0% [52] 25902(5.9%) 132(0.0%) pass ...tatlock/herbie/src/core/simplify.rkt:193:2 for-loop [64] 99.5% ------------------------------------------------------------------------------- run-iter! [33] 100.0% [53] 8590(1.9%) 0(0.0%) gen-series! ...tlock/herbie/src/mainloop.rkt:129:0 for-loop [66] 100.0% ------------------------------------------------------------------------------- iterate-egraph!5 [34] 100.0% [54] 3084(0.7%) 0(0.0%) map-enodes ...ock/herbie/src/core/egraph.rkt:139:0 loop [197] 90.5% for-loop [205] 4.9% curried [227] 4.6% ------------------------------------------------------------------------------- run-iter! [33] 100.0% [55] 1742(0.4%) 0(0.0%) gen-rewrites! ...ock/herbie/src/mainloop.rkt:142:0 for-loop [67] 100.0% ------------------------------------------------------------------------------- run-iter! [33] 100.0% [56] 1426(0.3%) 0(0.0%) choose-best-alt! .../herbie/src/mainloop.rkt:115:0 ??? [104] 100.0% ------------------------------------------------------------------------------- expr->enode [57] 42.7% mk-egraph [43] 57.3% [57] 524(0.1%) 0(0.0%) expr->enode ...ck/herbie/src/core/egraph.rkt:124:2 mk-enode! [110] 57.3% expr->enode [57] 42.7% ------------------------------------------------------------------------------- iterate-egraph!5 [34] 100.0% [58] 298(0.1%) 0(0.0%) *simplify-rules* ...bie/src/syntax/rules.rkt:415:0 for-loop [118] 100.0% ------------------------------------------------------------------------------- simplify! [47] 99.0% [59] 142418(32.2%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:159:6 ??? [70] 99.2% debug-print [242] 0.7% debug7 [245] 0.1% ------------------------------------------------------------------------------- for-loop [60] 49.0% one-iter [48] 51.0% [60] 76104(17.2%) 17454(3.9%) for-loop ...ck/herbie/src/core/simplify.rkt:116:12 for-loop [60] 49.0% match-e [82] 38.0% ??? [129] 0.6% ------------------------------------------------------------------------------- loop [197] 23.8% f134 [49] 76.2% [61] 48126(10.9%) 0(0.0%) option-on-expr ...erbie/src/core/regimes.rkt:115:0 sort-context-on-expr [72] 56.5% sindices->spoints [74] 28.3% loop [197] 7.9% pick-errors [78] 3.6% errors [190] 2.5% err-lsts->split-indices [81] 1.2% ------------------------------------------------------------------------------- ??? [50] 100.0% [62] 28202(6.4%) 12452(2.8%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [248] 55.8% ------------------------------------------------------------------------------- one-iter [48] 100.0% [63] 27826(6.3%) 434(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [71] 98.4% ------------------------------------------------------------------------------- pass [52] 100.0% [64] 25770(5.8%) 540(0.1%) for-loop ...ck/herbie/src/core/simplify.rkt:196:29 argmin [73] 67.9% loop [76] 24.2% for-loop [80] 4.0% make-sequence [119] 1.3% loop [175] 0.5% ------------------------------------------------------------------------------- ??? [50] 100.0% [65] 11686(2.6%) 7024(1.6%) bfexp ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [248] 39.9% ------------------------------------------------------------------------------- gen-series! [53] 100.0% [66] 8590(1.9%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:135:7 taylor-alt [75] 100.0% ------------------------------------------------------------------------------- gen-rewrites! [55] 100.0% [67] 1742(0.4%) 0(0.0%) for-loop ...tatlock/herbie/src/mainloop.rkt:147:11 ??? [77] 100.0% ------------------------------------------------------------------------------- f134 [49] 100.0% [68] 1724(0.4%) 0(0.0%) exprs-to-branch-on ...ie/src/core/regimes.rkt:44:0 critical-subexpression [79] 100.0% ------------------------------------------------------------------------------- f134 [49] 100.0% [69] 422(0.1%) 314(0.1%) gather-multiplicative-terms ...re/reduce.rkt:105:0 compose [221] 25.6% ------------------------------------------------------------------------------- for-loop [59] 11.7% run [19] 43.2% [70] 426014(96.3%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 42.7% run-improve50 [2] 24.1% loop [141] 21.5% simplify [4] 11.7% ------------------------------------------------------------------------------- one-iter [48] 11.1% loop [63] 88.9% [71] 30824(7.0%) 1750(0.4%) apply-match .../herbie/src/core/simplify.rkt:122:2 match-e [82] 30.5% merge-egraph-nodes! [97] 23.0% for-loop [86] 13.7% substitute-e [99] 9.3% loop! [108] 7.8% mk-enode! [110] 4.4% update-leader! [109] 3.6% reduce-to-single! [92] 2.0% ------------------------------------------------------------------------------- option-on-expr [61] 100.0% [72] 27194(6.1%) 0(0.0%) sort-context-on-expr ...herbie/src/points.rkt:79:0 ??? [95] 100.0% ------------------------------------------------------------------------------- for-loop [64] 100.0% [73] 17504(4.0%) 130(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [83] 91.5% expression-cost [87] 7.8% ------------------------------------------------------------------------------- option-on-expr [61] 100.0% [74] 13634(3.1%) 0(0.0%) sindices->spoints ...ie/src/core/regimes.rkt:128:0 loop [84] 100.0% ------------------------------------------------------------------------------- for-loop [66] 100.0% [75] 8590(1.9%) 0(0.0%) taylor-alt ...e/ztatlock/herbie/src/glue.rkt:141:0 for-loop [85] 100.0% ------------------------------------------------------------------------------- for-loop [64] 100.0% [76] 6226(1.4%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [83] 90.3% expression-cost [87] 9.7% ------------------------------------------------------------------------------- for-loop [67] 100.0% [77] 1742(0.4%) 0(0.0%) ??? /home/ztatlock/herbie/src/alternative.rkt:88:0 rewriter [88] 100.0% ------------------------------------------------------------------------------- option-on-expr [61] 100.0% [78] 1734(0.4%) 0(0.0%) pick-errors ...k/herbie/src/core/regimes.rkt:187:0 for-loop [89] 100.0% ------------------------------------------------------------------------------- exprs-to-branch-on [68] 100.0% [79] 1724(0.4%) 0(0.0%) critical-subexpression ...rc/core/regimes.rkt:52:0 for-loop [90] 91.8% localize-error [91] 8.2% ------------------------------------------------------------------------------- for-loop [64] 100.0% [80] 1042(0.2%) 1042(0.2%) for-loop ...ck/herbie/src/core/simplify.rkt:183:13 ------------------------------------------------------------------------------- option-on-expr [61] 100.0% [81] 594(0.1%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:238:0 add-splitpoint [93] 100.0% ------------------------------------------------------------------------------- apply-match [71] 8.5% for-loop [105] 19.0% for-loop [60] 72.5% [82] 67178(15.2%) 32610(7.4%) match-e ...tatlock/herbie/src/core/ematch.rkt:46:0 for-loop [94] 32.4% ??? [104] 9.1% for-loop [105] 8.6% variable? [220] 2.2% custom-in-set [150] 1.3% loop [197] 1.3% list-cartesian-product [111] 1.2% curry* [120] 0.3% filter [261] 0.1% ------------------------------------------------------------------------------- loop [76] 26.0% argmin [73] 74.0% [83] 21632(4.9%) 730(0.2%) for-loop ...ztatlock/herbie/src/programs.rkt:197:2 table-ref [171] 67.6% ...erbie/src/common.rkt:46:2 [98] 27.4% ??? [163] 1.6% ------------------------------------------------------------------------------- parse-loop12 [241] 0.0% map [182] 0.3% loop [84] 3.7% sindices->spoints [74] 96.0% [84] 14204(3.2%) 144(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 sidx->spoint [96] 96.0% loop [84] 3.7% ??? [15] 0.3% ->flonum [204] 0.0% ------------------------------------------------------------------------------- taylor-alt [75] 100.0% [85] 8590(1.9%) 0(0.0%) for-loop /home/ztatlock/herbie/src/glue.rkt:143:2 ??? [143] 100.0% ------------------------------------------------------------------------------- apply-match [71] 100.0% [86] 4214(1.0%) 98(0.0%) for-loop ...ck/herbie/src/core/simplify.rkt:136:10 loop! [108] 44.2% merge-egraph-nodes! [97] 25.5% substitute-e [99] 18.8% mk-enode! [110] 9.2% ------------------------------------------------------------------------------- loop [76] 30.7% argmin [73] 69.3% [87] 1968(0.4%) 0(0.0%) expression-cost ...k/herbie/src/programs.rkt:196:0 compile [100] 100.0% ------------------------------------------------------------------------------- ??? [77] 23.9% matcher [115] 76.1% [88] 1742(0.4%) 808(0.2%) rewriter ...lock/herbie/src/core/matcher.rkt:127:2 for-loop [101] 81.9% *rules* [11] 9.0% ------------------------------------------------------------------------------- pick-errors [78] 100.0% [89] 1734(0.4%) 114(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:190:4 eval-prog [198] 76.4% ??? [3] 17.1% ------------------------------------------------------------------------------- critical-subexpression [79] 100.0% [90] 1582(0.4%) 0(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:87:19 eval-prog [198] 100.0% ------------------------------------------------------------------------------- critical-subexpression [79] 20.7% run-iter! [33] 79.3% [91] 686(0.2%) 0(0.0%) localize-error ...erbie/src/core/localize.rkt:47:0 hash-ref! [218] 80.5% ??? [95] 19.5% ------------------------------------------------------------------------------- apply-match [71] 100.0% [92] 624(0.1%) 162(0.0%) reduce-to-single! ...bie/src/core/egraph.rkt:324:0 make-sequence [119] 48.7% for-loop [103] 25.3% ------------------------------------------------------------------------------- err-lsts->split-indices [81] 100.0% [93] 594(0.1%) 0(0.0%) add-splitpoint ...erbie/src/core/regimes.rkt:251:2 for-loop [102] 100.0% ------------------------------------------------------------------------------- match-e [82] 100.0% [94] 28840(6.5%) 8290(1.9%) for-loop ...tlock/herbie/src/core/ematch.rkt:59:11 for-loop [105] 59.7% list-cartesian-product [111] 9.3% loop [197] 3.2% foldl [211] 0.9% filter [261] 0.9% curry* [120] 0.9% ------------------------------------------------------------------------------- localize-error [91] 0.5% group-by68 [264] 0.7% sort-context-on-expr [72] 98.9% [95] 27510(6.2%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [106] 84.4% loop [144] 15.2% ------------------------------------------------------------------------------- loop [84] 100.0% [96] 13634(3.1%) 306(0.1%) sidx->spoint .../herbie/src/core/regimes.rkt:142:2 binary-search [107] 71.0% binary-search-floats [112] 26.8% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 4.7% for-loop [86] 13.1% apply-match [71] 81.4% [97] 8168(1.8%) 432(0.1%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 update-leader! [109] 38.2% enode-merge! [116] 20.6% for-loop [117] 14.9% loop! [108] 10.5% merge-egraph-nodes! [97] 4.7% make-sequence [119] 3.4% for-loop [118] 1.6% ------------------------------------------------------------------------------- ->bf [166] 4.1% ??? [143] 22.2% for-loop [83] 73.7% [98] 8042(1.8%) 1958(0.4%) ...erbie/src/common.rkt:46:2 ...e/arr-i.rkt:906:19 ??? [113] 46.7% ??? [114] 29.0% ------------------------------------------------------------------------------- substitute-e [99] 21.4% for-loop [86] 21.7% apply-match [71] 56.9% [99] 3662(0.8%) 796(0.2%) substitute-e ...ck/herbie/src/core/ematch.rkt:71:0 mk-enode! [110] 47.8% substitute-e [99] 21.4% ??? [104] 11.5% variable? [220] 1.1% ------------------------------------------------------------------------------- expression-cost [87] 100.0% [100] 1968(0.4%) 0(0.0%) compile .../ztatlock/herbie/src/programs.rkt:173:0 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- rewriter [88] 100.0% [101] 1742(0.4%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:130:10 matcher [115] 100.0% ------------------------------------------------------------------------------- add-splitpoint [93] 100.0% [102] 594(0.1%) 168(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:253:4 for-loop [121] 71.7% ------------------------------------------------------------------------------- reduce-to-single! [92] 100.0% [103] 158(0.0%) 158(0.0%) for-loop ...tlock/herbie/src/core/egraph.rkt:325:8 ------------------------------------------------------------------------------- pattern-match [32] 0.2% setup-prog [27] 0.3% debug7 [245] 0.3% for-loop [152] 0.5% setfindf [225] 0.5% f134 [49] 1.1% substitute-e [99] 1.8% choose-best-alt! [56] 2.5% split-table [35] 3.9% variable? [220] 6.5% ??? [238] 10.7% match-e [82] 19.1% finalize-iter! [51] 52.6% [104] 56390(12.8%) 10768(2.4%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [122] 51.5% hash-has-key? [125] 21.1% split-atab [128] 3.9% ??? [131] 2.5% ??? [238] 0.5% ------------------------------------------------------------------------------- match-e [82] 35.3% for-loop [94] 64.7% [105] 27260(6.2%) 2310(0.5%) for-loop ...tlock/herbie/src/core/ematch.rkt:65:37 match-e [82] 87.2% ??? [129] 4.5% ------------------------------------------------------------------------------- ??? [95] 100.0% [106] 23208(5.2%) 182(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [123] 78.7% loop [144] 20.5% ------------------------------------------------------------------------------- sidx->spoint [96] 95.9% [107] 10092(2.3%) 0(0.0%) binary-search ...tlock/herbie/src/common.rkt:197:0 pred [124] 100.0% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 14.9% loop [197] 26.0% for-loop [86] 27.0% apply-match [71] 32.1% [108] 5356(1.2%) 1266(0.3%) loop! .../ztatlock/herbie/src/core/enode.rkt:163:2 custom-set-union [146] 36.1% loop [197] 33.5% set [148] 13.3% update-en-expr [192] 3.2% ------------------------------------------------------------------------------- apply-match [71] 24.9% merge-egraph-nodes! [97] 75.1% [109] 4434(1.0%) 430(0.1%) update-leader! ...herbie/src/core/egraph.rkt:217:0 for-loop [127] 84.0% custom-set-union! [138] 3.3% update-en-expr [192] 3.0% ------------------------------------------------------------------------------- mk-egraph [43] 3.8% for-loop [86] 9.2% expr->enode [57] 12.5% apply-match [71] 32.6% substitute-e [99] 41.9% [110] 4186(0.9%) 2994(0.7%) mk-enode! ...lock/herbie/src/core/egraph.rkt:101:0 new-enode [133] 19.1% hash-has-key? [125] 9.4% ------------------------------------------------------------------------------- list-cartesian-product [111] 19.8% match-e [82] 19.9% for-loop [94] 60.3% [111] 4050(0.9%) 3268(0.7%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [111] 19.8% for-loop [134] 11.9% ------------------------------------------------------------------------------- sidx->spoint [96] 96.4% [112] 3786(0.9%) 0(0.0%) binary-search-floats ...erbie/src/common.rkt:212:0 pred [124] 100.0% ------------------------------------------------------------------------------- for-loop [149] 3.7% ??? [126] 11.3% ...erbie/src/common.rkt:46:2 [98] 84.9% [113] 3754(0.8%) 1142(0.3%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [126] 75.4% ??? [238] 4.6% ------------------------------------------------------------------------------- ...erbie/src/common.rkt:46:2 [98] 100.0% [114] 2330(0.5%) 792(0.2%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [232] 39.1% return/no-unsupplied [249] 21.3% assoc-ref [139] 5.6% ------------------------------------------------------------------------------- for-loop [130] 24.0% matcher [115] 25.5% for-loop [101] 50.6% [115] 1742(0.4%) 136(0.0%) matcher ...tlock/herbie/src/core/matcher.rkt:163:2 rewriter [88] 47.5% matcher [115] 25.5% for-loop [130] 24.0% variable? [220] 1.2% for-loop [18] 0.7% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 100.0% [116] 1684(0.4%) 0(0.0%) enode-merge! ...ck/herbie/src/core/enode.rkt:100:0 adopt-enode! [132] 74.0% custom-set-intersect! [137] 26.0% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 100.0% [117] 1218(0.3%) 912(0.2%) for-loop ...tlock/herbie/src/core/egraph.rkt:232:6 update-en-expr [192] 25.1% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 13.2% *simplify-rules* [58] 30.7% *rules* [11] 56.2% [118] 972(0.2%) 302(0.1%) for-loop /home/ztatlock/herbie/src/common.rkt:93:9 ormap [136] 53.5% ??? [217] 15.4% ------------------------------------------------------------------------------- merge-egraph-nodes! [97] 30.6% reduce-to-single! [92] 33.2% for-loop [64] 36.2% [119] 916(0.2%) 790(0.2%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [140] 13.8% ------------------------------------------------------------------------------- for-loop [94] 46.1% match-e [82] 53.9% [120] 534(0.1%) 0(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [135] 100.0% ------------------------------------------------------------------------------- for-loop [102] 100.0% [121] 426(0.1%) 426(0.1%) for-loop ...lock/herbie/src/core/regimes.rkt:257:8 ------------------------------------------------------------------------------- ??? [104] 100.0% [122] 29306(6.6%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [142] 100.0% ------------------------------------------------------------------------------- generic-sort/key [106] 46.5% copying-mergesort [123] 53.5% [123] 18262(4.1%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [123] 53.5% loop [144] 36.5% jloop [6] 10.0% ------------------------------------------------------------------------------- binary-search-floats [112] 27.3% binary-search [107] 72.7% [124] 13878(3.1%) 0(0.0%) pred ...tatlock/herbie/src/core/regimes.rkt:148:17 loop [141] 93.3% errors [190] 6.7% ------------------------------------------------------------------------------- mk-enode! [110] 3.1% ??? [104] 96.9% [125] 12516(2.8%) 3656(0.8%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [183] 64.0% ??? [151] 6.8% ------------------------------------------------------------------------------- table-ref [171] 1.9% ...higher-order.rkt:346:33 [40] 32.7% ??? [113] 65.4% [126] 5188(1.2%) 2352(0.5%) ??? ...cts/racket/contract/private/list.rkt:187:10 for-loop [149] 22.8% ??? [113] 16.4% ??? [238] 15.4% ------------------------------------------------------------------------------- update-leader! [109] 100.0% [127] 3724(0.8%) 322(0.1%) for-loop ...tlock/herbie/src/core/egraph.rkt:222:6 for-loop [145] 91.4% ------------------------------------------------------------------------------- ??? [104] 100.0% [128] 2220(0.5%) 0(0.0%) split-atab ...k/herbie/src/core/alt-table.rkt:74:0 for-loop [147] 100.0% ------------------------------------------------------------------------------- for-loop [60] 40.4% for-loop [105] 59.6% [129] 2178(0.5%) 1438(0.3%) ??? /home/ztatlock/herbie/src/core/ematch.rkt:50:5 for-loop [152] 34.0% ------------------------------------------------------------------------------- matcher [115] 100.0% [130] 1634(0.4%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:179:21 matcher [115] 100.0% ------------------------------------------------------------------------------- ??? [104] 100.0% [131] 1426(0.3%) 0(0.0%) ??? ...ztatlock/herbie/src/core/alt-table.rkt:54:0 ??? [143] 100.0% ------------------------------------------------------------------------------- enode-merge! [116] 100.0% [132] 1246(0.3%) 0(0.0%) adopt-enode! ...ock/herbie/src/core/enode.rkt:76:0 custom-set-union [146] 100.0% ------------------------------------------------------------------------------- mk-enode! [110] 100.0% [133] 800(0.2%) 0(0.0%) new-enode ...atlock/herbie/src/core/enode.rkt:68:0 set [148] 79.0% mutable-set [153] 21.0% ------------------------------------------------------------------------------- list-cartesian-product [111] 100.0% [134] 782(0.2%) 782(0.2%) for-loop ...atlock/herbie/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------- curry* [120] 100.0% [135] 534(0.1%) 534(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------- for-loop [118] 100.0% [136] 520(0.1%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 ??? [217] 100.0% ------------------------------------------------------------------------------- enode-merge! [116] 100.0% [137] 438(0.1%) 438(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ------------------------------------------------------------------------------- update-leader! [109] 100.0% [138] 146(0.0%) 146(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 ------------------------------------------------------------------------------- ??? [114] 100.0% [139] 130(0.0%) 130(0.0%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------- make-sequence [119] 100.0% [140] 126(0.0%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [150] 100.0% ------------------------------------------------------------------------------- run-improve50 [2] 2.9% pred [124] 6.5% ??? [70] 90.6% [141] 198828(45.0%) 416(0.1%) loop /home/ztatlock/herbie/src/points.rkt:159:2 loop [154] 51.8% make-exacts* [169] 28.3% loop [170] 17.4% for-loop [158] 2.3% map [182] 0.1% ------------------------------------------------------------------------------- for-loop [122] 98.0% [142] 29904(6.8%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [155] 96.6% override-at-pnts [164] 3.4% ------------------------------------------------------------------------------- ??? [186] 0.6% eval-prog [198] 2.6% ??? [131] 5.2% table-ref [171] 17.4% for-loop [85] 17.4% f134 [49] 56.2% [143] 24658(5.6%) 340(0.1%) ??? ...tract/private/arrow-higher-order.rkt:342:33 table-ref [171] 35.2% ??? [238] 25.8% approximate9 [157] 17.4% ...erbie/src/common.rkt:46:2 [98] 7.2% best-alt [162] 5.8% ??? [163] 2.6% ??? [203] 2.2% ->bf [166] 1.8% ->flonum [204] 0.6% ------------------------------------------------------------------------------- ??? [95] 21.0% generic-sort/key [106] 24.0% copying-mergesort [123] 55.1% [144] 19878(4.5%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [156] 100.0% ------------------------------------------------------------------------------- for-loop [127] 100.0% [145] 3402(0.8%) 300(0.1%) for-loop ...tlock/herbie/src/core/egraph.rkt:223:8 hash-update! [159] 91.2% ------------------------------------------------------------------------------- adopt-enode! [132] 37.5% loop! [108] 62.5% [146] 3326(0.8%) 886(0.2%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [160] 58.1% for-loop [165] 15.3% ------------------------------------------------------------------------------- split-atab [128] 100.0% [147] 2220(0.5%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:75:2 for-loop [161] 71.6% for-loop [167] 16.1% for-loop [168] 12.3% ------------------------------------------------------------------------------- new-enode [133] 33.3% loop! [108] 66.7% [148] 1900(0.4%) 1900(0.4%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------- ??? [126] 100.0% [149] 1184(0.3%) 906(0.2%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [113] 23.5% ------------------------------------------------------------------------------- ??? [140] 11.2% match-e [82] 88.8% [150] 1128(0.3%) 1128(0.3%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------- hash-has-key? [125] 100.0% [151] 856(0.2%) 856(0.2%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ------------------------------------------------------------------------------- ??? [129] 100.0% [152] 740(0.2%) 462(0.1%) for-loop ...atlock/herbie/src/core/ematch.rkt:51:7 ??? [104] 37.6% ------------------------------------------------------------------------------- new-enode [133] 100.0% [153] 168(0.0%) 168(0.0%) mutable-set .../racket/private/set-types.rkt:999:0 ------------------------------------------------------------------------------- loop [141] 100.0% [154] 102896(23.3%) 96(0.0%) loop /home/ztatlock/herbie/src/points.rkt:119:2 loop [170] 46.6% make-exacts* [169] 40.5% eval-prog [198] 12.9% ------------------------------------------------------------------------------- atab-add-altn [142] 100.0% [155] 28878(6.5%) 116(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [190] 98.6% ------------------------------------------------------------------------------- jloop [6] 26.9% loop [144] 73.1% [156] 27194(6.1%) 1778(0.4%) ??? /home/ztatlock/herbie/src/points.rkt:81:27 eval-prog [198] 83.2% ??? [3] 8.6% ->flonum [204] 1.6% ------------------------------------------------------------------------------- ??? [143] 100.0% [157] 8590(1.9%) 130(0.0%) approximate9 ...ck/herbie/src/core/taylor.rkt:12:0 loop [172] 68.1% f134 [49] 18.6% for-loop [178] 10.3% taylor-quotient [188] 1.5% ------------------------------------------------------------------------------- loop [141] 100.0% [158] 4618(1.0%) 720(0.2%) for-loop .../ztatlock/herbie/src/points.rkt:166:24 for-loop [173] 84.4% ------------------------------------------------------------------------------- for-loop [145] 100.0% [159] 3102(0.7%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [174] 100.0% ------------------------------------------------------------------------------- custom-set-union [146] 100.0% [160] 1932(0.4%) 602(0.1%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [177] 68.8% ------------------------------------------------------------------------------- for-loop [147] 100.0% [161] 1590(0.4%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:80:53 loop [175] 100.0% ------------------------------------------------------------------------------- ??? [143] 100.0% [162] 1580(0.4%) 0(0.0%) best-alt /home/ztatlock/herbie/src/glue.rkt:78:0 loop [176] 73.5% argmins [179] 26.5% ------------------------------------------------------------------------------- f134 [49] 12.6% for-loop [83] 28.2% ??? [143] 59.2% [163] 1234(0.3%) 796(0.2%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [180] 22.9% get/build-late-neg-projection [181] 12.6% ------------------------------------------------------------------------------- atab-add-altn [142] 100.0% [164] 1026(0.2%) 0(0.0%) override-at-pnts ...e/src/core/alt-table.rkt:145:0 errors [190] 100.0% ------------------------------------------------------------------------------- custom-set-union [146] 100.0% [165] 508(0.1%) 508(0.1%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------- ??? [143] 100.0% [166] 442(0.1%) 0(0.0%) ->bf /home/ztatlock/herbie/src/programs.rkt:49:0 ...erbie/src/common.rkt:46:2 [98] 73.8% table-ref [171] 26.2% ------------------------------------------------------------------------------- for-loop [147] 100.0% [167] 358(0.1%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:86:30 ??? [187] 100.0% ------------------------------------------------------------------------------- for-loop [147] 100.0% [168] 272(0.1%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:76:45 ??? [187] 100.0% ------------------------------------------------------------------------------- loop [154] 42.5% loop [141] 57.5% [169] 97864(22.1%) 0(0.0%) make-exacts* ...atlock/herbie/src/points.rkt:106:0 map [182] 48.3% loop [197] 47.3% eval-prog [198] 4.4% ------------------------------------------------------------------------------- loop [141] 41.9% loop [154] 58.1% [170] 82450(18.6%) 138(0.0%) loop /home/ztatlock/herbie/src/points.rkt:109:4 map [182] 99.7% loop [197] 0.1% ------------------------------------------------------------------------------- ->bf [166] 0.4% f134 [49] 0.6% table-ref [171] 12.3% ??? [143] 34.4% for-loop [83] 52.3% [171] 27946(6.3%) 3792(0.9%) table-ref .../racket/private/norm-define.rkt:53:83 ??? [183] 51.0% ??? [143] 18.5% table-ref [171] 12.3% ??? [232] 1.7% return/no-unsupplied [249] 1.7% ??? [126] 0.4% ------------------------------------------------------------------------------- approximate9 [157] 100.0% [172] 5846(1.3%) 0(0.0%) loop ...e/ztatlock/herbie/src/core/taylor.rkt:83:4 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- for-loop [158] 100.0% [173] 3898(0.9%) 1408(0.3%) for-loop .../ztatlock/herbie/src/points.rkt:167:26 ??? [186] 63.9% ------------------------------------------------------------------------------- hash-update! [159] 100.0% [174] 3102(0.7%) 0(0.0%) ??? .../ztatlock/herbie/src/core/egraph.rkt:225:24 for-loop [184] 100.0% ------------------------------------------------------------------------------- for-loop [64] 4.5% one-iter [48] 38.6% for-loop [161] 56.9% [175] 2794(0.6%) 1204(0.3%) loop ...ket/collects/racket/private/list.rkt:264:4 ??? [187] 56.9% ------------------------------------------------------------------------------- extract-alt [41] 19.0% best-alt [162] 81.0% [176] 1434(0.3%) 0(0.0%) loop /home/ztatlock/herbie/src/common.rkt:135:2 composed [185] 100.0% ------------------------------------------------------------------------------- for-loop [160] 100.0% [177] 1330(0.3%) 1330(0.3%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------- approximate9 [157] 100.0% [178] 884(0.2%) 0(0.0%) for-loop ...tlock/herbie/src/core/taylor.rkt:29:18 f134 [49] 66.3% taylor-quotient [188] 33.7% ------------------------------------------------------------------------------- extract-alt [41] 19.3% best-alt [162] 80.7% [179] 518(0.1%) 0(0.0%) argmins /home/ztatlock/herbie/src/common.rkt:134:0 composed [185] 100.0% ------------------------------------------------------------------------------- ??? [163] 100.0% [180] 282(0.1%) 282(0.1%) ??? ...private/unconstrained-domain-arrow.rkt:69:2 ------------------------------------------------------------------------------- ??? [163] 100.0% [181] 156(0.0%) 0(0.0%) get/build-late-neg-projection ...te/guts.rkt:691:0 unconstrained-domain->-projection [189]100.0% ------------------------------------------------------------------------------- ??? [208] 0.1% loop [141] 0.1% f134 [49] 3.8% make-exacts* [169] 35.0% loop [170] 61.0% [182] 134884(30.5%) 260(0.1%) map ...acket/collects/racket/private/map.rkt:20:13 loop [197] 92.7% ??? [3] 3.0% f134 [49] 2.3% parse-loop12 [241] 0.6% ??? [208] 0.4% loop [84] 0.3% ->flonum [204] 0.3% taylor [193] 0.1% simplify-node [196] 0.1% taylor-quotient [188] 0.0% simplify* [252] 0.0% make-multiplication-node [246] 0.0% ------------------------------------------------------------------------------- hash-has-key? [125] 36.0% table-ref [171] 64.0% [183] 22252(5.0%) 8560(1.9%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [191] 50.8% ??? [200] 7.0% arrow-higher-order:lnp [262] 3.2% ------------------------------------------------------------------------------- ??? [174] 100.0% [184] 3102(0.7%) 2562(0.6%) for-loop ...lock/herbie/src/core/egraph.rkt:226:26 update-en-expr [192] 17.4% ------------------------------------------------------------------------------- for-loop [205] 4.7% argmins [179] 17.6% f134 [49] 29.0% loop [176] 48.7% [185] 2944(0.7%) 428(0.1%) composed ...ollects/racket/private/list.rkt:321:16 errors [190] 66.3% f134 [49] 19.2% ------------------------------------------------------------------------------- for-loop [173] 100.0% [186] 2490(0.6%) 2030(0.5%) ??? /home/ztatlock/herbie/src/points.rkt:156:9 random-exp [195] 12.9% ??? [143] 5.6% ------------------------------------------------------------------------------- for-loop [168] 12.3% for-loop [167] 16.1% loop [175] 71.6% [187] 2220(0.5%) 230(0.1%) ??? .../ztatlock/herbie/src/core/regimes.rkt:305:8 eval-prog [198] 74.2% ??? [3] 15.4% ------------------------------------------------------------------------------- approximate9 [157] 10.7% f134 [49] 10.8% map [182] 14.2% for-loop [178] 24.1% hash-ref! [218] 40.2% [188] 1238(0.3%) 0(0.0%) taylor-quotient ...erbie/src/core/taylor.rkt:324:0 first-nonzero-exp [194] 63.8% simplify [233] 36.2% ------------------------------------------------------------------------------- get/build-late-neg-projection [181] 100.0% [189] 156(0.0%) 156(0.0%) unconstrained-domain->-projection ...rrow.rkt:60:0 ------------------------------------------------------------------------------- pred [124] 2.5% override-at-pnts [164] 2.7% option-on-expr [61] 3.1% composed [185] 5.2% loop [197] 10.1% best-and-tied-at-points [155] 75.9% [190] 37508(8.5%) 0(0.0%) errors /home/ztatlock/herbie/src/points.rkt:184:0 for-loop [199] 83.1% eval-prog [198] 16.9% ------------------------------------------------------------------------------- ??? [183] 100.0% [191] 11300(2.6%) 6058(1.4%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [200] 25.4% for-loop [201] 16.3% arrow-higher-order:lnp [262] 2.2% ------------------------------------------------------------------------------- update-leader! [109] 10.1% for-loop [117] 23.1% loop! [108] 25.9% for-loop [184] 40.8% [192] 1322(0.3%) 1322(0.3%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------- map [182] 14.3% f134 [49] 85.7% [193] 962(0.2%) 0(0.0%) taylor ...tatlock/herbie/src/core/taylor.rkt:159:0 debug-print [242] 58.6% loop [197] 27.0% variable? [220] 14.3% ------------------------------------------------------------------------------- taylor-invert [10] 16.1% taylor-quotient [188] 83.9% [194] 942(0.2%) 0(0.0%) first-nonzero-exp ...bie/src/core/taylor.rkt:256:0 hash-ref! [218] 65.2% simplify [233] 34.8% ------------------------------------------------------------------------------- ??? [186] 100.0% [195] 320(0.1%) 320(0.1%) random-exp ...ztatlock/herbie/src/common.rkt:222:0 ------------------------------------------------------------------------------- map [182] 100.0% [196] 144(0.0%) 0(0.0%) simplify-node ...k/herbie/src/core/reduce.rkt:39:0 append-map [202] 100.0% ------------------------------------------------------------------------------- loop [170] 0.0% taylor [193] 0.1% parse-loop12 [241] 0.3% map-enodes [54] 0.3% for-loop [94] 0.4% extract-alt [41] 0.5% match-e [82] 0.6% loop! [108] 0.7% option-on-expr [61] 0.8% make-exacts* [169] 1.6% map [182] 2.2% ??? [3] 3.1% ??? [5] 3.9% f134 [49] 4.8% loop [197] 80.6% [197] 209954(47.5%) 7262(1.6%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [197] 80.6% option-on-expr [61] 4.8% hash-ref! [218] 3.9% ??? [3] 3.7% ->flonum [204] 2.1% errors [190] 0.8% ??? [203] 0.7% loop! [108] 0.6% simplify [4] 0.5% for-loop [205] 0.3% foldl [211] 0.2% ??? [208] 0.2% simplify [233] 0.1% parse-loop12 [241] 0.1% curried [227] 0.1% ------------------------------------------------------------------------------- for-loop [89] 2.6% for-loop [90] 3.1% ??? [187] 3.2% make-exacts* [169] 8.4% errors [190] 12.4% loop [154] 25.9% ??? [156] 44.3% [198] 51068(11.5%) 22168(5.0%) eval-prog ...tatlock/herbie/src/programs.rkt:146:0 f134 [49] 29.3% hash-ref! [218] 16.9% ??? [207] 2.2% ??? [209] 2.1% parse-lambda [213] 1.3% ??? [143] 1.3% ??? [237] 1.1% go [214] 1.1% parse-app [251] 0.3% ------------------------------------------------------------------------------- errors [190] 100.0% [199] 31170(7.0%) 1296(0.3%) for-loop ...e/ztatlock/herbie/src/points.rkt:187:4 ??? [3] 89.8% ->flonum [204] 4.1% ulp-difference [212] 1.4% ------------------------------------------------------------------------------- ??? [183] 35.2% for-loop [191] 64.8% [200] 4430(1.0%) 2474(0.6%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [206] 44.2% ------------------------------------------------------------------------------- for-loop [191] 100.0% [201] 1844(0.4%) 854(0.2%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [210] 45.8% ??? [219] 7.9% ------------------------------------------------------------------------------- append-map [202] 10.2% simplify-node [196] 10.2% f134 [49] 79.7% [202] 708(0.2%) 282(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 f134 [49] 40.1% append-map [202] 10.2% parse-loop12 [241] 10.2% free-variables [215] 10.2% ------------------------------------------------------------------------------- ??? [143] 1.0% ??? [3] 48.0% loop [197] 51.0% [203] 53184(12.0%) 3102(0.7%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [216] 94.2% ------------------------------------------------------------------------------- ??? [143] 0.8% loop [84] 0.9% map [182] 2.0% ??? [156] 2.6% for-loop [199] 7.6% ??? [3] 27.9% loop [197] 58.2% [204] 16974(3.8%) 1388(0.3%) ->flonum .../ztatlock/herbie/src/programs.rkt:34:0 ??? [217] 88.8% ??? [224] 3.0% ------------------------------------------------------------------------------- map-enodes [54] 5.2% loop [197] 94.8% [205] 2942(0.7%) 424(0.1%) for-loop ...ock/herbie/src/core/simplify.rkt:161:2 eval-const-expr [222] 30.6% compose [221] 30.5% setfindf [225] 15.4% composed [185] 4.7% curried [227] 4.4% ------------------------------------------------------------------------------- f134 [49] 5.7% ??? [200] 94.3% [206] 2074(0.5%) 2074(0.5%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------- eval-prog [198] 100.0% [207] 1128(0.3%) 380(0.1%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [223] 66.3% ------------------------------------------------------------------------------- loop [197] 46.5% map [182] 53.5% [208] 1082(0.2%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 f134 [49] 49.0% hash-ref! [218] 45.2% map [182] 5.8% ------------------------------------------------------------------------------- eval-prog [198] 100.0% [209] 1080(0.2%) 274(0.1%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ??? [219] 74.6% ------------------------------------------------------------------------------- for-loop [201] 100.0% [210] 844(0.2%) 426(0.1%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [219] 33.4% ??? [238] 16.1% ------------------------------------------------------------------------------- for-loop [94] 34.6% loop [197] 65.4% [211] 786(0.2%) 546(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [228] 30.5% ------------------------------------------------------------------------------- ??? [15] 38.3% for-loop [199] 61.7% [212] 726(0.2%) 0(0.0%) ulp-difference ...atlock/herbie/src/float.rkt:19:0 ??? [217] 100.0% ------------------------------------------------------------------------------- eval-prog [198] 100.0% [213] 648(0.1%) 400(0.1%) parse-lambda ...llects/racket/private/kw.rkt:437:2 simple-args? [229] 19.4% loop [230] 18.8% ------------------------------------------------------------------------------- eval-prog [198] 100.0% [214] 556(0.1%) 148(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [226] 73.4% ------------------------------------------------------------------------------- append-map [202] 100.0% [215] 282(0.1%) 166(0.0%) free-variables ...ock/herbie/src/programs.rkt:98:0 variable? [220] 41.1% ------------------------------------------------------------------------------- ??? [203] 100.0% [216] 50082(11.3%) 32202(7.3%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [248] 35.7% ------------------------------------------------------------------------------- for-loop [118] 0.7% ormap [136] 2.5% ulp-difference [212] 3.5% ??? [38] 21.5% ->flonum [204] 71.9% [217] 20988(4.7%) 10456(2.4%) ??? /home/ztatlock/herbie/src/config.rkt:48:0 ??? [232] 28.6% return/no-unsupplied [249] 20.0% ------------------------------------------------------------------------------- ??? [45] 0.1% for-loop [258] 0.2% for-loop [29] 0.3% for-loop [28] 0.6% ??? [8] 0.7% for-loop [42] 0.9% localize-error [91] 1.0% simplify* [252] 1.6% ??? [208] 2.1% first-nonzero-exp [194] 2.1% for-loop [25] 3.7% compile [100] 3.8% ??? [235] 5.5% ??? [5] 7.2% loop [172] 8.6% ??? [234] 11.9% eval-prog [198] 13.1% loop [197] 35.0% [218] 17966(4.1%) 3204(0.7%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [5] 43.0% ??? [234] 11.9% bigfloat-hash [231] 11.5% simplify [233] 8.2% ??? [235] 5.5% ??? [7] 4.3% parse-loop12 [241] 2.4% f134 [49] 2.0% ??? [8] 1.5% ??? [9] 0.9% taylor-quotient [188] 0.6% ??? [12] 0.5% taylor-exp [17] 0.4% ??? [14] 0.2% ??? [13] 0.1% ------------------------------------------------------------------------------- for-loop [201] 3.5% ??? [210] 6.8% ??? [209] 19.5% ??? [21] 70.2% [219] 4140(0.9%) 432(0.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [236] 89.6% ------------------------------------------------------------------------------- free-variables [215] 3.0% matcher [115] 3.2% substitute-e [99] 3.2% taylor [193] 3.6% match-e [82] 87.1% [220] 3850(0.9%) 166(0.0%) variable? ...ck/herbie/src/syntax/syntax.rkt:529:0 ??? [104] 95.7% ------------------------------------------------------------------------------- gather-multiplicative-terms [69] 10.8% for-loop [205] 89.2% [221] 1004(0.2%) 1004(0.2%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------- for-loop [205] 100.0% [222] 900(0.2%) 148(0.0%) eval-const-expr ...k/herbie/src/programs.rkt:164:0 f134 [49] 46.2% ??? [237] 37.3% ------------------------------------------------------------------------------- ??? [207] 100.0% [223] 748(0.2%) 748(0.2%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ------------------------------------------------------------------------------- ->flonum [204] 100.0% [224] 506(0.1%) 126(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [248] 75.1% ------------------------------------------------------------------------------- for-loop [205] 100.0% [225] 454(0.1%) 170(0.0%) setfindf ...e/ztatlock/herbie/src/common.rkt:168:0 ??? [104] 62.6% ------------------------------------------------------------------------------- go [214] 40.5% loop [226] 59.5% [226] 408(0.1%) 408(0.1%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [226] 59.5% ------------------------------------------------------------------------------- loop [197] 31.0% for-loop [205] 33.0% map-enodes [54] 36.0% [227] 394(0.1%) 394(0.1%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------------- foldl [211] 100.0% [228] 240(0.1%) 240(0.1%) merge2 ...ztatlock/herbie/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------- parse-lambda [213] 100.0% [229] 126(0.0%) 126(0.0%) simple-args? ...llects/racket/private/kw.rkt:350:2 ------------------------------------------------------------------------------- parse-lambda [213] 100.0% [230] 122(0.0%) 122(0.0%) loop .../collects/racket/private/stxcase.rkt:112:7 ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [231] 7526(1.7%) 138(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [239] 77.1% sig+exp->bigfloat [243] 17.8% bigfloat->sig+exp [253] 1.7% ------------------------------------------------------------------------------- table-ref [171] 6.6% ??? [114] 12.3% ??? [217] 81.1% [232] 7400(1.7%) 2548(0.6%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [240] 62.2% ??? [238] 3.3% ------------------------------------------------------------------------------- taylor-exp [17] 2.1% taylor-log [16] 2.2% for-loop [29] 2.5% loop [197] 3.7% for-loop [30] 4.1% first-nonzero-exp [194] 4.7% taylor-quotient [188] 6.4% taylor-invert [10] 6.5% hash-ref! [218] 67.7% [233] 6970(1.6%) 0(0.0%) simplify ...atlock/herbie/src/core/reduce.rkt:15:0 f134 [49] 65.1% parse-loop12 [241] 13.7% debug-print [242] 8.0% simplify* [252] 6.2% make-multiplication-node [246] 4.6% debug7 [245] 2.5% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [234] 4684(1.1%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:64:15 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- hash-ref! [218] 100.0% [235] 4470(1.0%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:43:15 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- ??? [219] 100.0% [236] 3708(0.8%) 2620(0.6%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [244] 29.3% ------------------------------------------------------------------------------- eval-const-expr [222] 37.4% eval-prog [198] 62.6% [237] 898(0.2%) 484(0.1%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack242 [247] 46.1% ------------------------------------------------------------------------------- ??? [210] 1.6% ...higher-order.rkt:346:33 [40] 2.0% ??? [232] 2.9% ??? [104] 3.3% ??? [113] 4.1% ??? [126] 9.5% ??? [143] 75.3% [238] 8454(1.9%) 1718(0.4%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [104] 74.1% contract? [255] 4.1% ------------------------------------------------------------------------------- bigfloat-hash [231] 100.0% [239] 5804(1.3%) 5452(1.2%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [253] 6.1% ------------------------------------------------------------------------------- ??? [232] 100.0% [240] 4606(1.0%) 4310(1.0%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [257] 6.4% ------------------------------------------------------------------------------- loop [197] 1.7% append-map [202] 4.6% parse-loop12 [241] 6.8% for-loop [31] 9.1% hash-ref! [218] 17.6% simplify [233] 20.7% map [182] 39.4% [241] 3134(0.7%) 1574(0.4%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [197] 17.8% parse-app [251] 11.0% for-loop [258] 9.1% parse-loop12 [241] 6.8% f134 [49] 5.4% for-loop [259] 4.6% loop [84] 1.6% simplify* [252] 0.9% ------------------------------------------------------------------------------- for-loop [24] 4.0% iterate-egraph!5 [34] 9.4% simplify [233] 22.1% taylor [193] 22.4% for-loop [59] 42.1% [242] 2520(0.6%) 902(0.2%) debug-print ...ztatlock/herbie/src/debug.rkt:107:0 for-loop [250] 64.2% ------------------------------------------------------------------------------- bigfloat-hash [231] 100.0% [243] 1342(0.3%) 736(0.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [254] 34.7% ??? [248] 10.4% ------------------------------------------------------------------------------- ??? [236] 100.0% [244] 1088(0.2%) 1088(0.2%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------- for-loop [59] 27.0% for-loop [24] 34.2% simplify [233] 38.7% [245] 444(0.1%) 120(0.0%) debug7 /home/ztatlock/herbie/src/debug.rkt:102:0 return/no-unsupplied [249] 38.7% ??? [104] 34.2% ------------------------------------------------------------------------------- map [182] 26.9% simplify [233] 73.1% [246] 438(0.1%) 138(0.0%) make-multiplication-node .../core/reduce.rkt:219:0 make-multiplication-subnode [256] 68.5% ------------------------------------------------------------------------------- ??? [237] 100.0% [247] 414(0.1%) 284(0.1%) unpack242 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [260] 31.4% ------------------------------------------------------------------------------- sig+exp->bigfloat [243] 0.4% ??? [224] 1.0% bfexp [65] 12.0% bfsub [62] 40.6% real->bigfloat [216] 46.1% [248] 38812(8.8%) 38812(8.8%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------- debug7 [245] 3.2% table-ref [171] 9.0% ??? [114] 9.3% ??? [217] 78.5% [249] 5358(1.2%) 3420(0.8%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [261] 36.2% ------------------------------------------------------------------------------- debug-print [242] 100.0% [250] 1618(0.4%) 1454(0.3%) for-loop /home/ztatlock/herbie/src/debug.rkt:113:2 write-proc [265] 10.1% ------------------------------------------------------------------------------- f134 [49] 12.7% eval-prog [198] 13.6% parse-loop12 [241] 40.1% [251] 1162(0.3%) 1162(0.3%) parse-app .../collects/racket/private/kw.rkt:951:2 ------------------------------------------------------------------------------- parse-loop12 [241] 16.9% map [182] 19.5% simplify [233] 63.6% [252] 676(0.2%) 302(0.1%) simplify* ...tlock/herbie/src/core/reduce.rkt:20:0 hash-ref! [218] 55.3% ------------------------------------------------------------------------------- bigfloat-hash [231] 26.4% bfcanonicalize [239] 73.6% [253] 478(0.1%) 126(0.0%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 mpz->integer [263] 73.6% ------------------------------------------------------------------------------- sig+exp->bigfloat [243] 100.0% [254] 466(0.1%) 466(0.1%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ------------------------------------------------------------------------------- ??? [238] 100.0% [255] 348(0.1%) 348(0.1%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------- make-multiplication-node [246] 100.0% [256] 300(0.1%) 118(0.0%) make-multiplication-subnode ...re/reduce.rkt:229:0 group-by68 [264] 60.7% ------------------------------------------------------------------------------- ??? [240] 100.0% [257] 296(0.1%) 296(0.1%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ------------------------------------------------------------------------------- parse-loop12 [241] 100.0% [258] 284(0.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:486:59 hash-ref! [218] 100.0% ------------------------------------------------------------------------------- parse-loop12 [241] 100.0% [259] 144(0.0%) 0(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:88:13 f134 [49] 100.0% ------------------------------------------------------------------------------- unpack242 [247] 100.0% [260] 130(0.0%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 arrow-higher-order:lnp [262] 100.0% ------------------------------------------------------------------------------- match-e [82] 5.2% for-loop [94] 10.9% return/no-unsupplied [249] 83.9% [261] 2310(0.5%) 2310(0.5%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------- maybe-cons-kwd [260] 11.9% for-loop [191] 22.7% ??? [183] 65.4% [262] 1094(0.2%) 404(0.1%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [266] 63.1% ------------------------------------------------------------------------------- bigfloat->sig+exp [253] 100.0% [263] 352(0.1%) 352(0.1%) mpz->integer ...ath/private/bigfloat/gmp.rkt:115:0 ------------------------------------------------------------------------------- make-multiplication-subnode [256] 100.0% [264] 182(0.0%) 0(0.0%) group-by68 ...acket/collects/racket/list.rkt:749:0 ??? [95] 100.0% ------------------------------------------------------------------------------- for-loop [250] 100.0% [265] 164(0.0%) 164(0.0%) write-proc ...lock/herbie/src/alternative.rkt:29:9 ------------------------------------------------------------------------------- arrow-higher-order:lnp [262] 100.0% [266] 690(0.2%) 690(0.2%) ??? ...et/contract/private/arity-checking.rkt:19:2 -------------------------------------------------------------------------------