Profiling results ----------------- Total cpu time observed: 90618ms (out of 91348ms) Number of samples taken: 428 (once every 212ms) (Hiding functions with self<1.0% and local<2.0%: 6 of 181 hidden) ========================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================= ??? [48] 100.0% [1] 87932(97.0%) 0(0.0%) profile-thunk14 ...t/pkgs/profile-lib/main.rkt:9:0 run [13] 100.0% ------------------------------------------------------------------------- ??? [48] 100.0% [2] 34182(37.7%) 0(0.0%) run-improve58 ...ock/herbie/src/mainloop.rkt:242:0 finalize-table! [14] 36.8% for-loop [15] 36.6% get-final-combination [16] 22.5% loop [57] 3.5% setup-prog [22] 0.7% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [3] 5886(6.5%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:285:26 for-loop [17] 100.0% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [4] 4618(5.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:295:23 for-loop [18] 100.0% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [5] 4182(4.6%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:338:33 for-loop [19] 62.2% hash-ref! [111] 37.8% ------------------------------------------------------------------------- loop [134] 100.0% [6] 3974(4.4%) 0(0.0%) completely-simplify-alt ...erbie/src/glue.rkt:87:0 simplify-expr [39] 100.0% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [7] 2342(2.6%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:392:23 for-loop [20] 100.0% ------------------------------------------------------------------------- copying-mergesort [70] 100.0% [8] 1718(1.9%) 0(0.0%) jloop ...et/collects/racket/private/sort.rkt:85:19 ??? [89] 100.0% ------------------------------------------------------------------------- map [98] 37.3% loop [134] 62.7% [9] 1236(1.4%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [111] 82.2% f37 [88] 17.8% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [10] 422(0.5%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:483:23 for-loop [21] 100.0% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [11] 220(0.2%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:322:33 for-loop [23] 100.0% ------------------------------------------------------------------------- f37 [88] 100.0% [12] 200(0.2%) 0(0.0%) combine-mterms ...herbie/src/core/reduce.rkt:182:0 for-loop [24] 100.0% ------------------------------------------------------------------------- profile-thunk14 [1] 99.8% [13] 88148(97.3%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:31:2 ??? [48] 100.0% ------------------------------------------------------------------------- run-improve58 [2] 100.0% [14] 12574(13.9%) 0(0.0%) finalize-table! ...k/herbie/src/mainloop.rkt:264:0 post-process [25] 100.0% ------------------------------------------------------------------------- run-improve58 [2] 100.0% [15] 12512(13.8%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:253:8 run-iter! [26] 100.0% ------------------------------------------------------------------------- run-improve58 [2] 100.0% [16] 7674(8.5%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:269:0 split-table [28] 64.6% extract-alt [29] 35.4% ------------------------------------------------------------------------- ??? [3] 100.0% [17] 5886(6.5%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:285:52 hash-ref! [111] 91.3% ??? [136] 8.7% ------------------------------------------------------------------------- ??? [4] 100.0% [18] 4618(5.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:298:27 hash-ref! [111] 100.0% ------------------------------------------------------------------------- ??? [5] 100.0% [19] 2702(3.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:341:46 hash-ref! [111] 100.0% ------------------------------------------------------------------------- ??? [7] 100.0% [20] 2342(2.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:396:33 for-loop [30] 100.0% ------------------------------------------------------------------------- ??? [10] 100.0% [21] 422(0.5%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:487:35 parse-loop12 [123] 100.0% ------------------------------------------------------------------------- run-improve58 [2] 100.0% [22] 242(0.3%) 0(0.0%) setup-prog /home/ztatlock/herbie/src/glue.rkt:46:0 simplify-alt [31] 100.0% ------------------------------------------------------------------------- ??? [11] 100.0% [23] 220(0.2%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:324:46 simplify [27] 100.0% ------------------------------------------------------------------------- combine-mterms [12] 100.0% [24] 200(0.2%) 0(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:186:5 hash-ref! [111] 100.0% ------------------------------------------------------------------------- finalize-table! [14] 100.0% [25] 12574(13.9%) 0(0.0%) post-process .../ztatlock/herbie/src/glue.rkt:95:0 for-loop [34] 58.6% loop [134] 36.5% ??? [43] 3.3% ------------------------------------------------------------------------- for-loop [15] 100.0% [26] 12512(13.8%) 0(0.0%) run-iter! ...tatlock/herbie/src/mainloop.rkt:223:0 simplify! [33] 86.7% gen-series! [36] 6.7% finalize-iter! [38] 5.0% ------------------------------------------------------------------------- location-do [67] 2.7% for-loop [23] 3.0% hash-ref! [111] 94.3% [27] 7344(8.1%) 0(0.0%) simplify ...atlock/herbie/src/core/reduce.rkt:18:0 f37 [88] 68.2% parse-loop12 [123] 14.7% debug-print [37] 11.0% debug7 [115] 6.0% ------------------------------------------------------------------------- get-final-combination [16] 100.0% [28] 4954(5.5%) 0(0.0%) split-table .../ztatlock/herbie/src/glue.rkt:171:0 infer-splitpoints4 [35] 82.3% ??? [43] 17.7% ------------------------------------------------------------------------- get-final-combination [16] 100.0% [29] 2720(3.0%) 0(0.0%) extract-alt ...e/ztatlock/herbie/src/glue.rkt:57:0 loop [134] 100.0% ------------------------------------------------------------------------- for-loop [20] 100.0% [30] 2342(2.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:398:39 hash-ref! [111] 100.0% ------------------------------------------------------------------------- setup-prog [22] 100.0% [31] 242(0.3%) 0(0.0%) simplify-alt .../ztatlock/herbie/src/glue.rkt:84:0 simplify [32] 100.0% ------------------------------------------------------------------------- simplify-alt [31] 1.8% loop [134] 19.7% ??? [48] 78.5% [32] 13804(15.2%) 250(0.3%) simplify ...lock/herbie/src/core/simplify.rkt:39:0 simplify-expr [39] 49.9% iterate-egraph!5 [49] 33.2% for-loop [44] 13.6% mk-egraph [47] 1.5% ------------------------------------------------------------------------- run-iter! [26] 100.0% [33] 10842(12.0%) 0(0.0%) simplify! ...tatlock/herbie/src/mainloop.rkt:162:0 for-loop [40] 100.0% ------------------------------------------------------------------------- post-process [25] 100.0% [34] 7366(8.1%) 0(0.0%) for-loop /home/ztatlock/herbie/src/glue.rkt:119:17 append-map [41] 100.0% ------------------------------------------------------------------------- split-table [28] 100.0% [35] 4078(4.5%) 0(0.0%) infer-splitpoints4 ...ie/src/core/regimes.rkt:19:0 option-on-expr [42] 100.0% ------------------------------------------------------------------------- run-iter! [26] 100.0% [36] 844(0.9%) 0(0.0%) gen-series! ...tlock/herbie/src/mainloop.rkt:134:0 for-loop [45] 100.0% ------------------------------------------------------------------------- simplify [27] 100.0% [37] 808(0.9%) 202(0.2%) debug-print ...ztatlock/herbie/src/debug.rkt:107:0 for-loop [46] 75.0% ------------------------------------------------------------------------- run-iter! [26] 100.0% [38] 624(0.7%) 0(0.0%) finalize-iter! ...ck/herbie/src/mainloop.rkt:177:0 ??? [43] 100.0% ------------------------------------------------------------------------- completely-simplify-alt [6] 36.6% simplify [32] 63.4% [39] 10860(12.0%) 0(0.0%) simplify-expr ...herbie/src/core/simplify.rkt:68:0 iterate-egraph!5 [49] 98.2% loop [54] 1.8% ------------------------------------------------------------------------- simplify! [33] 100.0% [40] 10842(12.0%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:166:6 ??? [48] 100.0% ------------------------------------------------------------------------- f37 [88] 6.1% for-loop [34] 93.9% [41] 7366(8.1%) 0(0.0%) append-map ...acket/collects/racket/list.rkt:565:2 loop [134] 59.5% taylor-alt [50] 34.4% f37 [88] 4.4% ------------------------------------------------------------------------- infer-splitpoints4 [35] 100.0% [42] 4078(4.5%) 0(0.0%) option-on-expr ...erbie/src/core/regimes.rkt:106:0 sort-context-on-expr [51] 83.2% loop [134] 11.4% pick-errors [55] 5.3% ------------------------------------------------------------------------- post-process [25] 21.9% finalize-iter! [38] 32.5% split-table [28] 45.6% [43] 1920(2.1%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [52] 54.4% split-atab [53] 45.6% ------------------------------------------------------------------------- simplify [32] 100.0% [44] 1884(2.1%) 0(0.0%) for-loop ...ock/herbie/src/core/simplify.rkt:61:12 iterate-egraph!5 [49] 89.4% loop [54] 10.6% ------------------------------------------------------------------------- gen-series! [36] 100.0% [45] 844(0.9%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:140:7 taylor-alt [50] 100.0% ------------------------------------------------------------------------- debug-print [37] 100.0% [46] 606(0.7%) 606(0.7%) for-loop /home/ztatlock/herbie/src/debug.rkt:113:2 ------------------------------------------------------------------------- simplify [32] 100.0% [47] 202(0.2%) 0(0.0%) mk-egraph ...lock/herbie/src/core/egraph.rkt:123:0 expr->enode [56] 100.0% ------------------------------------------------------------------------- for-loop [40] 4.2% run [13] 47.1% [48] 90178(99.5%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk14 [1] 46.9% loop [57] 31.5% run-improve58 [2] 17.5% simplify [32] 4.2% ------------------------------------------------------------------------- for-loop [44] 9.9% simplify [32] 27.1% simplify-expr [39] 63.0% [49] 16926(18.7%) 0(0.0%) iterate-egraph!5 ...bie/src/core/simplify.rkt:95:0 one-iter [58] 95.0% map-enodes [63] 5.0% ------------------------------------------------------------------------- for-loop [45] 10.3% append-map [41] 30.9% loop [134] 58.8% [50] 8210(9.1%) 0(0.0%) taylor-alt ...e/ztatlock/herbie/src/glue.rkt:142:0 for-loop [59] 100.0% ------------------------------------------------------------------------- option-on-expr [42] 100.0% [51] 3394(3.7%) 0(0.0%) sort-context-on-expr ...herbie/src/points.rkt:50:0 sort [60] 100.0% ------------------------------------------------------------------------- ??? [43] 100.0% [52] 1044(1.2%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [61] 100.0% ------------------------------------------------------------------------- ??? [43] 100.0% [53] 876(1.0%) 0(0.0%) split-atab ...k/herbie/src/core/alt-table.rkt:74:0 for-loop [62] 100.0% ------------------------------------------------------------------------- simplify-expr [39] 50.0% for-loop [44] 50.0% [54] 400(0.4%) 0(0.0%) loop ...tatlock/herbie/src/core/simplify.rkt:203:2 pass [64] 100.0% ------------------------------------------------------------------------- option-on-expr [42] 100.0% [55] 218(0.2%) 0(0.0%) pick-errors ...k/herbie/src/core/regimes.rkt:173:0 for-loop [65] 100.0% ------------------------------------------------------------------------- mk-egraph [47] 12.5% expr->enode [56] 87.5% [56] 202(0.2%) 0(0.0%) expr->enode ...ck/herbie/src/core/egraph.rkt:124:2 expr->enode [56] 87.5% mk-enode! [102] 12.5% ------------------------------------------------------------------------- run-improve58 [2] 2.1% ??? [48] 97.9% [57] 57176(63.1%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:122:2 loop [66] 57.3% make-exacts* [76] 41.5% loop [77] 0.8% ------------------------------------------------------------------------- iterate-egraph!5 [49] 100.0% [58] 16084(17.7%) 626(0.7%) one-iter ...ock/herbie/src/core/simplify.rkt:106:0 for-loop [68] 49.2% loop [69] 41.7% apply-match [79] 5.2% ------------------------------------------------------------------------- taylor-alt [50] 100.0% [59] 8210(9.1%) 204(0.2%) for-loop /home/ztatlock/herbie/src/glue.rkt:144:2 location-do [67] 97.5% ------------------------------------------------------------------------- sort-context-on-expr [51] 100.0% [60] 3394(3.7%) 0(0.0%) sort ...ket/collects/racket/private/sort.rkt:213:0 copying-mergesort [70] 80.9% loop [80] 19.1% ------------------------------------------------------------------------- for-loop [52] 100.0% [61] 1044(1.2%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [71] 100.0% ------------------------------------------------------------------------- split-atab [53] 100.0% [62] 876(1.0%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:75:2 for-loop [72] 45.9% for-loop [74] 36.3% for-loop [75] 17.8% ------------------------------------------------------------------------- iterate-egraph!5 [49] 100.0% [63] 842(0.9%) 0(0.0%) map-enodes ...ock/herbie/src/core/egraph.rkt:139:0 loop [134] 100.0% ------------------------------------------------------------------------- loop [54] 100.0% [64] 400(0.4%) 0(0.0%) pass ...tatlock/herbie/src/core/simplify.rkt:193:2 for-loop [73] 100.0% ------------------------------------------------------------------------- pick-errors [55] 100.0% [65] 218(0.2%) 0(0.0%) for-loop ...lock/herbie/src/core/regimes.rkt:176:4 eval-prog [99] 100.0% ------------------------------------------------------------------------- loop [57] 100.0% [66] 32754(36.1%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:93:2 loop [77] 42.1% make-exacts* [76] 34.6% eval-prog [99] 23.3% ------------------------------------------------------------------------- location-do [67] 47.4% for-loop [59] 52.6% [67] 8006(8.8%) 0(0.0%) location-do ...tlock/herbie/src/programs.rkt:129:0 approximate9 [78] 52.0% location-do [67] 47.4% simplify [27] 0.6% ------------------------------------------------------------------------- for-loop [68] 50.0% one-iter [58] 50.0% [68] 7910(8.7%) 2528(2.8%) for-loop ...ck/herbie/src/core/simplify.rkt:116:12 for-loop [68] 50.0% match-e [86] 34.0% ------------------------------------------------------------------------- one-iter [58] 100.0% [69] 6710(7.4%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:53:19 apply-match [79] 100.0% ------------------------------------------------------------------------- sort [60] 31.8% copying-mergesort [70] 68.2% [70] 2746(3.0%) 0(0.0%) copying-mergesort .../racket/private/sort.rkt:91:4 copying-mergesort [70] 68.2% loop [80] 16.2% jloop [8] 15.6% ------------------------------------------------------------------------- atab-add-altn [61] 100.0% [71] 1044(1.2%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [81] 78.9% for-loop [83] 21.1% ------------------------------------------------------------------------- for-loop [62] 100.0% [72] 402(0.4%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:76:45 ??? [90] 100.0% ------------------------------------------------------------------------- pass [64] 100.0% [73] 400(0.4%) 0(0.0%) for-loop ...ck/herbie/src/core/simplify.rkt:196:29 loop [85] 50.0% for-loop [84] 50.0% ------------------------------------------------------------------------- for-loop [62] 100.0% [74] 318(0.4%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:80:53 loop [82] 100.0% ------------------------------------------------------------------------- for-loop [62] 100.0% [75] 156(0.2%) 0(0.0%) for-loop ...ck/herbie/src/core/alt-table.rkt:86:30 ??? [90] 100.0% ------------------------------------------------------------------------- loop [66] 32.3% loop [57] 67.7% [76] 35070(38.7%) 0(0.0%) make-exacts* ...tatlock/herbie/src/points.rkt:80:0 map [98] 44.4% loop [134] 40.1% eval-prog [99] 15.5% ------------------------------------------------------------------------- loop [57] 3.2% loop [66] 96.8% [77] 14244(15.7%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:83:4 map [98] 100.0% ------------------------------------------------------------------------- location-do [67] 100.0% [78] 7806(8.6%) 0(0.0%) approximate9 ...ck/herbie/src/core/taylor.rkt:11:0 loop [87] 94.6% f37 [88] 2.8% taylor-quotient [92] 2.6% ------------------------------------------------------------------------- one-iter [58] 11.1% loop [69] 88.9% [79] 7548(8.3%) 404(0.4%) apply-match .../herbie/src/core/simplify.rkt:122:2 match-e [86] 31.0% merge-egraph-nodes! [101] 29.9% update-leader! [113] 10.6% mk-enode! [102] 6.1% loop! [105] 6.1% for-loop [93] 5.3% reduce-to-single! [94] 2.9% substitute-e [96] 2.7% ------------------------------------------------------------------------- sort [60] 38.7% copying-mergesort [70] 61.3% [80] 1676(1.8%) 0(0.0%) loop ...cket/collects/racket/private/sort.rkt:64:8 ??? [89] 100.0% ------------------------------------------------------------------------- loop [134] 36.1% best-and-tied-at-points [71] 63.9% [81] 1290(1.4%) 0(0.0%) errors /home/ztatlock/herbie/src/points.rkt:144:0 for-loop [91] 63.9% eval-prog [99] 36.1% ------------------------------------------------------------------------- for-loop [74] 100.0% [82] 318(0.4%) 0(0.0%) loop ...ket/collects/racket/private/list.rkt:264:4 ??? [90] 100.0% ------------------------------------------------------------------------- best-and-tied-at-points [71] 100.0% [83] 220(0.2%) 0(0.0%) for-loop ...k/herbie/src/core/alt-table.rkt:124:16 ??? [95] 100.0% ------------------------------------------------------------------------- for-loop [73] 100.0% [84] 200(0.2%) 200(0.2%) for-loop ...ck/herbie/src/core/simplify.rkt:183:13 ------------------------------------------------------------------------- for-loop [73] 100.0% [85] 200(0.2%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 expression-cost [97] 100.0% ------------------------------------------------------------------------- for-loop [112] 12.4% apply-match [79] 23.6% for-loop [68] 64.0% [86] 7722(8.5%) 3270(3.6%) match-e ...tatlock/herbie/src/core/ematch.rkt:46:0 for-loop [100] 34.8% list-cartesian-product [114] 11.2% for-loop [112] 9.1% constant? [107] 5.4% loop [134] 1.2% ------------------------------------------------------------------------- approximate9 [78] 100.0% [87] 7382(8.1%) 0(0.0%) loop ...e/ztatlock/herbie/src/core/taylor.rkt:82:4 hash-ref! [111] 100.0% ------------------------------------------------------------------------- ??? [9] 0.3% loop [134] 1.1% approximate9 [78] 1.8% composed [103] 2.4% append-map [41] 3.6% f37 [88] 5.5% parse-loop12 [123] 6.4% hash-ref! [111] 7.9% map [98] 33.9% simplify [27] 37.1% [88] 6310(7.0%) 884(1.0%) f37 ...t/collects/racket/match/compiler.rkt:499:40 map [98] 76.4% append-map [41] 5.6% f37 [88] 5.5% composed [103] 4.0% taylor-quotient [92] 1.8% taylor [104] 1.4% gather-multiplicative-terms [109] 1.2% combine-mterms [12] 0.5% ------------------------------------------------------------------------- loop [80] 49.4% jloop [8] 50.6% [89] 3394(3.7%) 0(0.0%) ??? /home/ztatlock/herbie/src/points.rkt:52:27 eval-prog [99] 82.3% ??? [144] 17.7% ------------------------------------------------------------------------- for-loop [75] 17.8% loop [82] 36.3% for-loop [72] 45.9% [90] 876(1.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/regimes.rkt:291:8 eval-prog [99] 100.0% ------------------------------------------------------------------------- errors [81] 100.0% [91] 824(0.9%) 200(0.2%) for-loop ...e/ztatlock/herbie/src/points.rkt:147:4 ??? [144] 51.5% ->flonum [152] 24.3% ------------------------------------------------------------------------- approximate9 [78] 47.6% f37 [88] 52.4% [92] 424(0.5%) 0(0.0%) taylor-quotient ...erbie/src/core/taylor.rkt:328:0 first-nonzero-exp [106] 100.0% ------------------------------------------------------------------------- apply-match [79] 100.0% [93] 398(0.4%) 0(0.0%) for-loop ...ck/herbie/src/core/simplify.rkt:136:10 loop! [105] 50.3% merge-egraph-nodes! [101] 49.7% ------------------------------------------------------------------------- apply-match [79] 100.0% [94] 222(0.2%) 0(0.0%) reduce-to-single! ...bie/src/core/egraph.rkt:324:0 filter-loop! [108] 100.0% ------------------------------------------------------------------------- for-loop [83] 100.0% [95] 220(0.2%) 220(0.2%) ??? ...ket/collects/racket/private/for.rkt:1150:14 ------------------------------------------------------------------------- apply-match [79] 100.0% [96] 202(0.2%) 0(0.0%) substitute-e ...ck/herbie/src/core/ematch.rkt:71:0 mk-enode! [102] 100.0% ------------------------------------------------------------------------- loop [85] 100.0% [97] 200(0.2%) 0(0.0%) expression-cost ...k/herbie/src/programs.rkt:212:0 compile [110] 100.0% ------------------------------------------------------------------------- parse-loop12 [123] 1.2% f37 [88] 14.8% loop [77] 40.2% make-exacts* [76] 43.9% [98] 35470(39.1%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:21:13 loop [134] 83.0% f37 [88] 7.4% parse-loop12 [123] 6.9% ??? [144] 1.6% ??? [9] 1.0% make-multiplication-node [119] 0.1% ------------------------------------------------------------------------- for-loop [65] 1.3% errors [81] 2.7% ??? [90] 5.0% ??? [89] 16.0% make-exacts* [76] 31.2% loop [66] 43.9% [99] 17428(19.2%) 3162(3.5%) eval-prog ...tatlock/herbie/src/programs.rkt:162:0 hash-ref! [111] 77.8% inductor [165] 1.8% ------------------------------------------------------------------------- match-e [86] 100.0% [100] 3240(3.6%) 1268(1.4%) for-loop ...tlock/herbie/src/core/ematch.rkt:59:11 for-loop [112] 36.9% list-cartesian-product [114] 20.5% loop [134] 3.5% ------------------------------------------------------------------------- for-loop [93] 8.1% apply-match [79] 91.9% [101] 2458(2.7%) 420(0.5%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 update-leader! [113] 50.3% enode-merge! [117] 16.4% for-loop [118] 16.3% ------------------------------------------------------------------------- expr->enode [56] 23.3% substitute-e [96] 23.3% apply-match [79] 53.3% [102] 866(1.0%) 404(0.4%) mk-enode! ...lock/herbie/src/core/egraph.rkt:101:0 new-enode [116] 53.3% ------------------------------------------------------------------------- f37 [88] 100.0% [103] 844(0.9%) 200(0.2%) composed ...ollects/racket/private/list.rkt:321:16 f37 [88] 76.3% ------------------------------------------------------------------------- f37 [88] 100.0% [104] 662(0.7%) 220(0.2%) taylor ...tatlock/herbie/src/core/taylor.rkt:157:0 debug7 [115] 66.8% ------------------------------------------------------------------------- loop [134] 16.7% for-loop [93] 30.3% apply-match [79] 53.0% [105] 660(0.7%) 0(0.0%) loop! .../ztatlock/herbie/src/core/enode.rkt:163:2 custom-set-union [140] 66.7% loop [134] 16.7% set [126] 16.7% ------------------------------------------------------------------------- taylor-quotient [92] 100.0% [106] 424(0.5%) 0(0.0%) first-nonzero-exp ...bie/src/core/taylor.rkt:260:0 hash-ref! [111] 100.0% ------------------------------------------------------------------------- match-e [86] 100.0% [107] 420(0.5%) 420(0.5%) constant? ...ck/herbie/src/syntax/syntax.rkt:221:0 ------------------------------------------------------------------------- reduce-to-single! [94] 100.0% [108] 222(0.2%) 222(0.2%) filter-loop! ...ck/herbie/src/core/enode.rkt:114:2 ------------------------------------------------------------------------- f37 [88] 33.3% gather-multiplicative-terms [109] 66.7% [109] 220(0.2%) 0(0.0%) gather-multiplicative-terms ...re/reduce.rkt:107:0 gather-multiplicative-terms [109] 66.7% curried [147] 33.3% ------------------------------------------------------------------------- expression-cost [97] 100.0% [110] 200(0.2%) 0(0.0%) compile .../ztatlock/herbie/src/programs.rkt:189:0 hash-ref! [111] 100.0% ------------------------------------------------------------------------- for-loop [24] 0.1% for-loop [143] 0.2% ??? [121] 0.4% compile [110] 0.4% ??? [136] 1.0% first-nonzero-exp [106] 1.2% ??? [5] 1.3% for-loop [30] 1.3% for-loop [19] 1.5% ??? [9] 3.0% ??? [124] 3.0% for-loop [18] 3.8% ??? [122] 5.3% loop [87] 6.9% for-loop [17] 8.9% eval-prog [99] 21.6% loop [134] 38.4% [111] 22574(24.9%) 400(0.4%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [121] 38.9% bigfloat-hash [120] 21.6% ??? [3] 9.8% simplify [27] 6.5% ??? [122] 5.4% ??? [4] 3.8% parse-loop12 [123] 3.4% ??? [124] 3.0% ??? [5] 2.8% f37 [88] 2.5% ??? [7] 1.3% ??? [10] 0.2% ??? [11] 0.1% ------------------------------------------------------------------------- match-e [86] 43.6% for-loop [100] 56.4% [112] 2318(2.6%) 400(0.4%) for-loop ...tlock/herbie/src/core/ematch.rkt:65:37 match-e [86] 78.5% ??? [132] 8.6% ------------------------------------------------------------------------- apply-match [79] 39.3% merge-egraph-nodes! [101] 60.7% [113] 2036(2.2%) 200(0.2%) update-leader! ...herbie/src/core/egraph.rkt:217:0 for-loop [125] 90.2% ------------------------------------------------------------------------- list-cartesian-product [114] 12.6% for-loop [100] 38.0% match-e [86] 49.4% [114] 1748(1.9%) 1346(1.5%) list-cartesian-product ...src/core/ematch.rkt:20:0 for-loop [129] 17.2% list-cartesian-product [114] 12.6% ------------------------------------------------------------------------- taylor [104] 50.0% simplify [27] 50.0% [115] 884(1.0%) 0(0.0%) debug7 /home/ztatlock/herbie/src/debug.rkt:102:0 ??? [128] 50.0% return/no-unsupplied [127] 50.0% ------------------------------------------------------------------------- mk-enode! [102] 100.0% [116] 462(0.5%) 0(0.0%) new-enode ...atlock/herbie/src/core/enode.rkt:68:0 set [126] 100.0% ------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [117] 402(0.4%) 0(0.0%) enode-merge! ...ck/herbie/src/core/enode.rkt:100:0 adopt-enode! [130] 50.2% custom-set-intersect! [133] 49.8% ------------------------------------------------------------------------- merge-egraph-nodes! [101] 100.0% [118] 400(0.4%) 198(0.2%) for-loop ...tlock/herbie/src/core/egraph.rkt:232:6 update-en-expr [164] 50.5% ------------------------------------------------------------------------- map [98] 100.0% [119] 200(0.2%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:221:0 make-multiplication-subnode [131]100.0% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [120] 13552(15.0%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [135] 92.3% sig+exp->bigfloat [138] 7.7% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [121] 13096(14.5%) 0(0.0%) ??? /home/ztatlock/herbie/src/programs.rkt:197:5 loop [134] 98.5% hash-ref! [111] 1.5% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [122] 6720(7.4%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:42:15 hash-ref! [111] 97.0% ??? [136] 3.0% ------------------------------------------------------------------------- for-loop [21] 6.7% loop [134] 7.1% simplify [27] 12.3% parse-loop12 [123] 13.3% hash-ref! [111] 16.2% map [98] 44.3% [123] 6266(6.9%) 3324(3.7%) parse-loop12 ...s/racket/match/compiler.rkt:410:15 loop [134] 23.4% f37 [88] 16.6% parse-loop12 [123] 13.3% for-loop [143] 6.7% parse-app [139] 5.6% map [98] 4.9% ------------------------------------------------------------------------- hash-ref! [111] 100.0% [124] 2776(3.1%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:63:15 hash-ref! [111] 100.0% ------------------------------------------------------------------------- update-leader! [113] 100.0% [125] 1836(2.0%) 0(0.0%) for-loop ...tlock/herbie/src/core/egraph.rkt:222:6 for-loop [137] 100.0% ------------------------------------------------------------------------- loop! [105] 32.3% new-enode [116] 67.7% [126] 682(0.8%) 682(0.8%) set ...collects/racket/private/set-types.rkt:982:0 ------------------------------------------------------------------------- debug7 [115] 100.0% [127] 442(0.5%) 0(0.0%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [141] 100.0% ------------------------------------------------------------------------- debug7 [115] 100.0% [128] 442(0.5%) 0(0.0%) ??? ...racket/collects/racket/private/kw.rkt:713:9 ??? [142] 100.0% ------------------------------------------------------------------------- list-cartesian-product [114] 100.0% [129] 402(0.4%) 402(0.4%) for-loop ...atlock/herbie/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------- enode-merge! [117] 100.0% [130] 202(0.2%) 0(0.0%) adopt-enode! ...ock/herbie/src/core/enode.rkt:76:0 custom-set-union [140] 100.0% ------------------------------------------------------------------------- make-multiplication-node [119] 100.0% [131] 200(0.2%) 200(0.2%) make-multiplication-subnode ...re/reduce.rkt:231:0 ------------------------------------------------------------------------- for-loop [112] 100.0% [132] 200(0.2%) 200(0.2%) ??? /home/ztatlock/herbie/src/core/ematch.rkt:50:5 ------------------------------------------------------------------------- enode-merge! [117] 100.0% [133] 200(0.2%) 200(0.2%) custom-set-intersect! ...ivate/set-types.rkt:270:0 ------------------------------------------------------------------------- loop! [105] 0.0% match-e [86] 0.1% make-exacts* [76] 0.1% for-loop [100] 0.2% option-on-expr [42] 0.3% post-process [25] 0.5% parse-loop12 [123] 0.7% map-enodes [63] 0.9% map [98] 1.2% extract-alt [29] 3.4% append-map [41] 5.7% ??? [121] 12.2% loop [134] 74.7% [134] 70048(77.3%) 390(0.4%) loop ...cket/collects/racket/private/map.rkt:26:19 loop [134] 74.7% hash-ref! [111] 12.2% taylor-alt [50] 5.7% simplify [32] 3.4% ??? [144] 1.2% parse-loop12 [123] 0.7% for-loop [146] 0.6% completely-simplify-alt [6] 0.5% errors [81] 0.3% curried [147] 0.2% ??? [9] 0.0% f37 [88] 0.0% bf* [156] 0.0% loop! [105] 0.0% ??? [162] 0.0% ------------------------------------------------------------------------- bigfloat-hash [120] 100.0% [135] 12502(13.8%) 12502(13.8%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 ------------------------------------------------------------------------- ??? [122] 10.9% for-loop [17] 89.1% [136] 1854(2.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:288:19 hash-ref! [111] 100.0% ------------------------------------------------------------------------- for-loop [125] 100.0% [137] 1836(2.0%) 0(0.0%) for-loop ...tlock/herbie/src/core/egraph.rkt:223:8 hash-update! [145] 100.0% ------------------------------------------------------------------------- bigfloat-hash [120] 100.0% [138] 1050(1.2%) 848(0.9%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ??? [172] 19.2% ------------------------------------------------------------------------- parse-loop12 [123] 100.0% [139] 642(0.7%) 642(0.7%) parse-app .../collects/racket/private/kw.rkt:903:2 ------------------------------------------------------------------------- adopt-enode! [130] 31.5% loop! [105] 68.5% [140] 642(0.7%) 442(0.5%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [149] 31.2% ------------------------------------------------------------------------- return/no-unsupplied [127] 100.0% [141] 442(0.5%) 442(0.5%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------- ??? [128] 100.0% [142] 442(0.5%) 220(0.2%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [148] 50.2% ------------------------------------------------------------------------- parse-loop12 [123] 100.0% [143] 422(0.5%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:490:59 hash-ref! [111] 100.0% ------------------------------------------------------------------------- for-loop [91] 0.9% map [98] 1.3% ??? [89] 1.3% loop [134] 96.4% [144] 44910(49.6%) 240(0.3%) ??? /home/ztatlock/herbie/src/programs.rkt:168:4 ??? [150] 92.1% real->bigfloat [168] 4.7% ??? [167] 1.3% ->flonum [152] 0.9% ------------------------------------------------------------------------- for-loop [137] 100.0% [145] 1836(2.0%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [151] 100.0% ------------------------------------------------------------------------- loop [134] 100.0% [146] 642(0.7%) 0(0.0%) for-loop ...ock/herbie/src/core/simplify.rkt:161:2 eval-const-expr [153] 65.7% setfindf [154] 34.3% ------------------------------------------------------------------------- gather-multiplicative-terms [109] 49.3% loop [134] 50.7% [147] 446(0.5%) 446(0.5%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------- ??? [142] 100.0% [148] 222(0.2%) 222(0.2%) ??? ...ects/racket/contract/private/prop.rkt:252:4 ------------------------------------------------------------------------- custom-set-union [140] 100.0% [149] 200(0.2%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [155] 100.0% ------------------------------------------------------------------------- ??? [144] 100.0% [150] 41370(45.7%) 2544(2.8%) ??? ...acket/collects/racket/private/kw.rkt:400:14 ??? [162] 77.1% bf* [156] 10.3% ...higher-order.rkt:373:33 [157] 4.8% ...higher-order.rkt:369:33 [159] 1.7% ------------------------------------------------------------------------- hash-update! [145] 100.0% [151] 1836(2.0%) 202(0.2%) ??? .../ztatlock/herbie/src/core/egraph.rkt:225:24 for-loop [158] 89.0% ------------------------------------------------------------------------- for-loop [91] 32.1% ??? [144] 67.9% [152] 624(0.7%) 222(0.2%) ->flonum ...ock/herbie/src/syntax/syntax.rkt:224:0 ??? [161] 64.4% ------------------------------------------------------------------------- for-loop [146] 100.0% [153] 422(0.5%) 0(0.0%) eval-const-expr ...k/herbie/src/programs.rkt:180:0 expression-induct31 [160] 100.0% ------------------------------------------------------------------------- for-loop [146] 100.0% [154] 220(0.2%) 220(0.2%) setfindf ...e/ztatlock/herbie/src/common.rkt:173:0 ------------------------------------------------------------------------- for-loop [149] 100.0% [155] 200(0.2%) 200(0.2%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------- loop [134] 8.6% ??? [150] 91.4% [156] 4672(5.2%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [162] 100.0% ------------------------------------------------------------------------- ??? [150] 100.0% [157] 1984(2.2%) 404(0.4%) ...higher-order.rkt:373:33 (unknown source) ??? [163] 71.0% ??? [167] 8.7% ------------------------------------------------------------------------- ??? [151] 100.0% [158] 1634(1.8%) 832(0.9%) for-loop ...lock/herbie/src/core/egraph.rkt:226:26 update-en-expr [164] 49.1% ------------------------------------------------------------------------- ??? [150] 100.0% [159] 690(0.8%) 0(0.0%) ...higher-order.rkt:369:33 (unknown source) ??? [163] 53.3% ??? [167] 46.7% ------------------------------------------------------------------------- eval-const-expr [153] 100.0% [160] 422(0.5%) 0(0.0%) expression-induct31 ...erbie/src/programs.rkt:55:0 inductor [165] 100.0% ------------------------------------------------------------------------- ->flonum [152] 100.0% [161] 402(0.4%) 402(0.4%) ??? /home/ztatlock/herbie/src/config.rkt:29:0 ------------------------------------------------------------------------- loop [134] 1.7% bf* [156] 12.6% ??? [150] 85.8% [162] 37168(41.0%) 23292(25.7%) ??? ...-racket/utils/simple-result-arrow.rkt:26:12 bfsub [166] 27.4% bfsqr [169] 5.3% ??? [171] 4.7% ------------------------------------------------------------------------- ...higher-order.rkt:369:33 [159] 20.7% ...higher-order.rkt:373:33 [157] 79.3% [163] 1776(2.0%) 0(0.0%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [167] 100.0% ------------------------------------------------------------------------- for-loop [118] 20.1% for-loop [158] 79.9% [164] 1004(1.1%) 1004(1.1%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------- eval-prog [99] 28.4% expression-induct31 [160] 28.4% inductor [165] 43.2% [165] 742(0.8%) 376(0.4%) inductor .../ztatlock/herbie/src/programs.rkt:73:2 inductor [165] 43.2% integer->bigfloat [170] 13.6% real->bigfloat [168] 7.4% ------------------------------------------------------------------------- ??? [162] 100.0% [166] 10184(11.2%) 8308(9.2%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [172] 18.4% ------------------------------------------------------------------------- ...higher-order.rkt:373:33 [157] 6.0% ...higher-order.rkt:369:33 [159] 11.3% ??? [144] 20.5% ??? [163] 62.2% [167] 2856(3.2%) 0(0.0%) ??? ...ects/racket/contract/private/guts.rkt:638:8 ??? [171] 100.0% ------------------------------------------------------------------------- inductor [165] 7.2% ??? [144] 92.8% [168] 2286(2.5%) 1900(2.1%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [172] 16.9% ------------------------------------------------------------------------- ??? [162] 100.0% [169] 1958(2.2%) 1812(2.0%) bfsqr ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [172] 7.5% ------------------------------------------------------------------------- inductor [165] 100.0% [170] 202(0.2%) 202(0.2%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ------------------------------------------------------------------------- ??? [162] 37.8% ??? [167] 62.2% [171] 4590(5.1%) 2286(2.5%) ??? ...tract/private/arrow-higher-order.rkt:373:33 ??? [173] 45.8% ??? [174] 4.4% ------------------------------------------------------------------------- bfsqr [169] 5.6% sig+exp->bigfloat [138] 7.7% real->bigfloat [168] 14.8% bfsub [166] 71.9% [172] 2610(2.9%) 2610(2.9%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------- ??? [171] 100.0% [173] 2100(2.3%) 1328(1.5%) ??? ...llects/racket/contract/combinator.rkt:178:4 any-wrap/traverse [175] 36.8% ------------------------------------------------------------------------- ??? [171] 100.0% [174] 204(0.2%) 204(0.2%) ??? ...ects/racket/contract/private/prop.rkt:489:4 ------------------------------------------------------------------------- ??? [173] 100.0% [175] 772(0.9%) 772(0.9%) any-wrap/traverse ...cket/utils/any-wrap.rkt:106:2 -------------------------------------------------------------------------