Profiling results ----------------- Total cpu time observed: 22020ms (out of 22152ms) Number of samples taken: 69 (once every 319ms) ======================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================== ??? [9] 100.0% [1] 22020(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [6] 100.0% ------------------------------------------------------------------------ hash-ref! [61] 100.0% [2] 304(1.4%) 0(0.0%) ??? ...ies/herbie/master/src/core/taylor.rkt:68:15 hash-ref! [61] 50.0% ??? [49] 50.0% ------------------------------------------------------------------------ ??? [49] 100.0% [3] 304(1.4%) 0(0.0%) approximate9 ...ie/master/src/core/taylor.rkt:12:0 loop [7] 100.0% ------------------------------------------------------------------------ hash-ref! [61] 100.0% [4] 304(1.4%) 0(0.0%) ??? ...es/herbie/master/src/core/taylor.rkt:291:26 for-loop [8] 100.0% ------------------------------------------------------------------------ substitute-e [64] 100.0% [5] 300(1.4%) 0(0.0%) variable? ...ie/master/src/syntax/syntax.rkt:722:0 ??? [34] 100.0% ------------------------------------------------------------------------ profile-thunk16 [1] 100.0% [6] 22020(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [9] 100.0% ------------------------------------------------------------------------ approximate9 [3] 100.0% [7] 304(1.4%) 0(0.0%) loop ...ies/herbie/master/src/core/taylor.rkt:87:4 hash-ref! [61] 100.0% ------------------------------------------------------------------------ ??? [4] 100.0% [8] 304(1.4%) 0(0.0%) for-loop ...rbie/master/src/core/taylor.rkt:291:52 hash-ref! [61] 100.0% ------------------------------------------------------------------------ for-loop [56] 2.0% run [6] 49.0% [9] 22020(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.0% run-improve47 [10] 33.4% prepare-points [11] 11.0% oracle-error [12] 1.4% eval-errors [13] 1.4% errors [52] 1.0% ??? [33] 1.0% errors-score [14] 0.8% precision->real [15] 0.5% infer-double-representation [27] 0.5% ------------------------------------------------------------------------ ??? [9] 100.0% [10] 14934(67.8%) 0(0.0%) run-improve47 ...bie/master/src/mainloop.rkt:342:0 for-loop [16] 79.1% simplify! [26] 20.9% ------------------------------------------------------------------------ ??? [9] 100.0% [11] 4846(22.0%) 0(0.0%) prepare-points ...rbie/master/src/points.rkt:146:0 loop [17] 100.0% ------------------------------------------------------------------------ ??? [9] 100.0% [12] 632(2.9%) 0(0.0%) oracle-error ...herbie/master/src/points.rkt:188:0 for-loop [18] 100.0% ------------------------------------------------------------------------ ??? [9] 100.0% [13] 600(2.7%) 0(0.0%) eval-errors .../herbie/master/src/points.rkt:179:0 for-loop [19] 100.0% ------------------------------------------------------------------------ ??? [9] 100.0% [14] 360(1.6%) 0(0.0%) errors-score ...herbie/master/src/points.rkt:196:0 loop [20] 100.0% ------------------------------------------------------------------------ ??? [9] 100.0% [15] 332(1.5%) 0(0.0%) precision->real ...e/master/src/programs.rkt:92:33 infer-representation [44] 100.0% ------------------------------------------------------------------------ run-improve47 [10] 100.0% [16] 11820(53.7%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:359:4 run-iter! [21] 100.0% ------------------------------------------------------------------------ prepare-points [11] 100.0% [17] 4846(22.0%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:122:4 loop [22] 66.0% ??? [24] 34.0% ------------------------------------------------------------------------ oracle-error [12] 100.0% [18] 632(2.9%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:189:2 loop [23] 52.8% map [25] 47.2% ------------------------------------------------------------------------ eval-errors [13] 100.0% [19] 600(2.7%) 300(1.4%) for-loop ...ies/herbie/master/src/points.rkt:181:2 ??? [33] 50.0% ------------------------------------------------------------------------ errors-score [14] 100.0% [20] 360(1.6%) 360(1.6%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ------------------------------------------------------------------------ for-loop [16] 100.0% [21] 11820(53.7%) 0(0.0%) run-iter! .../herbie/master/src/mainloop.rkt:323:0 simplify! [26] 91.9% finalize-iter! [28] 5.5% gen-series! [30] 2.6% ------------------------------------------------------------------------ loop [17] 100.0% [22] 3200(14.5%) 604(2.7%) loop ...ightlies/herbie/master/src/points.rkt:81:2 ??? [33] 81.1% ------------------------------------------------------------------------ loop! [70] 10.0% for-loop [18] 11.9% loop [23] 78.1% [23] 2806(12.7%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [23] 78.1% infer-double-representation [27] 11.9% loop! [70] 10.0% ------------------------------------------------------------------------ loop [17] 100.0% [24] 1646(7.5%) 0(0.0%) ??? ...ightlies/herbie/master/src/points.rkt:106:2 ??? [49] 76.7% compose [29] 23.3% ------------------------------------------------------------------------ for-loop [18] 100.0% [25] 298(1.4%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 ??? [31] 100.0% ------------------------------------------------------------------------ run-improve47 [10] 22.3% run-iter! [21] 77.7% [26] 13974(63.5%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:220:0 ??? [32] 100.0% ------------------------------------------------------------------------ ??? [9] 49.2% loop [23] 50.8% [27] 658(3.0%) 0(0.0%) infer-double-representation .../src/float.rkt:22:0 for-loop [35] 100.0% ------------------------------------------------------------------------ run-iter! [21] 100.0% [28] 656(3.0%) 0(0.0%) finalize-iter! ...ie/master/src/mainloop.rkt:274:0 ??? [34] 100.0% ------------------------------------------------------------------------ ??? [24] 100.0% [29] 384(1.7%) 384(1.7%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------ run-iter! [21] 100.0% [30] 304(1.4%) 0(0.0%) gen-series! ...erbie/master/src/mainloop.rkt:156:0 for-loop [36] 100.0% ------------------------------------------------------------------------ map [25] 100.0% [31] 298(1.4%) 0(0.0%) ??? ...ghtlies/herbie/master/src/points.rkt:190:26 ??? [33] 100.0% ------------------------------------------------------------------------ simplify! [26] 100.0% [32] 13974(63.5%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:26:0 for-loop [37] 93.1% one-iter [42] 6.9% ------------------------------------------------------------------------ ??? [31] 7.8% for-loop [19] 7.8% ??? [9] 16.9% loop [22] 67.6% [33] 3842(17.4%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:108:2 ??? [38] 51.2% ??? [49] 32.7% real->precision [40] 16.0% ------------------------------------------------------------------------ variable? [5] 31.4% finalize-iter! [28] 68.6% [34] 956(4.3%) 300(1.4%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [39] 68.6% ------------------------------------------------------------------------ infer-double-representation [27]100.0% [35] 658(3.0%) 324(1.5%) for-loop ...tlies/herbie/master/src/float.rkt:17:3 ??? [53] 50.8% ------------------------------------------------------------------------ gen-series! [30] 100.0% [36] 304(1.4%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:163:7 taylor-alt [41] 100.0% ------------------------------------------------------------------------ ??? [32] 100.0% [37] 13012(59.1%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:33:2 one-iter [42] 100.0% ------------------------------------------------------------------------ ??? [33] 100.0% [38] 1968(8.9%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [43] 68.0% ??? [46] 32.0% ------------------------------------------------------------------------ ??? [34] 100.0% [39] 656(3.0%) 0(0.0%) for-loop ...bie/master/src/core/alt-table.rkt:56:2 atab-add-altn [45] 100.0% ------------------------------------------------------------------------ ??? [33] 100.0% [40] 616(2.8%) 0(0.0%) real->precision ...e/master/src/programs.rkt:87:33 infer-representation [44] 100.0% ------------------------------------------------------------------------ for-loop [36] 100.0% [41] 304(1.4%) 0(0.0%) taylor-alt ...herbie/master/src/mainloop.rkt:142:0 for-loop [47] 100.0% ------------------------------------------------------------------------ ??? [32] 6.9% for-loop [37] 93.1% [42] 13974(63.5%) 0(0.0%) one-iter ...rbie/master/src/core/simplify.rkt:65:0 for-loop [48] 82.3% find-matches [50] 17.7% ------------------------------------------------------------------------ ??? [38] 100.0% [43] 1338(6.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [51] 100.0% ------------------------------------------------------------------------ precision->real [15] 35.0% real->precision [40] 65.0% [44] 948(4.3%) 630(2.9%) infer-representation .../master/src/float.rkt:15:0 ??? [53] 33.5% ------------------------------------------------------------------------ for-loop [39] 100.0% [45] 656(3.0%) 0(0.0%) atab-add-altn ...ster/src/core/alt-table.rkt:203:0 errors [52] 100.0% ------------------------------------------------------------------------ ??? [38] 100.0% [46] 630(2.9%) 630(2.9%) ??? .../herbie/master/src/syntax/syntax.rkt:207:17 ------------------------------------------------------------------------ taylor-alt [41] 100.0% [47] 304(1.4%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:148:6 ??? [49] 100.0% ------------------------------------------------------------------------ one-iter [42] 100.0% [48] 11496(52.2%) 360(1.6%) for-loop ...rbie/master/src/core/simplify.rkt:67:2 for-loop [54] 96.9% ------------------------------------------------------------------------ ??? [2] 3.6% location-do [60] 3.6% for-loop [47] 3.6% ??? [33] 44.5% ??? [24] 44.7% [49] 2824(12.8%) 312(1.4%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [57] 44.7% mk-ival [59] 33.5% location-do [60] 3.6% approximate9 [3] 3.6% hash-ref! [61] 3.6% ------------------------------------------------------------------------ one-iter [42] 100.0% [50] 2478(11.3%) 0(0.0%) find-matches .../master/src/core/simplify.rkt:55:0 for-loop [55] 100.0% ------------------------------------------------------------------------ ??? [43] 100.0% [51] 1338(6.1%) 334(1.5%) ival-add ...herbie/master/src/biginterval.rkt:94:0 bfadd [58] 75.0% ------------------------------------------------------------------------ ??? [9] 49.7% atab-add-altn [45] 50.3% [52] 1304(5.9%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:205:0 for-loop [56] 100.0% ------------------------------------------------------------------------ infer-representation [44] 48.8% for-loop [35] 51.2% [53] 652(3.0%) 652(3.0%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ------------------------------------------------------------------------ for-loop [48] 100.0% [54] 11136(50.6%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:70:4 merge-egraph-nodes! [62] 45.9% dedup-children! [69] 35.0% substitute-e [64] 16.4% mk-enode! [81] 2.7% ------------------------------------------------------------------------ for-loop [55] 50.0% find-matches [50] 50.0% [55] 2478(11.3%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:57:8 for-loop [55] 50.0% match-e [63] 50.0% ------------------------------------------------------------------------ errors [52] 100.0% [56] 1304(5.9%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:207:2 ??? [9] 100.0% ------------------------------------------------------------------------ ??? [49] 100.0% [57] 1262(5.7%) 0(0.0%) sample-multi-bounded ...master/src/points.rkt:15:0 random-ranges [65] 100.0% ------------------------------------------------------------------------ ival-add [51] 100.0% [58] 1004(4.6%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [71] 100.0% ------------------------------------------------------------------------ ??? [49] 100.0% [59] 946(4.3%) 0(0.0%) mk-ival .../herbie/master/src/biginterval.rkt:57:0 bf [66] 100.0% ------------------------------------------------------------------------ ??? [49] 100.0% [60] 304(1.4%) 0(0.0%) location-do ...herbie/master/src/programs.rkt:64:0 ??? [49] 100.0% ------------------------------------------------------------------------ for-loop [8] 20.0% ??? [68] 20.0% ??? [49] 20.0% ??? [2] 20.0% loop [7] 20.0% [61] 304(1.4%) 0(0.0%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [2] 40.0% ??? [68] 20.0% ??? [4] 20.0% simplify [67] 20.0% ------------------------------------------------------------------------ merge-egraph-nodes! [62] 6.3% for-loop [54] 93.7% [62] 5112(23.2%) 0(0.0%) merge-egraph-nodes! ...r/src/core/egraph.rkt:143:0 loop! [70] 70.1% update-leader! [74] 16.4% dedup-children! [69] 7.2% merge-egraph-nodes! [62] 6.3% ------------------------------------------------------------------------ for-loop [85] 21.1% for-loop [55] 78.9% [63] 2478(11.3%) 296(1.3%) match-e .../herbie/master/src/core/ematch.rkt:39:0 for-loop [72] 71.8% constant? [75] 16.2% ------------------------------------------------------------------------ for-loop [73] 21.9% for-loop [54] 78.1% [64] 1824(8.3%) 300(1.4%) substitute-e ...ie/master/src/core/ematch.rkt:64:0 for-loop [73] 72.0% constant? [75] 17.0% variable? [5] 5.5% ------------------------------------------------------------------------ sample-multi-bounded [57] 100.0% [65] 1262(5.7%) 616(2.8%) random-ranges ...erbie/master/src/common.rkt:183:0 build--> [76] 27.4% cons/c [78] 23.8% ------------------------------------------------------------------------ mk-ival [59] 100.0% [66] 946(4.3%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [71] 100.0% ------------------------------------------------------------------------ hash-ref! [61] 100.0% [67] 304(1.4%) 0(0.0%) simplify ...herbie/master/src/core/reduce.rkt:16:0 parse-loop80 [77] 100.0% ------------------------------------------------------------------------ hash-ref! [61] 100.0% [68] 304(1.4%) 0(0.0%) ??? ...ies/herbie/master/src/core/taylor.rkt:45:15 hash-ref! [61] 100.0% ------------------------------------------------------------------------ merge-egraph-nodes! [62] 8.6% for-loop [54] 91.4% [69] 4266(19.4%) 0(0.0%) dedup-children! ...master/src/core/enode.rkt:195:0 loop [79] 77.4% loop [84] 22.6% ------------------------------------------------------------------------ loop [23] 33.1% merge-egraph-nodes! [62] 66.9% [70] 3734(17.0%) 664(3.0%) loop! ...es/herbie/master/src/core/enode.rkt:187:2 custom-set-union [80] 37.8% loop [23] 33.1% set [82] 16.2% update-en-expr [103] 4.0% ------------------------------------------------------------------------ bf [66] 48.5% bfadd [58] 51.5% [71] 1950(8.9%) 1950(8.9%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------------ match-e [63] 100.0% [72] 1880(8.5%) 1282(5.8%) for-loop ...erbie/master/src/core/ematch.rkt:52:11 for-loop [85] 33.2% curry* [88] 15.9% ------------------------------------------------------------------------ substitute-e [64] 100.0% [73] 1514(6.9%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:73:24 mk-enode! [81] 60.4% substitute-e [64] 39.6% ------------------------------------------------------------------------ merge-egraph-nodes! [62] 100.0% [74] 1012(4.6%) 0(0.0%) update-leader! ...master/src/core/egraph.rkt:211:0 for-loop [83] 100.0% ------------------------------------------------------------------------ substitute-e [64] 34.0% match-e [63] 66.0% [75] 912(4.1%) 0(0.0%) constant? ...ie/master/src/syntax/syntax.rkt:719:0 value? [86] 100.0% ------------------------------------------------------------------------ random-ranges [65] 100.0% [76] 346(1.6%) 346(1.6%) build--> ...act/private/arrow-val-first.rkt:1086:0 ------------------------------------------------------------------------ simplify [67] 100.0% [77] 304(1.4%) 304(1.4%) parse-loop80 ...s/racket/match/compiler.rkt:418:15 ------------------------------------------------------------------------ random-ranges [65] 100.0% [78] 300(1.4%) 0(0.0%) cons/c .../racket/contract/private/guts.rkt:478:15 coerce-contract [87] 100.0% ------------------------------------------------------------------------ dedup-children! [69] 7.3% loop [79] 92.7% [79] 3304(15.0%) 3304(15.0%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [79] 92.7% ------------------------------------------------------------------------ loop! [70] 100.0% [80] 1562(7.1%) 662(3.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [90] 57.6% ------------------------------------------------------------------------ for-loop [54] 24.7% for-loop [73] 75.3% [81] 1214(5.5%) 300(1.4%) mk-enode! ...erbie/master/src/core/egraph.rkt:97:0 hash-has-key? [91] 49.3% new-enode [93] 26.0% ------------------------------------------------------------------------ loop! [70] 100.0% [82] 1208(5.5%) 1208(5.5%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------ update-leader! [74] 100.0% [83] 1012(4.6%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:216:6 hash-update! [96] 65.4% for-loop [92] 34.6% ------------------------------------------------------------------------ dedup-children! [69] 19.3% loop [84] 80.7% [84] 962(4.4%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [84] 80.7% member [89] 19.3% ------------------------------------------------------------------------ for-loop [72] 100.0% [85] 948(4.3%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:58:37 match-e [63] 100.0% ------------------------------------------------------------------------ constant? [75] 100.0% [86] 912(4.1%) 912(4.1%) value? .../herbie/master/src/syntax/types.rkt:18:0 ------------------------------------------------------------------------ cons/c [78] 100.0% [87] 300(1.4%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:285:0 coerce-contract/f [94] 100.0% ------------------------------------------------------------------------ for-loop [72] 100.0% [88] 298(1.4%) 0(0.0%) curry* ...et-7.0/collects/racket/function.rkt:44:2 procedure-arity [95] 100.0% ------------------------------------------------------------------------ loop [84] 100.0% [89] 962(4.4%) 962(4.4%) member (unknown source) ------------------------------------------------------------------------ custom-set-union [80] 100.0% [90] 900(4.1%) 600(2.7%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [98] 33.3% ------------------------------------------------------------------------ mk-enode! [81] 100.0% [91] 598(2.7%) 598(2.7%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ------------------------------------------------------------------------ for-loop [83] 100.0% [92] 350(1.6%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:217:8 hash-update! [96] 100.0% ------------------------------------------------------------------------ mk-enode! [81] 100.0% [93] 316(1.4%) 0(0.0%) new-enode ...herbie/master/src/core/enode.rkt:94:0 type-of-enode-expr [97] 100.0% ------------------------------------------------------------------------ coerce-contract [87] 100.0% [94] 300(1.4%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:350:0 coerce-simple-value [99] 100.0% ------------------------------------------------------------------------ curry* [88] 100.0% [95] 298(1.4%) 298(1.4%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------ for-loop [92] 34.6% for-loop [83] 65.4% [96] 1012(4.6%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [100] 100.0% ------------------------------------------------------------------------ new-enode [93] 100.0% [97] 316(1.4%) 0(0.0%) type-of-enode-expr ...ster/src/core/enode.rkt:66:0 table-ref [101] 100.0% ------------------------------------------------------------------------ for-loop [90] 100.0% [98] 300(1.4%) 300(1.4%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------ coerce-contract/f [94] 100.0% [99] 300(1.4%) 300(1.4%) coerce-simple-value ...ract/private/guts.rkt:363:0 ------------------------------------------------------------------------ hash-update! [96] 100.0% [100] 1012(4.6%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:219:24 for-loop [102] 65.4% update-en-expr [103] 34.6% ------------------------------------------------------------------------ type-of-enode-expr [97] 100.0% [101] 316(1.4%) 316(1.4%) table-ref ...ies/herbie/master/src/common.rkt:45:0 ------------------------------------------------------------------------ ??? [100] 100.0% [102] 662(3.0%) 662(3.0%) for-loop ...rbie/master/src/core/egraph.rkt:220:26 ------------------------------------------------------------------------ loop! [70] 46.2% ??? [100] 53.8% [103] 650(3.0%) 650(3.0%) update-en-expr ...master/src/core/egraph.rkt:205:0 ------------------------------------------------------------------------