Profiling results ----------------- Total cpu time observed: 35786ms (out of 36088ms) Number of samples taken: 123 (once every 291ms) (Hiding functions with self<1.0% and local<2.0%: 3 of 108 hidden) ================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================== ??? [5] 100.0% [1] 35786(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [2] 536(1.5%) 0(0.0%) errors ...es/herbie/js-tweaks/src/points.rkt:223:0 for-loop [4] 100.0% ------------------------------------------------------------------ profile-thunk16 [1] 100.0% [3] 35786(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% ------------------------------------------------------------------ errors [2] 100.0% [4] 536(1.5%) 0(0.0%) for-loop .../herbie/js-tweaks/src/points.rkt:225:2 ??? [5] 100.0% ------------------------------------------------------------------ for-loop [4] 0.5% run [3] 49.8% [5] 35786(100.0%) 268(0.7%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.8% run-improve43 [6] 44.8% prepare-points [7] 3.0% eval-errors [8] 0.8% errors [2] 0.5% oracle-error [9] 0.4% errors-score [10] 0.4% ulp-difference [18] 0.2% ------------------------------------------------------------------ ??? [5] 100.0% [6] 32034(89.5%) 0(0.0%) run-improve43 .../js-tweaks/src/mainloop.rkt:339:0 simplify! [22] 73.4% for-loop [11] 26.6% ------------------------------------------------------------------ ??? [5] 100.0% [7] 2118(5.9%) 0(0.0%) prepare-points ...e/js-tweaks/src/points.rkt:166:0 loop [12] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [8] 554(1.5%) 0(0.0%) eval-errors ...rbie/js-tweaks/src/points.rkt:198:0 for-loop [13] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [9] 276(0.8%) 0(0.0%) oracle-error ...bie/js-tweaks/src/points.rkt:207:0 for-loop [14] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [10] 268(0.7%) 0(0.0%) errors-score ...bie/js-tweaks/src/points.rkt:215:0 loop [15] 100.0% ------------------------------------------------------------------ run-improve43 [6] 100.0% [11] 8512(23.8%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:354:4 run-iter! [16] 100.0% ------------------------------------------------------------------ prepare-points [7] 100.0% [12] 2118(5.9%) 0(0.0%) loop ...lies/herbie/js-tweaks/src/points.rkt:143:4 loop [17] 74.0% ??? [19] 13.2% ordinary-value? [21] 12.7% ------------------------------------------------------------------ eval-errors [8] 100.0% [13] 554(1.5%) 278(0.8%) for-loop .../herbie/js-tweaks/src/points.rkt:200:2 ulp-difference [18] 49.8% ------------------------------------------------------------------ oracle-error [9] 100.0% [14] 276(0.8%) 0(0.0%) for-loop .../herbie/js-tweaks/src/points.rkt:208:2 ??? [20] 100.0% ------------------------------------------------------------------ errors-score [10] 100.0% [15] 268(0.7%) 268(0.7%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ------------------------------------------------------------------ for-loop [11] 100.0% [16] 8512(23.8%) 0(0.0%) run-iter! ...rbie/js-tweaks/src/mainloop.rkt:320:0 simplify! [22] 94.2% finalize-iter! [26] 2.9% gen-series! [27] 2.9% ------------------------------------------------------------------ loop [12] 100.0% [17] 1568(4.4%) 242(0.7%) loop ...lies/herbie/js-tweaks/src/points.rkt:102:2 ??? [23] 68.2% hash-update! [93] 16.3% ------------------------------------------------------------------ ??? [5] 49.3% for-loop [13] 50.7% [18] 544(1.5%) 0(0.0%) ulp-difference ...bie/js-tweaks/src/float.rkt:46:0 infer-representation [24]100.0% ------------------------------------------------------------------ loop [12] 100.0% [19] 280(0.8%) 280(0.8%) ??? ...tlies/herbie/js-tweaks/src/points.rkt:127:2 ------------------------------------------------------------------ for-loop [14] 100.0% [20] 276(0.8%) 276(0.8%) ??? ...7.0/collects/racket/private/for.rkt:1208:14 ------------------------------------------------------------------ loop [12] 100.0% [21] 270(0.8%) 0(0.0%) ordinary-value? ...ie/js-tweaks/src/float.rkt:80:0 special-value? [25] 100.0% ------------------------------------------------------------------ run-iter! [16] 25.4% run-improve43 [6] 74.6% [22] 31538(88.1%) 0(0.0%) simplify! ...rbie/js-tweaks/src/mainloop.rkt:217:0 ??? [28] 100.0% ------------------------------------------------------------------ loop [17] 100.0% [23] 1070(3.0%) 0(0.0%) ??? ...lies/herbie/js-tweaks/src/programs.rkt:99:2 ??? [29] 51.2% ??? [44] 48.8% ------------------------------------------------------------------ ulp-difference [18] 100.0% [24] 544(1.5%) 268(0.7%) infer-representation ...-tweaks/src/float.rkt:15:0 return/no-unsupplied [34] 50.7% ------------------------------------------------------------------ ordinary-value? [21] 100.0% [25] 270(0.8%) 0(0.0%) special-value? ...bie/js-tweaks/src/float.rkt:76:0 for-loop [30] 100.0% ------------------------------------------------------------------ run-iter! [16] 100.0% [26] 248(0.7%) 0(0.0%) finalize-iter! ...js-tweaks/src/mainloop.rkt:271:0 ??? [79] 100.0% ------------------------------------------------------------------ run-iter! [16] 100.0% [27] 248(0.7%) 0(0.0%) gen-series! ...ie/js-tweaks/src/mainloop.rkt:153:0 for-loop [31] 100.0% ------------------------------------------------------------------ simplify! [22] 100.0% [28] 31538(88.1%) 0(0.0%) ??? ...herbie/js-tweaks/src/core/simplify.rkt:26:0 for-loop [32] 91.3% loop [33] 7.1% one-iter [36] 1.6% ------------------------------------------------------------------ ??? [23] 100.0% [29] 548(1.5%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [69] 100.0% ------------------------------------------------------------------ special-value? [25] 100.0% [30] 270(0.8%) 0(0.0%) for-loop ...es/herbie/js-tweaks/src/float.rkt:17:3 return/no-unsupplied [34]100.0% ------------------------------------------------------------------ gen-series! [27] 100.0% [31] 248(0.7%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:160:7 taylor-alt [35] 100.0% ------------------------------------------------------------------ ??? [28] 100.0% [32] 28784(80.4%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:33:2 one-iter [36] 100.0% ------------------------------------------------------------------ ??? [28] 100.0% [33] 2240(6.3%) 0(0.0%) loop ...rbie/js-tweaks/src/core/simplify.rkt:105:2 for-loop [37] 100.0% ------------------------------------------------------------------ for-loop [30] 49.5% infer-representation [24] 50.5% [34] 546(1.5%) 270(0.8%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [38] 50.5% ------------------------------------------------------------------ for-loop [31] 100.0% [35] 248(0.7%) 0(0.0%) taylor-alt ...bie/js-tweaks/src/mainloop.rkt:139:0 for-loop [39] 100.0% ------------------------------------------------------------------ ??? [28] 1.8% for-loop [32] 98.2% [36] 29298(81.9%) 0(0.0%) one-iter ...e/js-tweaks/src/core/simplify.rkt:65:0 for-loop [40] 45.0% find-matches [41] 30.8% for-loop [42] 23.2% for-loop [47] 0.9% ------------------------------------------------------------------ loop [33] 100.0% [37] 2240(6.3%) 314(0.9%) for-loop .../js-tweaks/src/core/simplify.rkt:111:4 for-loop [43] 39.4% argmin [45] 33.9% loop [46] 12.7% ------------------------------------------------------------------ return/no-unsupplied [34]100.0% [38] 276(0.8%) 276(0.8%) filter ...0/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------ taylor-alt [35] 100.0% [39] 248(0.7%) 0(0.0%) for-loop ...erbie/js-tweaks/src/mainloop.rkt:145:6 ??? [44] 100.0% ------------------------------------------------------------------ one-iter [36] 100.0% [40] 13196(36.9%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:67:2 for-loop [48] 100.0% ------------------------------------------------------------------ one-iter [36] 100.0% [41] 9038(25.3%) 0(0.0%) find-matches ...-tweaks/src/core/simplify.rkt:55:0 for-loop [49] 100.0% ------------------------------------------------------------------ one-iter [36] 100.0% [42] 6796(19.0%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:75:2 update-leader! [66] 100.0% ------------------------------------------------------------------ for-loop [37] 100.0% [43] 882(2.5%) 318(0.9%) for-loop ...js-tweaks/src/core/simplify.rkt:115:16 for-loop [51] 63.9% ------------------------------------------------------------------ location-do [56] 16.1% for-loop [39] 16.1% ??? [23] 67.8% [44] 770(2.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 mk-ival [52] 67.8% location-do [56] 16.1% approximate9 [55] 16.1% ------------------------------------------------------------------ for-loop [37] 100.0% [45] 760(2.1%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 expression-cost [50] 65.3% for-loop [54] 34.7% ------------------------------------------------------------------ for-loop [37] 100.0% [46] 284(0.8%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [50] 100.0% ------------------------------------------------------------------ one-iter [36] 100.0% [47] 268(0.7%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:72:2 set-precompute! [53] 100.0% ------------------------------------------------------------------ for-loop [40] 100.0% [48] 13196(36.9%) 0(0.0%) for-loop ...e/js-tweaks/src/core/simplify.rkt:70:4 merge-egraph-nodes! [57] 86.2% dedup-children! [59] 9.2% substitute-e [61] 4.6% ------------------------------------------------------------------ for-loop [49] 50.0% find-matches [41] 50.0% [49] 9038(25.3%) 310(0.9%) for-loop ...e/js-tweaks/src/core/simplify.rkt:57:8 for-loop [49] 50.0% match-e [58] 46.8% ??? [88] 1.5% ------------------------------------------------------------------ loop [46] 36.4% argmin [45] 63.6% [50] 780(2.2%) 0(0.0%) expression-cost ...s-tweaks/src/programs.rkt:157:0 compile [60] 100.0% ------------------------------------------------------------------ for-loop [43] 100.0% [51] 564(1.6%) 564(1.6%) for-loop ...js-tweaks/src/core/simplify.rkt:119:23 ------------------------------------------------------------------ ??? [44] 100.0% [52] 522(1.5%) 0(0.0%) mk-ival ...rbie/js-tweaks/src/biginterval.rkt:57:0 bf [62] 100.0% ------------------------------------------------------------------ for-loop [47] 100.0% [53] 268(0.7%) 0(0.0%) set-precompute! ...eaks/src/core/simplify.rkt:79:0 for-loop [63] 100.0% ------------------------------------------------------------------ argmin [45] 100.0% [54] 264(0.7%) 0(0.0%) for-loop ...erbie/js-tweaks/src/programs.rkt:158:2 table-ref [64] 100.0% ------------------------------------------------------------------ ??? [44] 100.0% [55] 248(0.7%) 0(0.0%) approximate9 ...js-tweaks/src/core/taylor.rkt:12:0 for-loop [65] 100.0% ------------------------------------------------------------------ location-do [56] 50.0% ??? [44] 50.0% [56] 248(0.7%) 0(0.0%) location-do ...bie/js-tweaks/src/programs.rkt:64:0 location-do [56] 50.0% ??? [44] 50.0% ------------------------------------------------------------------ merge-egraph-nodes! [57] 0.7% for-loop [48] 97.4% [57] 11378(31.8%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:143:0 update-leader! [66] 90.6% loop! [71] 4.0% enode-merge! [75] 2.8% merge-egraph-nodes! [57] 0.7% ------------------------------------------------------------------ for-loop [78] 24.1% for-loop [49] 75.9% [58] 8452(23.6%) 1124(3.1%) match-e ...rbie/js-tweaks/src/core/ematch.rkt:39:0 for-loop [67] 66.8% constant? [100] 16.2% variable? [68] 4.0% ??? [79] 1.2% ------------------------------------------------------------------ for-loop [48] 100.0% [59] 1212(3.4%) 0(0.0%) dedup-children! ...tweaks/src/core/enode.rkt:195:0 loop [72] 56.9% loop [73] 43.1% ------------------------------------------------------------------ expression-cost [50] 100.0% [60] 780(2.2%) 0(0.0%) compile ...herbie/js-tweaks/src/programs.rkt:134:0 hash-ref! [70] 100.0% ------------------------------------------------------------------ for-loop [74] 29.7% for-loop [48] 70.3% [61] 606(1.7%) 0(0.0%) substitute-e ...js-tweaks/src/core/ematch.rkt:64:0 constant? [100] 40.6% for-loop [74] 29.7% variable? [68] 29.7% ------------------------------------------------------------------ mk-ival [52] 100.0% [62] 522(1.5%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [95] 52.9% ??? [76] 47.1% ------------------------------------------------------------------ set-precompute! [53] 100.0% [63] 268(0.7%) 268(0.7%) for-loop ...e/js-tweaks/src/core/simplify.rkt:81:2 ------------------------------------------------------------------ for-loop [54] 100.0% [64] 264(0.7%) 264(0.7%) table-ref .../herbie/js-tweaks/src/common.rkt:41:0 ------------------------------------------------------------------ approximate9 [55] 100.0% [65] 248(0.7%) 0(0.0%) for-loop ...bie/js-tweaks/src/core/taylor.rkt:20:9 ??? [69] 100.0% ------------------------------------------------------------------ for-loop [42] 39.7% merge-egraph-nodes! [57] 60.3% [66] 17108(47.8%) 302(0.8%) update-leader! ...tweaks/src/core/egraph.rkt:211:0 for-loop [77] 98.2% ------------------------------------------------------------------ match-e [58] 100.0% [67] 6460(18.1%) 2780(7.8%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:52:11 for-loop [78] 52.8% loop [80] 8.5% foldr [85] 2.3% ------------------------------------------------------------------ substitute-e [61] 28.6% match-e [58] 71.4% [68] 1260(3.5%) 0(0.0%) variable? ...js-tweaks/src/syntax/syntax.rkt:724:0 value? [104] 71.4% ??? [79] 28.6% ------------------------------------------------------------------ for-loop [65] 31.2% ??? [29] 68.8% [69] 796(2.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [82] 68.8% f216 [86] 31.2% ------------------------------------------------------------------ compile [60] 36.8% ??? [81] 63.2% [70] 780(2.2%) 248(0.7%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [81] 89.4% ------------------------------------------------------------------ loop [80] 16.5% merge-egraph-nodes! [57] 83.5% [71] 744(2.1%) 492(1.4%) loop! ...herbie/js-tweaks/src/core/enode.rkt:187:2 custom-set-union [89] 33.9% loop [80] 16.5% ------------------------------------------------------------------ dedup-children! [59] 0.4% loop [72] 99.6% [72] 690(1.9%) 690(1.9%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [72] 99.6% ------------------------------------------------------------------ dedup-children! [59] 24.3% loop [73] 75.7% [73] 522(1.5%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [73] 75.7% loop [83] 24.3% ------------------------------------------------------------------ substitute-e [61] 100.0% [74] 360(1.0%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:73:24 substitute-e [61] 100.0% ------------------------------------------------------------------ merge-egraph-nodes! [57] 100.0% [75] 322(0.9%) 0(0.0%) enode-merge! ...js-tweaks/src/core/enode.rkt:124:0 adopt-enode! [84] 100.0% ------------------------------------------------------------------ bf [62] 100.0% [76] 246(0.7%) 246(0.7%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ------------------------------------------------------------------ update-leader! [66] 100.0% [77] 16806(47.0%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/egraph.rkt:216:6 for-loop [87] 53.0% hash-update! [93] 47.0% ------------------------------------------------------------------ for-loop [67] 100.0% [78] 4238(11.8%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/ematch.rkt:58:37 match-e [58] 86.8% ??? [88] 13.2% ------------------------------------------------------------------ finalize-iter! [26] 27.1% match-e [58] 33.5% variable? [68] 39.4% [79] 914(2.6%) 666(1.9%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [92] 27.1% ------------------------------------------------------------------ loop! [71] 6.2% for-loop [67] 9.0% loop [80] 84.8% [80] 798(2.2%) 258(0.7%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [80] 84.8% loop! [71] 6.2% ------------------------------------------------------------------ hash-ref! [70] 100.0% [81] 780(2.2%) 532(1.5%) ??? ...ies/herbie/js-tweaks/src/programs.rkt:142:5 hash-ref! [70] 73.8% ------------------------------------------------------------------ ??? [69] 100.0% [82] 548(1.5%) 254(0.7%) ival-add ...bie/js-tweaks/src/biginterval.rkt:94:0 bfadd [91] 53.6% ------------------------------------------------------------------ loop [73] 100.0% [83] 522(1.5%) 522(1.5%) loop (unknown source) ------------------------------------------------------------------ enode-merge! [75] 100.0% [84] 322(0.9%) 0(0.0%) adopt-enode! ...js-tweaks/src/core/enode.rkt:102:0 custom-set-union [89] 100.0% ------------------------------------------------------------------ for-loop [67] 100.0% [85] 300(0.8%) 0(0.0%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [90] 100.0% ------------------------------------------------------------------ f216 [86] 50.0% ??? [69] 50.0% [86] 248(0.7%) 248(0.7%) f216 .../collects/racket/match/compiler.rkt:507:40 f216 [86] 50.0% ------------------------------------------------------------------ for-loop [77] 100.0% [87] 8910(24.9%) 0(0.0%) for-loop ...ie/js-tweaks/src/core/egraph.rkt:217:8 hash-update! [93] 100.0% ------------------------------------------------------------------ for-loop [49] 33.0% for-loop [78] 67.0% [88] 836(2.3%) 0(0.0%) ??? ...s/herbie/js-tweaks/src/core/ematch.rkt:43:5 for-loop [94] 100.0% ------------------------------------------------------------------ loop! [71] 43.9% adopt-enode! [84] 56.1% [89] 574(1.6%) 322(0.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [97] 43.9% ------------------------------------------------------------------ foldr [85] 100.0% [90] 300(0.8%) 0(0.0%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 for-loop [96] 100.0% ------------------------------------------------------------------ ival-add [82] 100.0% [91] 294(0.8%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [95] 100.0% ------------------------------------------------------------------ ??? [79] 100.0% [92] 248(0.7%) 0(0.0%) for-loop .../js-tweaks/src/core/alt-table.rkt:56:2 loop [98] 100.0% ------------------------------------------------------------------ loop [17] 1.5% for-loop [77] 46.3% for-loop [87] 52.2% [93] 17062(47.7%) 256(0.7%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [99] 98.5% ------------------------------------------------------------------ ??? [88] 100.0% [94] 836(2.3%) 276(0.8%) for-loop ...bie/js-tweaks/src/core/ematch.rkt:44:7 constant? [100] 67.0% ------------------------------------------------------------------ bf [62] 48.4% bfadd [91] 51.6% [95] 570(1.6%) 570(1.6%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------ cp-2 [90] 100.0% [96] 300(0.8%) 300(0.8%) for-loop ...ket-7.0/collects/racket/list.rkt:827:4 ------------------------------------------------------------------ custom-set-union [89] 100.0% [97] 252(0.7%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [101] 100.0% ------------------------------------------------------------------ for-loop [92] 100.0% [98] 248(0.7%) 0(0.0%) loop ...bie/js-tweaks/src/core/alt-table.rkt:176:2 loop [102] 100.0% ------------------------------------------------------------------ hash-update! [93] 100.0% [99] 16806(47.0%) 904(2.5%) ??? ...herbie/js-tweaks/src/core/egraph.rkt:219:24 for-loop [103] 94.6% ------------------------------------------------------------------ substitute-e [61] 9.9% for-loop [94] 22.5% match-e [58] 67.6% [100] 2490(7.0%) 0(0.0%) constant? ...js-tweaks/src/syntax/syntax.rkt:721:0 value? [104] 100.0% ------------------------------------------------------------------ for-loop [97] 100.0% [101] 252(0.7%) 252(0.7%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------ loop [98] 100.0% [102] 248(0.7%) 248(0.7%) loop ...racket-7.0/collects/racket/list.rkt:434:28 ------------------------------------------------------------------ ??? [99] 100.0% [103] 15902(44.4%) 13664(38.2%) for-loop ...e/js-tweaks/src/core/egraph.rkt:220:26 update-en-expr [105] 14.1% ------------------------------------------------------------------ variable? [68] 26.5% constant? [100] 73.5% [104] 3390(9.5%) 3390(9.5%) value? ...rbie/js-tweaks/src/syntax/types.rkt:18:0 ------------------------------------------------------------------ for-loop [103] 100.0% [105] 2238(6.3%) 2238(6.3%) update-en-expr ...tweaks/src/core/egraph.rkt:205:0 ------------------------------------------------------------------