Profiling results ----------------- Total cpu time observed: 104100ms (out of 104928ms) Number of samples taken: 470 (once every 221ms) (Hiding functions with self<1.0% and local<2.0%: 8 of 187 hidden) ================================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================================ ??? [60] 100.0% [1] 100986(97.0%) 0(0.0%) profile-thunk14 ...t/pkgs/profile-lib/main.rkt:9:0 run [15] 100.0% -------------------------------------------------------------------------------- ??? [60] 100.0% [2] 46404(44.6%) 0(0.0%) run-improve58 ...ock/herbie/src/mainloop.rkt:242:0 finalize-table! [16] 52.6% for-loop [17] 42.9% get-final-combination [23] 3.5% loop [70] 0.9% -------------------------------------------------------------------------------- loop [141] 8.3% ??? [60] 91.7% [3] 17090(16.4%) 0(0.0%) simplify ...lock/herbie/src/core/simplify.rkt:39:0 simplify-expr [18] 45.8% iterate-egraph!5 [29] 35.4% for-loop [22] 18.8% -------------------------------------------------------------------------------- post-process [30] 1.8% loop [141] 98.2% [4] 11320(10.9%) 0(0.0%) completely-simplify-alt ...erbie/src/glue.rkt:87:0 simplify-expr [18] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [5] 7406(7.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:285:26 for-loop [19] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [6] 6272(6.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:295:23 for-loop [20] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [7] 3650(3.5%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:338:33 for-loop [21] 94.5% hash-ref! [127] 5.5% -------------------------------------------------------------------------------- map [115] 28.8% loop [141] 71.2% [8] 2682(2.6%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [127] 85.2% f6 [104] 14.8% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [9] 824(0.8%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:483:23 for-loop [24] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [10] 622(0.6%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:392:23 for-loop [25] 100.0% -------------------------------------------------------------------------------- map [115] 33.2% f6 [104] 66.8% [11] 602(0.6%) 0(0.0%) taylor-invert .../herbie/src/core/taylor.rkt:312:0 simplify [32] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [12] 422(0.4%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:322:33 for-loop [27] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [13] 422(0.4%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:408:23 for-loop [26] 100.0% -------------------------------------------------------------------------------- f6 [104] 100.0% [14] 198(0.2%) 0(0.0%) taylor-quotient ...erbie/src/core/taylor.rkt:328:0 first-nonzero-exp [28] 100.0% -------------------------------------------------------------------------------- profile-thunk14 [1] 100.0% [15] 100986(97.0%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:31:2 ??? [60] 100.0% -------------------------------------------------------------------------------- run-improve58 [2] 100.0% [16] 24430(23.5%) 0(0.0%) finalize-table! ...k/herbie/src/mainloop.rkt:264:0 post-process [30] 100.0% -------------------------------------------------------------------------------- run-improve58 [2] 100.0% [17] 19924(19.1%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:253:8 run-iter! [31] 100.0% -------------------------------------------------------------------------------- simplify [3] 40.9% completely-simplify-alt [4] 59.1% [18] 19140(18.4%) 0(0.0%) simplify-expr ...herbie/src/core/simplify.rkt:68:0 iterate-egraph!5 [29] 91.6% loop [34] 8.4% -------------------------------------------------------------------------------- ??? [5] 100.0% [19] 7406(7.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:285:52 hash-ref! [127] 73.3% ??? [33] 26.7% -------------------------------------------------------------------------------- ??? [6] 100.0% [20] 6272(6.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:298:27 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- ??? [7] 100.0% [21] 3448(3.3%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:341:46 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- simplify [3] 100.0% [22] 3212(3.1%) 0(0.0%) for-loop ...ock/herbie/src/core/simplify.rkt:61:12 iterate-egraph!5 [29] 93.8% loop [34] 6.2% -------------------------------------------------------------------------------- run-improve58 [2] 100.0% [23] 1644(1.6%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:269:0 extract-alt [35] 100.0% -------------------------------------------------------------------------------- ??? [9] 100.0% [24] 824(0.8%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:487:35 parse-loop12 [134] 100.0% -------------------------------------------------------------------------------- ??? [10] 100.0% [25] 622(0.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:396:33 for-loop [36] 100.0% -------------------------------------------------------------------------------- ??? [13] 100.0% [26] 422(0.4%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:411:30 for-loop [37] 100.0% -------------------------------------------------------------------------------- ??? [12] 100.0% [27] 422(0.4%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:324:46 simplify [32] 100.0% -------------------------------------------------------------------------------- taylor-quotient [14] 100.0% [28] 198(0.2%) 0(0.0%) first-nonzero-exp ...bie/src/core/taylor.rkt:260:0 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- for-loop [22] 11.3% simplify [3] 22.8% simplify-expr [18] 65.9% [29] 26606(25.6%) 270(0.3%) iterate-egraph!5 ...bie/src/core/simplify.rkt:95:0 one-iter [38] 91.4% map-enodes [45] 6.0% *simplify-rules* [47] 1.5% -------------------------------------------------------------------------------- finalize-table! [16] 100.0% [30] 24430(23.5%) 0(0.0%) post-process .../ztatlock/herbie/src/glue.rkt:95:0 loop [141] 52.3% for-loop [40] 39.3% ??? [54] 6.7% localize-error [41] 0.9% completely-simplify-alt [4] 0.8% -------------------------------------------------------------------------------- for-loop [17] 100.0% [31] 19924(19.1%) 0(0.0%) run-iter! ...tatlock/herbie/src/mainloop.rkt:223:0 simplify! [39] 78.6% finalize-iter! [44] 8.1% gen-series! [46] 7.2% localize-error [41] 3.0% choose-best-alt! [48] 2.0% gen-rewrites! [49] 1.0% -------------------------------------------------------------------------------- map [115] 1.9% loop [141] 3.8% location-do [79] 4.0% for-loop [27] 4.0% taylor-invert [11] 5.8% hash-ref! [127] 78.6% [32] 10444(10.0%) 202(0.2%) simplify ...atlock/herbie/src/core/reduce.rkt:18:0 f6 [104] 40.0% parse-loop12 [134] 36.7% debug-print [42] 17.5% simplify-node [143] 1.9% -------------------------------------------------------------------------------- ??? [133] 5.2% for-loop [19] 94.8% [33] 3850(3.7%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:288:19 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- for-loop [22] 11.1% simplify-expr [18] 88.9% [34] 1804(1.7%) 0(0.0%) loop ...tatlock/herbie/src/core/simplify.rkt:203:2 pass [43] 100.0% -------------------------------------------------------------------------------- get-final-combination [23] 100.0% [35] 1644(1.6%) 0(0.0%) extract-alt ...e/ztatlock/herbie/src/glue.rkt:57:0 loop [141] 86.6% loop [99] 13.4% -------------------------------------------------------------------------------- for-loop [25] 100.0% [36] 622(0.6%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:398:39 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- for-loop [26] 100.0% [37] 422(0.4%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:414:42 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- iterate-egraph!5 [29] 100.0% [38] 24330(23.4%) 220(0.2%) one-iter ...ock/herbie/src/core/simplify.rkt:106:0 for-loop [50] 65.9% loop [53] 27.4% apply-match [62] 3.4% -------------------------------------------------------------------------------- run-iter! [31] 100.0% [39] 15666(15.0%) 0(0.0%) simplify! ...tatlock/herbie/src/mainloop.rkt:162:0 for-loop [51] 100.0% -------------------------------------------------------------------------------- post-process [30] 100.0% [40] 9604(9.2%) 0(0.0%) for-loop /home/ztatlock/herbie/src/glue.rkt:119:17 append-map [52] 100.0% -------------------------------------------------------------------------------- post-process [30] 8.9% run-iter! [31] 24.3% loop [141] 66.8% [41] 2484(2.4%) 0(0.0%) localize-error ...erbie/src/core/localize.rkt:47:0 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- simplify [32] 100.0% [42] 1830(1.8%) 602(0.6%) debug-print ...ztatlock/herbie/src/debug.rkt:107:0 for-loop [57] 67.1% -------------------------------------------------------------------------------- loop [34] 100.0% [43] 1804(1.7%) 0(0.0%) pass ...tatlock/herbie/src/core/simplify.rkt:193:2 for-loop [55] 88.9% hash-set*+ [59] 11.1% -------------------------------------------------------------------------------- run-iter! [31] 100.0% [44] 1608(1.5%) 0(0.0%) finalize-iter! ...ck/herbie/src/mainloop.rkt:177:0 ??? [54] 100.0% -------------------------------------------------------------------------------- iterate-egraph!5 [29] 100.0% [45] 1606(1.5%) 0(0.0%) map-enodes ...ock/herbie/src/core/egraph.rkt:139:0 loop [141] 75.1% for-loop [148] 24.9% -------------------------------------------------------------------------------- run-iter! [31] 100.0% [46] 1444(1.4%) 0(0.0%) gen-series! ...tlock/herbie/src/mainloop.rkt:134:0 for-loop [56] 100.0% -------------------------------------------------------------------------------- iterate-egraph!5 [29] 100.0% [47] 400(0.4%) 0(0.0%) *simplify-rules* ...bie/src/syntax/rules.rkt:300:0 for-loop [98] 100.0% -------------------------------------------------------------------------------- run-iter! [31] 100.0% [48] 400(0.4%) 0(0.0%) choose-best-alt! .../herbie/src/mainloop.rkt:120:0 ??? [54] 100.0% -------------------------------------------------------------------------------- run-iter! [31] 100.0% [49] 202(0.2%) 0(0.0%) gen-rewrites! ...ock/herbie/src/mainloop.rkt:148:0 for-loop [58] 100.0% -------------------------------------------------------------------------------- for-loop [50] 48.1% one-iter [38] 51.9% [50] 16026(15.4%) 3210(3.1%) for-loop ...ck/herbie/src/core/simplify.rkt:116:12 for-loop [50] 48.1% match-e [71] 40.0% -------------------------------------------------------------------------------- simplify! [39] 100.0% [51] 15666(15.0%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:166:6 ??? [60] 100.0% -------------------------------------------------------------------------------- simplify-node [143] 1.1% f6 [104] 4.7% for-loop [40] 94.3% [52] 9604(9.2%) 568(0.5%) append-map ...acket/collects/racket/list.rkt:565:2 taylor-alt [61] 76.4% loop [141] 17.8% free-variables [122] 2.2% f6 [104] 1.0% -------------------------------------------------------------------------------- one-iter [38] 100.0% [53] 6666(6.4%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:53:19 apply-match [62] 100.0% -------------------------------------------------------------------------------- choose-best-alt! [48] 11.0% finalize-iter! [44] 44.2% post-process [30] 44.7% [54] 3634(3.5%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [63] 83.4% atab-pick-alt8 [66] 11.0% atab-add-altns [67] 5.6% -------------------------------------------------------------------------------- pass [43] 100.0% [55] 1604(1.5%) 0(0.0%) for-loop ...ck/herbie/src/core/simplify.rkt:196:29 argmin [64] 50.1% for-loop [65] 37.4% loop [69] 12.5% -------------------------------------------------------------------------------- gen-series! [46] 100.0% [56] 1444(1.4%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:140:7 taylor-alt [61] 100.0% -------------------------------------------------------------------------------- debug-print [42] 100.0% [57] 1228(1.2%) 1228(1.2%) for-loop /home/ztatlock/herbie/src/debug.rkt:113:2 -------------------------------------------------------------------------------- gen-rewrites! [49] 100.0% [58] 202(0.2%) 0(0.0%) for-loop ...tatlock/herbie/src/mainloop.rkt:153:11 ??? [68] 100.0% -------------------------------------------------------------------------------- pass [43] 100.0% [59] 200(0.2%) 200(0.2%) hash-set*+ ...k/herbie/src/core/simplify.rkt:175:0 -------------------------------------------------------------------------------- for-loop [51] 5.3% run [15] 46.5% [60] 103638(99.6%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk14 [1] 46.5% loop [70] 27.6% run-improve58 [2] 20.6% simplify [3] 5.3% -------------------------------------------------------------------------------- for-loop [56] 13.1% loop [141] 16.5% append-map [52] 70.5% [61] 11048(10.6%) 0(0.0%) taylor-alt ...e/ztatlock/herbie/src/glue.rkt:142:0 for-loop [72] 100.0% -------------------------------------------------------------------------------- one-iter [38] 10.9% loop [53] 89.1% [62] 7482(7.2%) 602(0.6%) apply-match .../herbie/src/core/simplify.rkt:122:2 merge-egraph-nodes! [82] 27.1% match-e [71] 24.5% for-loop [75] 13.6% substitute-e [84] 10.8% mk-enode! [93] 10.7% loop! [149] 5.3% -------------------------------------------------------------------------------- ??? [54] 100.0% [63] 3032(2.9%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [73] 100.0% -------------------------------------------------------------------------------- ??? [76] 19.9% for-loop [55] 80.1% [64] 1004(1.0%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 expression-cost [74] 100.0% -------------------------------------------------------------------------------- for-loop [55] 100.0% [65] 600(0.6%) 600(0.6%) for-loop ...ck/herbie/src/core/simplify.rkt:183:13 -------------------------------------------------------------------------------- ??? [54] 100.0% [66] 400(0.4%) 0(0.0%) atab-pick-alt8 ...rbie/src/core/alt-table.rkt:54:0 ??? [76] 100.0% -------------------------------------------------------------------------------- ??? [54] 100.0% [67] 202(0.2%) 0(0.0%) atab-add-altns ...rbie/src/core/alt-table.rkt:50:0 atab-add-altn [73] 100.0% -------------------------------------------------------------------------------- for-loop [58] 100.0% [68] 202(0.2%) 0(0.0%) ??? /home/ztatlock/herbie/src/alternative.rkt:90:0 rewriter [77] 100.0% -------------------------------------------------------------------------------- for-loop [55] 100.0% [69] 200(0.2%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 expression-cost [74] 100.0% -------------------------------------------------------------------------------- run-improve58 [2] 0.7% ??? [60] 99.3% [70] 57640(55.4%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:122:2 make-exacts* [89] 56.7% loop [78] 42.6% loop [90] 0.7% -------------------------------------------------------------------------------- apply-match [62] 10.4% for-loop [92] 13.3% for-loop [50] 76.2% [71] 14648(14.1%) 7962(7.6%) match-e ...tatlock/herbie/src/core/ematch.rkt:46:0 for-loop [80] 31.8% for-loop [92] 9.9% loop [141] 6.2% list-cartesian-product [94] 2.8% curry* [101] 1.4% -------------------------------------------------------------------------------- taylor-alt [61] 100.0% [72] 11048(10.6%) 202(0.2%) for-loop /home/ztatlock/herbie/src/glue.rkt:144:2 location-do [79] 98.2% -------------------------------------------------------------------------------- atab-add-altns [67] 6.2% for-loop [63] 93.8% [73] 3234(3.1%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [81] 93.8% override-at-pnts [87] 6.2% -------------------------------------------------------------------------------- loop [69] 16.6% argmin [64] 83.4% [74] 1204(1.2%) 0(0.0%) expression-cost ...k/herbie/src/programs.rkt:212:0 compile [83] 100.0% -------------------------------------------------------------------------------- apply-match [62] 100.0% [75] 1016(1.0%) 0(0.0%) for-loop ...ck/herbie/src/core/simplify.rkt:136:10 merge-egraph-nodes! [82] 40.7% loop! [149] 19.9% substitute-e [84] 19.7% mk-enode! [93] 19.7% -------------------------------------------------------------------------------- atab-pick-alt8 [66] 100.0% [76] 400(0.4%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:369:33 argmin [64] 50.0% best-alt [88] 50.0% -------------------------------------------------------------------------------- ??? [68] 33.3% matcher [102] 66.7% [77] 202(0.2%) 0(0.0%) rewriter ...lock/herbie/src/core/matcher.rkt:123:2 for-loop [86] 66.7% *rules* [85] 33.3% -------------------------------------------------------------------------------- loop [70] 100.0% [78] 24562(23.6%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:93:2 loop [90] 60.0% make-exacts* [89] 40.0% -------------------------------------------------------------------------------- location-do [79] 31.8% for-loop [72] 68.2% [79] 10846(10.4%) 0(0.0%) location-do ...tlock/herbie/src/programs.rkt:129:0 approximate9 [91] 67.4% location-do [79] 31.8% simplify [32] 0.7% -------------------------------------------------------------------------------- match-e [71] 100.0% [80] 5680(5.5%) 1844(1.8%) for-loop ...tlock/herbie/src/core/ematch.rkt:59:11 for-loop [92] 40.7% list-cartesian-product [94] 18.1% loop [141] 8.8% curry* [101] 3.5% -------------------------------------------------------------------------------- atab-add-altn [73] 100.0% [81] 3034(2.9%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [121] 72.8% for-loop [96] 27.2% -------------------------------------------------------------------------------- merge-egraph-nodes! [82] 4.1% for-loop [75] 17.0% apply-match [62] 78.9% [82] 2440(2.3%) 0(0.0%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 update-leader! [95] 54.1% enode-merge! [97] 24.8% for-loop [100] 17.0% merge-egraph-nodes! [82] 4.1% -------------------------------------------------------------------------------- expression-cost [74] 100.0% [83] 1204(1.2%) 0(0.0%) compile .../ztatlock/herbie/src/programs.rkt:189:0 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- for-loop [75] 19.9% apply-match [62] 80.1% [84] 1006(1.0%) 200(0.2%) substitute-e ...ck/herbie/src/core/ematch.rkt:71:0 mk-enode! [93] 80.1% -------------------------------------------------------------------------------- rewriter [77] 100.0% [85] 202(0.2%) 0(0.0%) *rules* ...tlock/herbie/src/syntax/rules.rkt:296:0 for-loop [98] 100.0% -------------------------------------------------------------------------------- rewriter [77] 100.0% [86] 202(0.2%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:126:10 matcher [102] 100.0% -------------------------------------------------------------------------------- atab-add-altn [73] 100.0% [87] 200(0.2%) 0(0.0%) override-at-pnts ...e/src/core/alt-table.rkt:145:0 errors [121] 100.0% -------------------------------------------------------------------------------- ??? [76] 100.0% [88] 200(0.2%) 0(0.0%) best-alt /home/ztatlock/herbie/src/glue.rkt:79:0 loop [99] 100.0% -------------------------------------------------------------------------------- loop [78] 23.1% loop [70] 76.9% [89] 42492(40.8%) 0(0.0%) make-exacts* ...tatlock/herbie/src/points.rkt:80:0 map [115] 56.3% loop [141] 43.7% -------------------------------------------------------------------------------- loop [70] 2.7% loop [78] 97.3% [90] 15148(14.6%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:83:4 map [115] 100.0% -------------------------------------------------------------------------------- location-do [79] 100.0% [91] 10432(10.0%) 0(0.0%) approximate9 ...ck/herbie/src/core/taylor.rkt:11:0 loop [103] 84.6% f6 [104] 15.4% -------------------------------------------------------------------------------- match-e [71] 48.1% for-loop [80] 51.9% [92] 4844(4.7%) 202(0.2%) for-loop ...tlock/herbie/src/core/ematch.rkt:65:37 match-e [71] 77.3% ??? [105] 18.6% -------------------------------------------------------------------------------- for-loop [75] 11.1% apply-match [62] 44.3% substitute-e [84] 44.6% [93] 1806(1.7%) 1606(1.5%) mk-enode! ...lock/herbie/src/core/egraph.rkt:101:0 mutable-set [114] 11.1% -------------------------------------------------------------------------------- list-cartesian-product [94] 24.7% match-e [71] 24.8% for-loop [80] 50.6% [94] 1632(1.6%) 1230(1.2%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [94] 24.7% for-loop [108] 12.3% -------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [95] 1422(1.4%) 400(0.4%) update-leader! ...herbie/src/core/egraph.rkt:217:0 for-loop [106] 57.8% update-en-expr [111] 14.1% -------------------------------------------------------------------------------- best-and-tied-at-points [81] 100.0% [96] 824(0.8%) 422(0.4%) for-loop ...k/herbie/src/core/alt-table.rkt:124:16 ??? [110] 48.8% -------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [97] 604(0.6%) 0(0.0%) enode-merge! ...ck/herbie/src/core/enode.rkt:100:0 adopt-enode! [107] 100.0% -------------------------------------------------------------------------------- *rules* [85] 33.6% *simplify-rules* [47] 66.4% [98] 602(0.6%) 400(0.4%) for-loop ...e/ztatlock/herbie/src/common.rkt:205:9 ormap [112] 33.6% -------------------------------------------------------------------------------- best-alt [88] 47.6% extract-alt [35] 52.4% [99] 420(0.4%) 0(0.0%) loop /home/ztatlock/herbie/src/common.rkt:86:2 composed [116] 100.0% -------------------------------------------------------------------------------- merge-egraph-nodes! [82] 100.0% [100] 414(0.4%) 214(0.2%) for-loop ...tlock/herbie/src/core/egraph.rkt:232:6 update-en-expr [111] 48.3% -------------------------------------------------------------------------------- for-loop [80] 49.8% match-e [71] 50.2% [101] 402(0.4%) 0(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [109] 100.0% -------------------------------------------------------------------------------- for-loop [113] 50.0% for-loop [86] 50.0% [102] 202(0.2%) 0(0.0%) matcher ...tlock/herbie/src/core/matcher.rkt:159:2 for-loop [113] 50.0% rewriter [77] 50.0% -------------------------------------------------------------------------------- approximate9 [91] 100.0% [103] 8830(8.5%) 200(0.2%) loop ...e/ztatlock/herbie/src/core/taylor.rkt:82:4 hash-ref! [127] 97.7% -------------------------------------------------------------------------------- simplify-node [143] 0.7% ??? [8] 0.9% append-map [52] 1.3% composed [116] 1.8% approximate9 [91] 4.4% parse-loop12 [134] 5.6% f6 [104] 6.8% map [115] 18.8% hash-ref! [127] 28.1% simplify [32] 31.5% [104] 7452(7.2%) 642(0.6%) f6 ...et/collects/racket/match/compiler.rkt:499:40 map [115] 66.0% f6 [104] 6.8% composed [116] 5.0% append-map [52] 3.1% parse-app [144] 2.8% combine-mterms [118] 2.5% compose [157] 1.4% loop [141] 1.1% taylor-invert [11] 0.8% parse-loop12 [134] 0.7% taylor-quotient [14] 0.4% -------------------------------------------------------------------------------- for-loop [92] 100.0% [105] 1000(1.0%) 400(0.4%) ??? /home/ztatlock/herbie/src/core/ematch.rkt:50:5 for-loop [119] 60.0% -------------------------------------------------------------------------------- update-leader! [95] 100.0% [106] 822(0.8%) 0(0.0%) for-loop ...tlock/herbie/src/core/egraph.rkt:222:6 for-loop [117] 100.0% -------------------------------------------------------------------------------- enode-merge! [97] 100.0% [107] 604(0.6%) 200(0.2%) adopt-enode! ...ock/herbie/src/core/enode.rkt:76:0 custom-set-union [156] 66.9% -------------------------------------------------------------------------------- list-cartesian-product [94] 100.0% [108] 402(0.4%) 402(0.4%) for-loop ...atlock/herbie/src/core/ematch.rkt:24:8 -------------------------------------------------------------------------------- curry* [101] 100.0% [109] 402(0.4%) 402(0.4%) procedure-arity ...ket/private/norm-arity.rkt:7:27 -------------------------------------------------------------------------------- for-loop [96] 100.0% [110] 402(0.4%) 402(0.4%) ??? ...ket/collects/racket/private/for.rkt:1150:14 -------------------------------------------------------------------------------- update-leader! [95] 50.0% for-loop [100] 50.0% [111] 400(0.4%) 400(0.4%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 -------------------------------------------------------------------------------- for-loop [98] 100.0% [112] 202(0.2%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:106:13 ??? [163] 100.0% -------------------------------------------------------------------------------- matcher [102] 100.0% [113] 202(0.2%) 0(0.0%) for-loop ...ock/herbie/src/core/matcher.rkt:175:21 matcher [102] 100.0% -------------------------------------------------------------------------------- mk-enode! [93] 100.0% [114] 200(0.2%) 0(0.0%) mutable-set ...racket/private/set-types.rkt:1000:0 for-loop [120] 100.0% -------------------------------------------------------------------------------- f6 [104] 13.4% loop [90] 33.6% make-exacts* [89] 53.1% [115] 45108(43.3%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:21:13 loop [141] 89.5% f6 [104] 4.7% parse-loop12 [134] 2.7% ??? [8] 1.3% ??? [147] 0.5% taylor-invert [11] 0.4% ??? [172] 0.2% simplify [32] 0.2% ??? [124] 0.2% simplify-node [143] 0.1% make-multiplication-node [125] 0.1% -------------------------------------------------------------------------------- loop [99] 25.9% f6 [104] 74.1% [116] 1620(1.6%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 f6 [104] 49.3% errors [121] 25.9% free-variables [122] 24.8% -------------------------------------------------------------------------------- for-loop [106] 100.0% [117] 822(0.8%) 0(0.0%) for-loop ...tlock/herbie/src/core/egraph.rkt:223:8 hash-update! [123] 100.0% -------------------------------------------------------------------------------- f6 [104] 100.0% [118] 802(0.8%) 602(0.6%) combine-mterms ...herbie/src/core/reduce.rkt:182:0 for-loop [126] 24.9% -------------------------------------------------------------------------------- ??? [105] 100.0% [119] 600(0.6%) 600(0.6%) for-loop ...atlock/herbie/src/core/ematch.rkt:51:7 -------------------------------------------------------------------------------- mutable-set [114] 100.0% [120] 200(0.2%) 200(0.2%) for-loop ...cts/racket/private/set-types.rkt:944:2 -------------------------------------------------------------------------------- override-at-pnts [87] 7.1% composed [116] 14.8% best-and-tied-at-points [81] 78.1% [121] 2830(2.7%) 0(0.0%) errors /home/ztatlock/herbie/src/points.rkt:144:0 for-loop [128] 85.2% eval-prog [130] 14.8% -------------------------------------------------------------------------------- composed [116] 48.2% append-map [52] 51.8% [122] 834(0.8%) 834(0.8%) free-variables ...ock/herbie/src/programs.rkt:89:0 -------------------------------------------------------------------------------- for-loop [117] 100.0% [123] 822(0.8%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [129] 100.0% -------------------------------------------------------------------------------- map [115] 100.0% [124] 340(0.3%) 0(0.0%) ??? /home/ztatlock/herbie/src/core/reduce.rkt:52:5 for-loop [131] 100.0% -------------------------------------------------------------------------------- map [115] 100.0% [125] 202(0.2%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:221:0 make-multiplication-subnode [132] 100.0% -------------------------------------------------------------------------------- combine-mterms [118] 100.0% [126] 200(0.2%) 0(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:186:5 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- ??? [7] 0.2% for-loop [37] 0.3% for-loop [36] 0.6% for-loop [142] 0.8% first-nonzero-exp [28] 1.6% for-loop [126] 1.6% for-loop [21] 2.9% compile [83] 4.1% ??? [33] 5.3% ??? [136] 5.4% ??? [135] 7.0% localize-error [41] 7.6% ??? [133] 10.1% ??? [8] 11.9% loop [103] 13.0% for-loop [20] 13.3% for-loop [19] 14.1% [127] 12716(12.2%) 1404(1.3%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [5] 18.6% simplify [32] 13.9% ??? [6] 13.3% parse-loop12 [134] 11.9% ??? [133] 10.9% f6 [104] 8.0% ??? [135] 7.0% ??? [136] 5.4% ??? [7] 3.1% ??? [9] 0.8% ??? [10] 0.6% ??? [13] 0.3% ??? [12] 0.3% ??? [138] 0.3% -------------------------------------------------------------------------------- errors [121] 100.0% [128] 2410(2.3%) 604(0.6%) for-loop ...e/ztatlock/herbie/src/points.rkt:147:4 ??? [147] 66.6% ulp-difference [140] 8.3% -------------------------------------------------------------------------------- hash-update! [123] 100.0% [129] 822(0.8%) 0(0.0%) ??? .../ztatlock/herbie/src/core/egraph.rkt:225:24 for-loop [137] 100.0% -------------------------------------------------------------------------------- errors [121] 100.0% [130] 420(0.4%) 420(0.4%) eval-prog ...tatlock/herbie/src/programs.rkt:162:0 -------------------------------------------------------------------------------- ??? [124] 100.0% [131] 340(0.3%) 340(0.3%) for-loop ...atlock/herbie/src/core/reduce.rkt:53:7 -------------------------------------------------------------------------------- make-multiplication-node [125] 100.0% [132] 202(0.2%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:231:0 for-loop [139] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [133] 8210(7.9%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:42:15 hash-ref! [127] 97.5% ??? [33] 2.5% -------------------------------------------------------------------------------- f6 [104] 1.4% loop [141] 3.6% for-loop [24] 4.7% parse-loop12 [134] 10.8% map [115] 17.2% hash-ref! [127] 28.4% simplify [32] 33.9% [134] 7282(7.0%) 4008(3.9%) parse-loop12 ...s/racket/match/compiler.rkt:410:15 loop [141] 32.0% parse-loop12 [134] 10.8% f6 [104] 9.0% for-loop [142] 4.7% parse-app [144] 2.8% simplify-node [143] 1.4% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [135] 5618(5.4%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:63:15 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [136] 1002(1.0%) 0(0.0%) ??? /home/ztatlock/herbie/src/programs.rkt:197:5 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- ??? [129] 100.0% [137] 822(0.8%) 822(0.8%) for-loop ...lock/herbie/src/core/egraph.rkt:226:26 -------------------------------------------------------------------------------- hash-ref! [127] 100.0% [138] 202(0.2%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:425:23 partition-list [145] 100.0% -------------------------------------------------------------------------------- make-multiplication-subnode [132] 100.0% [139] 202(0.2%) 0(0.0%) for-loop ...tlock/herbie/src/core/reduce.rkt:233:3 make-multiplication-subsubsubnode [146]100.0% -------------------------------------------------------------------------------- for-loop [128] 100.0% [140] 200(0.2%) 0(0.0%) ulp-difference ...atlock/herbie/src/float.rkt:19:0 ??? [163] 100.0% -------------------------------------------------------------------------------- loop! [149] 0.1% make-exacts* [89] 0.1% map-enodes [45] 0.1% f6 [104] 0.3% extract-alt [35] 0.4% for-loop [80] 0.5% match-e [71] 0.6% parse-loop12 [134] 0.8% post-process [30] 1.3% map [115] 2.0% append-map [52] 2.1% loop [141] 91.8% [141] 77318(74.3%) 1426(1.4%) loop ...cket/collects/racket/private/map.rkt:26:19 loop [141] 91.8% taylor-alt [61] 2.1% ??? [147] 2.1% completely-simplify-alt [4] 1.2% parse-loop12 [134] 0.6% simplify [3] 0.4% simplify [32] 0.3% ??? [8] 0.1% for-loop [148] 0.1% localize-error [41] 0.1% loop! [149] 0.1% ??? [172] 0.0% ...higher-order.rkt:373:33 [165] 0.0% ??? [163] 0.0% foldl [151] 0.0% bf* [169] 0.0% -------------------------------------------------------------------------------- parse-loop12 [134] 100.0% [142] 824(0.8%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:490:59 hash-ref! [127] 100.0% -------------------------------------------------------------------------------- map [115] 32.9% parse-loop12 [134] 33.6% simplify [32] 33.6% [143] 602(0.6%) 0(0.0%) simplify-node ...k/herbie/src/core/reduce.rkt:41:0 append-map [52] 33.6% f6 [104] 33.6% constant? [152] 32.9% -------------------------------------------------------------------------------- parse-loop12 [134] 48.8% f6 [104] 51.2% [144] 414(0.4%) 202(0.2%) parse-app .../collects/racket/private/kw.rkt:903:2 loop [150] 51.2% -------------------------------------------------------------------------------- ??? [138] 100.0% [145] 202(0.2%) 202(0.2%) partition-list ...herbie/src/core/taylor.rkt:376:0 -------------------------------------------------------------------------------- for-loop [139] 100.0% [146] 202(0.2%) 202(0.2%) make-multiplication-subsubsubnode ...uce.rkt:253:0 -------------------------------------------------------------------------------- map [115] 0.4% for-loop [128] 2.7% loop [141] 96.9% [147] 59486(57.1%) 674(0.6%) ??? /home/ztatlock/herbie/src/programs.rkt:168:4 ??? [153] 95.9% real->bigfloat [155] 1.9% ??? [175] 0.4% ->flonum [161] 0.3% -------------------------------------------------------------------------------- map-enodes [45] 24.9% loop [141] 75.1% [148] 1606(1.5%) 0(0.0%) for-loop ...ock/herbie/src/core/simplify.rkt:161:2 setfindf [154] 75.0% eval-const-expr [160] 12.6% compose [157] 12.5% -------------------------------------------------------------------------------- loop [141] 33.2% apply-match [62] 33.2% for-loop [75] 33.6% [149] 602(0.6%) 198(0.2%) loop! .../ztatlock/herbie/src/core/enode.rkt:163:2 custom-set-union [156] 33.6% loop [141] 33.2% set [159] 16.8% -------------------------------------------------------------------------------- parse-app [144] 100.0% [150] 212(0.2%) 212(0.2%) loop .../collects/racket/private/stxcase.rkt:112:7 -------------------------------------------------------------------------------- loop [141] 100.0% [151] 202(0.2%) 0(0.0%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [158] 100.0% -------------------------------------------------------------------------------- simplify-node [143] 100.0% [152] 198(0.2%) 198(0.2%) constant? ...ck/herbie/src/syntax/syntax.rkt:221:0 -------------------------------------------------------------------------------- ??? [147] 100.0% [153] 57076(54.8%) 1408(1.4%) ??? ...acket/collects/racket/private/kw.rkt:400:14 ??? [172] 83.2% bf* [169] 6.8% bffma [162] 2.7% ...ow-val-first.rkt:357:18 [170] 2.0% bfcube [164] 1.7% ...higher-order.rkt:373:33 [165] 0.8% ??? [163] 0.3% -------------------------------------------------------------------------------- for-loop [148] 100.0% [154] 1204(1.2%) 1002(1.0%) setfindf ...e/ztatlock/herbie/src/common.rkt:173:0 for-loop [167] 16.8% -------------------------------------------------------------------------------- ??? [147] 100.0% [155] 1118(1.1%) 1118(1.1%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 -------------------------------------------------------------------------------- loop! [149] 33.3% adopt-enode! [107] 66.7% [156] 606(0.6%) 202(0.2%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [168] 33.3% for-loop [166] 33.3% -------------------------------------------------------------------------------- for-loop [148] 49.8% f6 [104] 50.2% [157] 402(0.4%) 402(0.4%) compose ...collects/racket/private/list.rkt:385:12 -------------------------------------------------------------------------------- foldl [151] 100.0% [158] 202(0.2%) 202(0.2%) merge2 ...ztatlock/herbie/src/core/ematch.rkt:31:0 -------------------------------------------------------------------------------- loop! [149] 100.0% [159] 202(0.2%) 202(0.2%) set ...collects/racket/private/set-types.rkt:982:0 -------------------------------------------------------------------------------- for-loop [148] 100.0% [160] 202(0.2%) 0(0.0%) eval-const-expr ...k/herbie/src/programs.rkt:180:0 ??? [172] 100.0% -------------------------------------------------------------------------------- ??? [147] 100.0% [161] 200(0.2%) 0(0.0%) ->flonum ...ock/herbie/src/syntax/syntax.rkt:224:0 ??? [163] 100.0% -------------------------------------------------------------------------------- ??? [153] 100.0% [162] 1532(1.5%) 0(0.0%) bffma ...atlock/herbie/src/syntax/syntax.rkt:122:0 bf* [169] 84.2% ...ow-val-first.rkt:357:18 [170] 15.8% -------------------------------------------------------------------------------- ??? [153] 19.8% ulp-difference [140] 20.0% ->flonum [161] 20.0% ormap [112] 20.2% loop [141] 20.2% [163] 1002(1.0%) 1002(1.0%) ??? /home/ztatlock/herbie/src/config.rkt:29:0 -------------------------------------------------------------------------------- ??? [153] 100.0% [164] 954(0.9%) 0(0.0%) bfcube ...tlock/herbie/src/syntax/syntax.rkt:119:0 bf* [169] 54.1% ...ow-val-first.rkt:357:18 [170] 45.9% -------------------------------------------------------------------------------- loop [141] 29.4% ??? [153] 70.6% [165] 680(0.7%) 0(0.0%) ...higher-order.rkt:373:33 (unknown source) ??? [175] 70.6% ??? [173] 29.4% -------------------------------------------------------------------------------- custom-set-union [156] 100.0% [166] 202(0.2%) 202(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 -------------------------------------------------------------------------------- setfindf [154] 100.0% [167] 202(0.2%) 202(0.2%) for-loop ...e/ztatlock/herbie/src/common.rkt:174:2 -------------------------------------------------------------------------------- custom-set-union [156] 100.0% [168] 202(0.2%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [171] 100.0% -------------------------------------------------------------------------------- loop [141] 3.7% bfcube [164] 8.8% bffma [162] 21.9% ??? [153] 65.7% [169] 5896(5.7%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [172] 100.0% -------------------------------------------------------------------------------- bffma [162] 13.1% bfcube [164] 23.7% ??? [153] 63.2% [170] 1848(1.8%) 236(0.2%) ...ow-val-first.rkt:357:18 (unknown source) ??? [173] 87.2% -------------------------------------------------------------------------------- for-loop [168] 100.0% [171] 202(0.2%) 202(0.2%) for-loop ...cts/racket/private/set-types.rkt:178:5 -------------------------------------------------------------------------------- eval-const-expr [160] 0.4% map [115] 0.4% loop [141] 2.6% bf* [169] 10.7% ??? [153] 86.0% [172] 55204(53.0%) 46282(44.5%) ??? ...-racket/utils/simple-result-arrow.rkt:26:12 bfmul [174] 10.9% ??? [176] 3.8% -------------------------------------------------------------------------------- ...higher-order.rkt:373:33 [165] 11.0% ...ow-val-first.rkt:357:18 [170] 89.0% [173] 1812(1.7%) 232(0.2%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [175] 87.2% -------------------------------------------------------------------------------- ??? [172] 100.0% [174] 5994(5.8%) 4802(4.6%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [177] 19.9% -------------------------------------------------------------------------------- ??? [147] 9.6% ...higher-order.rkt:373:33 [165] 21.1% ??? [173] 69.3% [175] 2280(2.2%) 0(0.0%) ??? ...ects/racket/contract/private/guts.rkt:638:8 ??? [176] 100.0% -------------------------------------------------------------------------------- ??? [172] 47.6% ??? [175] 52.4% [176] 4354(4.2%) 1340(1.3%) ??? ...tract/private/arrow-higher-order.rkt:373:33 ??? [178] 69.2% -------------------------------------------------------------------------------- bfmul [174] 100.0% [177] 1192(1.1%) 1192(1.1%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -------------------------------------------------------------------------------- ??? [176] 100.0% [178] 3014(2.9%) 1652(1.6%) ??? ...llects/racket/contract/combinator.rkt:178:4 any-wrap/traverse [179] 45.2% -------------------------------------------------------------------------------- ??? [178] 100.0% [179] 1362(1.3%) 1362(1.3%) any-wrap/traverse ...cket/utils/any-wrap.rkt:106:2 --------------------------------------------------------------------------------