Profiling results ----------------- Total cpu time observed: 20842ms (out of 21320ms) Number of samples taken: 90 (once every 232ms) (Hiding functions with self<1.0% and local<2.0%: 1 of 101 hidden) ==================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ==================================================================== ??? [18] 100.0% [1] 19760(94.8%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [10] 100.0% -------------------------------------------------------------------- simplify-alt [33] 4.2% ??? [18] 95.8% [2] 4710(22.6%) 0(0.0%) simplify ...lock/herbie/src/core/simplify.rkt:39:0 iterate-egraph!5 [19] 59.1% for-loop [12] 27.7% simplify-expr [13] 13.2% -------------------------------------------------------------------- ??? [97] 39.8% copying-mergesort [100] 60.2% [3] 1166(5.6%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [11] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [4] 670(3.2%) 0(0.0%) ??? /home/ztatlock/herbie/src/programs.rkt:294:5 loop [51] 100.0% -------------------------------------------------------------------- copying-mergesort [100] 100.0% [5] 464(2.2%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [11] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [6] 442(2.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:295:23 for-loop [15] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [7] 442(2.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:392:23 for-loop [14] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [8] 220(1.1%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:483:23 for-loop [16] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [9] 202(1.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:285:26 for-loop [17] 100.0% -------------------------------------------------------------------- profile-thunk16 [1] 95.8% [10] 20622(98.9%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [18] 100.0% -------------------------------------------------------------------- jloop [5] 28.5% loop [3] 71.5% [11] 1630(7.8%) 0(0.0%) ??? /home/ztatlock/herbie/src/points.rkt:49:27 eval-prog [73] 100.0% -------------------------------------------------------------------- simplify [2] 100.0% [12] 1304(6.3%) 0(0.0%) for-loop ...ock/herbie/src/core/simplify.rkt:61:12 iterate-egraph!5 [19] 100.0% -------------------------------------------------------------------- simplify [2] 100.0% [13] 622(3.0%) 0(0.0%) simplify-expr ...herbie/src/core/simplify.rkt:68:0 iterate-egraph!5 [19] 100.0% -------------------------------------------------------------------- ??? [7] 100.0% [14] 442(2.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:396:33 for-loop [20] 100.0% -------------------------------------------------------------------- ??? [6] 100.0% [15] 442(2.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:298:27 hash-ref! [78] 100.0% -------------------------------------------------------------------- ??? [8] 100.0% [16] 220(1.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:487:35 parse-loop25 [60] 100.0% -------------------------------------------------------------------- ??? [9] 100.0% [17] 202(1.0%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:285:52 hash-ref! [78] 100.0% -------------------------------------------------------------------- for-loop [44] 7.2% run [10] 47.9% [18] 20842(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 43.8% loop [23] 27.5% run-improve58 [21] 21.5% simplify [2] 7.2% -------------------------------------------------------------------- simplify-expr [13] 13.2% for-loop [12] 27.7% simplify [2] 59.1% [19] 4710(22.6%) 0(0.0%) iterate-egraph!5 ...bie/src/core/simplify.rkt:95:0 one-iter [22] 100.0% -------------------------------------------------------------------- for-loop [14] 100.0% [20] 442(2.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:398:39 hash-ref! [78] 100.0% -------------------------------------------------------------------- ??? [18] 100.0% [21] 9830(47.2%) 0(0.0%) run-improve58 ...ock/herbie/src/mainloop.rkt:244:0 for-loop [24] 74.5% get-final-combination [26] 18.8% loop [23] 4.6% setup-prog [28] 2.0% -------------------------------------------------------------------- iterate-egraph!5 [19] 100.0% [22] 4710(22.6%) 1090(5.2%) one-iter ...ock/herbie/src/core/simplify.rkt:106:0 for-loop [25] 58.6% loop [27] 18.3% -------------------------------------------------------------------- run-improve58 [21] 3.9% ??? [18] 96.1% [23] 11464(55.0%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:119:2 make-exacts* [34] 55.5% loop [30] 42.7% loop [36] 1.7% -------------------------------------------------------------------- run-improve58 [21] 100.0% [24] 7326(35.2%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:255:8 run-iter! [29] 100.0% -------------------------------------------------------------------- for-loop [25] 46.4% one-iter [22] 53.6% [25] 2758(13.2%) 842(4.0%) for-loop ...ck/herbie/src/core/simplify.rkt:116:12 for-loop [25] 46.4% match-e [37] 34.7% -------------------------------------------------------------------- run-improve58 [21] 100.0% [26] 1852(8.9%) 0(0.0%) get-final-combination ...ie/src/mainloop.rkt:271:0 split-table [31] 100.0% -------------------------------------------------------------------- one-iter [22] 100.0% [27] 862(4.1%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [32] 100.0% -------------------------------------------------------------------- run-improve58 [21] 100.0% [28] 200(1.0%) 0(0.0%) setup-prog /home/ztatlock/herbie/src/glue.rkt:46:0 simplify-alt [33] 100.0% -------------------------------------------------------------------- for-loop [24] 100.0% [29] 7326(35.2%) 0(0.0%) run-iter! ...tatlock/herbie/src/mainloop.rkt:225:0 simplify! [35] 61.6% gen-series! [38] 20.3% finalize-iter! [39] 14.8% localize-error [41] 3.3% -------------------------------------------------------------------- loop [23] 100.0% [30] 4898(23.5%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:90:2 loop [36] 60.1% make-exacts* [34] 30.7% eval-prog [73] 9.2% -------------------------------------------------------------------- get-final-combination [26] 100.0% [31] 1852(8.9%) 0(0.0%) split-table .../ztatlock/herbie/src/glue.rkt:171:0 f37 [86] 100.0% -------------------------------------------------------------------- loop [27] 100.0% [32] 862(4.1%) 0(0.0%) apply-match .../herbie/src/core/simplify.rkt:122:2 merge-egraph-nodes! [40] 48.0% match-e [37] 26.5% substitute-e [42] 25.5% -------------------------------------------------------------------- setup-prog [28] 100.0% [33] 200(1.0%) 0(0.0%) simplify-alt .../ztatlock/herbie/src/glue.rkt:84:0 simplify [2] 100.0% -------------------------------------------------------------------- loop [30] 19.1% loop [23] 80.9% [34] 7868(37.8%) 0(0.0%) make-exacts* ...tatlock/herbie/src/points.rkt:77:0 loop [51] 56.2% map [43] 39.2% eval-prog [73] 4.7% -------------------------------------------------------------------- run-iter! [29] 100.0% [35] 4510(21.6%) 0(0.0%) simplify! ...tatlock/herbie/src/mainloop.rkt:164:0 for-loop [44] 100.0% -------------------------------------------------------------------- loop [23] 6.4% loop [30] 93.6% [36] 3144(15.1%) 0(0.0%) loop /home/ztatlock/herbie/src/points.rkt:80:4 map [43] 100.0% -------------------------------------------------------------------- apply-match [32] 5.3% for-loop [54] 15.1% for-loop [25] 79.6% [37] 2144(10.3%) 1092(5.2%) match-e ...tatlock/herbie/src/core/ematch.rkt:46:0 for-loop [47] 35.4% list-cartesian-product [55] 9.3% for-loop [54] 4.7% custom-in-set [50] 4.7% -------------------------------------------------------------------- run-iter! [29] 100.0% [38] 1490(7.1%) 0(0.0%) gen-series! ...tlock/herbie/src/mainloop.rkt:136:0 for-loop [45] 100.0% -------------------------------------------------------------------- run-iter! [29] 100.0% [39] 1086(5.2%) 0(0.0%) finalize-iter! ...ck/herbie/src/mainloop.rkt:179:0 ??? [46] 100.0% -------------------------------------------------------------------- apply-match [32] 100.0% [40] 414(2.0%) 0(0.0%) merge-egraph-nodes! ...e/src/core/egraph.rkt:152:0 enode-merge! [49] 51.2% loop! [62] 48.8% -------------------------------------------------------------------- run-iter! [29] 100.0% [41] 240(1.2%) 0(0.0%) localize-error ...erbie/src/core/localize.rkt:47:0 hash-ref! [78] 100.0% -------------------------------------------------------------------- apply-match [32] 100.0% [42] 220(1.1%) 0(0.0%) substitute-e ...ck/herbie/src/core/ematch.rkt:71:0 mk-enode! [48] 100.0% -------------------------------------------------------------------- f37 [86] 19.7% make-exacts* [34] 39.7% loop [36] 40.5% [43] 7754(37.2%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [51] 76.2% f37 [86] 10.0% parse-loop25 [60] 6.6% ??? [58] 5.6% ??? [56] 1.5% -------------------------------------------------------------------- simplify! [35] 100.0% [44] 4510(21.6%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:168:6 ??? [18] 100.0% -------------------------------------------------------------------- gen-series! [38] 100.0% [45] 1490(7.1%) 0(0.0%) for-loop ...ztatlock/herbie/src/mainloop.rkt:142:7 taylor-alt [52] 100.0% -------------------------------------------------------------------- finalize-iter! [39] 100.0% [46] 1086(5.2%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [53] 100.0% -------------------------------------------------------------------- match-e [37] 100.0% [47] 868(4.2%) 428(2.1%) for-loop ...tlock/herbie/src/core/ematch.rkt:59:11 for-loop [54] 38.2% list-cartesian-product [55] 25.6% -------------------------------------------------------------------- substitute-e [42] 100.0% [48] 220(1.1%) 220(1.1%) mk-enode! ...lock/herbie/src/core/egraph.rkt:101:0 -------------------------------------------------------------------- merge-egraph-nodes! [40] 100.0% [49] 212(1.0%) 0(0.0%) enode-merge! ...ck/herbie/src/core/enode.rkt:100:0 custom-set-intersect! [57] 100.0% -------------------------------------------------------------------- match-e [37] 100.0% [50] 202(1.0%) 202(1.0%) custom-in-set ...acket/private/set-types.rkt:577:0 -------------------------------------------------------------------- loop! [62] 0.2% parse-loop25 [60] 1.9% make-exacts* [34] 2.0% map [43] 2.8% ??? [4] 5.8% loop [51] 87.2% [51] 11540(55.4%) 240(1.2%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [51] 87.2% hash-ref! [78] 5.8% ??? [58] 2.8% parse-loop25 [60] 1.9% loop! [62] 0.2% -------------------------------------------------------------------- for-loop [45] 100.0% [52] 1490(7.1%) 0(0.0%) taylor-alt ...e/ztatlock/herbie/src/glue.rkt:142:0 for-loop [59] 100.0% -------------------------------------------------------------------- ??? [46] 100.0% [53] 1086(5.2%) 0(0.0%) for-loop ...ock/herbie/src/core/alt-table.rkt:51:2 atab-add-altn [61] 100.0% -------------------------------------------------------------------- match-e [37] 31.2% for-loop [47] 68.8% [54] 648(3.1%) 0(0.0%) for-loop ...tlock/herbie/src/core/ematch.rkt:65:37 match-e [37] 100.0% -------------------------------------------------------------------- list-cartesian-product [55] 26.3% for-loop [47] 26.3% match-e [37] 47.4% [55] 422(2.0%) 422(2.0%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [55] 26.3% -------------------------------------------------------------------- map [43] 100.0% [56] 240(1.2%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [78] 100.0% -------------------------------------------------------------------- enode-merge! [49] 100.0% [57] 212(1.0%) 212(1.0%) custom-set-intersect! ...ivate/set-types.rkt:269:0 -------------------------------------------------------------------- map [43] 4.1% loop [51] 95.9% [58] 10646(51.1%) 0(0.0%) ??? /home/ztatlock/herbie/src/programs.rkt:265:4 ??? [63] 80.0% ??? [64] 20.0% -------------------------------------------------------------------- taylor-alt [52] 100.0% [59] 1490(7.1%) 0(0.0%) for-loop /home/ztatlock/herbie/src/glue.rkt:144:2 location-do [65] 100.0% -------------------------------------------------------------------- simplify [82] 3.1% loop [51] 10.1% parse-loop25 [60] 19.2% for-loop [16] 20.3% map [43] 47.3% [60] 1086(5.2%) 442(2.1%) parse-loop25 ...s/racket/match/compiler.rkt:418:15 f37 [86] 33.5% for-loop [67] 20.3% parse-loop25 [60] 19.2% loop [51] 10.1% -------------------------------------------------------------------- for-loop [53] 100.0% [61] 1086(5.2%) 0(0.0%) atab-add-altn ...rbie/src/core/alt-table.rkt:208:0 best-and-tied-at-points [66]100.0% -------------------------------------------------------------------- loop [51] 50.0% merge-egraph-nodes! [40] 50.0% [62] 202(1.0%) 0(0.0%) loop! .../ztatlock/herbie/src/core/enode.rkt:163:2 loop [51] 50.0% update-en-expr [68] 50.0% -------------------------------------------------------------------- ??? [58] 100.0% [63] 8522(40.9%) 0(0.0%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [69] 100.0% -------------------------------------------------------------------- ??? [58] 100.0% [64] 2124(10.2%) 240(1.2%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [70] 88.7% -------------------------------------------------------------------- location-do [65] 14.8% for-loop [59] 85.2% [65] 1490(7.1%) 0(0.0%) location-do ...tlock/herbie/src/programs.rkt:226:0 approximate9 [71] 85.2% location-do [65] 14.8% -------------------------------------------------------------------- atab-add-altn [61] 100.0% [66] 1086(5.2%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [72] 100.0% -------------------------------------------------------------------- parse-loop25 [60] 100.0% [67] 220(1.1%) 0(0.0%) for-loop ...lock/herbie/src/core/taylor.rkt:490:59 hash-ref! [78] 100.0% -------------------------------------------------------------------- loop! [62] 100.0% [68] 202(1.0%) 202(1.0%) update-en-expr ...herbie/src/core/egraph.rkt:211:0 -------------------------------------------------------------------- ??? [63] 100.0% [69] 8522(40.9%) 6402(30.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfsqrt [74] 22.3% bfadd [77] 2.6% -------------------------------------------------------------------- ??? [64] 100.0% [70] 1884(9.0%) 1446(6.9%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [79] 23.2% -------------------------------------------------------------------- location-do [65] 100.0% [71] 1490(7.1%) 0(0.0%) approximate9 ...ck/herbie/src/core/taylor.rkt:12:0 loop [75] 86.4% f37 [86] 13.6% -------------------------------------------------------------------- best-and-tied-at-points [66]100.0% [72] 1086(5.2%) 0(0.0%) errors /home/ztatlock/herbie/src/points.rkt:142:0 eval-prog [73] 62.8% for-loop [76] 37.2% -------------------------------------------------------------------- make-exacts* [34] 11.7% loop [30] 14.4% errors [72] 21.8% ??? [11] 52.1% [73] 3130(15.0%) 1832(8.8%) eval-prog ...tatlock/herbie/src/programs.rkt:259:0 hash-ref! [78] 26.1% ??? [80] 15.3% -------------------------------------------------------------------- ??? [69] 100.0% [74] 1900(9.1%) 1660(8.0%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [79] 12.6% -------------------------------------------------------------------- approximate9 [71] 100.0% [75] 1288(6.2%) 0(0.0%) loop ...e/ztatlock/herbie/src/core/taylor.rkt:83:4 hash-ref! [78] 100.0% -------------------------------------------------------------------- errors [72] 100.0% [76] 404(1.9%) 404(1.9%) for-loop ...e/ztatlock/herbie/src/points.rkt:145:4 -------------------------------------------------------------------- ??? [69] 100.0% [77] 220(1.1%) 220(1.1%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:819:4 -------------------------------------------------------------------- for-loop [67] 1.6% for-loop [17] 1.7% ??? [85] 3.3% for-loop [15] 3.9% for-loop [20] 3.9% ??? [56] 5.1% localize-error [41] 5.1% loop [51] 16.6% eval-prog [73] 18.3% ??? [81] 19.4% loop [75] 19.4% [78] 2346(11.3%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [81] 19.4% simplify [82] 19.4% bigfloat-hash [83] 18.3% ??? [4] 16.6% f37 [86] 10.2% ??? [7] 3.9% ??? [6] 3.9% ??? [85] 3.3% ??? [9] 1.7% ??? [8] 1.6% -------------------------------------------------------------------- bfsqrt [74] 35.4% real->bigfloat [70] 64.6% [79] 678(3.3%) 678(3.3%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -------------------------------------------------------------------- eval-prog [73] 100.0% [80] 480(2.3%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [84] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [81] 1288(6.2%) 0(0.0%) ??? ...e/ztatlock/herbie/src/core/taylor.rkt:43:15 hash-ref! [78] 100.0% -------------------------------------------------------------------- hash-ref! [78] 100.0% [82] 1288(6.2%) 0(0.0%) simplify ...atlock/herbie/src/core/reduce.rkt:15:0 f37 [86] 84.3% parse-loop25 [60] 15.7% -------------------------------------------------------------------- hash-ref! [78] 100.0% [83] 818(3.9%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [87] 55.5% bfcanonicalize [88] 44.5% -------------------------------------------------------------------- ??? [80] 100.0% [84] 480(2.3%) 480(2.3%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 -------------------------------------------------------------------- hash-ref! [78] 100.0% [85] 422(2.0%) 0(0.0%) ??? .../ztatlock/herbie/src/core/taylor.rkt:357:30 hash-ref! [78] 100.0% -------------------------------------------------------------------- approximate9 [71] 0.9% composed [90] 2.0% append-map [91] 3.2% f37 [86] 3.8% parse-loop25 [60] 6.6% hash-ref! [78] 6.7% map [43] 9.2% simplify [82] 15.9% split-table [31] 51.7% [86] 3582(17.2%) 422(2.0%) f37 ...t/collects/racket/match/compiler.rkt:507:40 option-on-expr [89] 45.5% map [43] 28.8% composed [90] 7.6% exprs-to-branch-on [92] 6.2% append-map [91] 4.0% f37 [86] 3.8% taylor [93] 0.9% -------------------------------------------------------------------- bigfloat-hash [83] 100.0% [87] 454(2.2%) 454(2.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 -------------------------------------------------------------------- bigfloat-hash [83] 100.0% [88] 364(1.7%) 364(1.7%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 -------------------------------------------------------------------- f37 [86] 100.0% [89] 1630(7.8%) 0(0.0%) option-on-expr ...erbie/src/core/regimes.rkt:110:0 sort-context-on-expr [94] 100.0% -------------------------------------------------------------------- f37 [86] 100.0% [90] 644(3.1%) 202(1.0%) composed ...ollects/racket/private/list.rkt:321:16 f37 [86] 68.6% -------------------------------------------------------------------- f37 [86] 100.0% [91] 442(2.1%) 222(1.1%) append-map ...acket/collects/racket/list.rkt:565:2 f37 [86] 74.9% -------------------------------------------------------------------- f37 [86] 100.0% [92] 222(1.1%) 0(0.0%) exprs-to-branch-on ...ie/src/core/regimes.rkt:45:0 critical-subexpression [95] 100.0% -------------------------------------------------------------------- f37 [86] 100.0% [93] 202(1.0%) 0(0.0%) taylor ...tatlock/herbie/src/core/taylor.rkt:161:0 debug7 [96] 100.0% -------------------------------------------------------------------- option-on-expr [89] 100.0% [94] 1630(7.8%) 0(0.0%) sort-context-on-expr ...herbie/src/points.rkt:47:0 ??? [97] 100.0% -------------------------------------------------------------------- exprs-to-branch-on [92] 100.0% [95] 222(1.1%) 0(0.0%) critical-subexpression ...rc/core/regimes.rkt:53:0 get-vars [98] 100.0% -------------------------------------------------------------------- taylor [93] 100.0% [96] 202(1.0%) 202(1.0%) debug7 /home/ztatlock/herbie/src/debug.rkt:102:0 -------------------------------------------------------------------- sort-context-on-expr [94] 100.0% [97] 1630(7.8%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [99] 71.5% loop [3] 28.5% -------------------------------------------------------------------- critical-subexpression [95] 100.0% [98] 222(1.1%) 222(1.1%) get-vars ...lock/herbie/src/core/regimes.rkt:63:11 -------------------------------------------------------------------- ??? [97] 100.0% [99] 1166(5.6%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [100] 100.0% -------------------------------------------------------------------- generic-sort/key [99] 33.2% copying-mergesort [100] 66.8% [100] 1166(5.6%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [100] 66.8% loop [3] 23.2% jloop [5] 9.9% --------------------------------------------------------------------