Profiling results ----------------- Total cpu time observed: 29360ms (out of 29684ms) Number of samples taken: 93 (once every 316ms) ================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================ ??? [7] 100.0% [1] 29360(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [4] 100.0% ---------------------------------------------------------------- ??? [7] 100.0% [2] 1014(3.5%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:223:0 for-loop [5] 100.0% ---------------------------------------------------------------- hash-ref! [34] 100.0% [3] 336(1.1%) 0(0.0%) parse-loop30 ...s/racket/match/compiler.rkt:418:15 map [6] 100.0% ---------------------------------------------------------------- profile-thunk16 [1] 100.0% [4] 29360(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [7] 100.0% ---------------------------------------------------------------- errors [2] 100.0% [5] 1014(3.5%) 676(2.3%) for-loop ...es/herbie/develop/src/points.rkt:225:2 ??? [7] 33.3% ---------------------------------------------------------------- parse-loop30 [3] 100.0% [6] 336(1.1%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 hash-ref! [34] 100.0% ---------------------------------------------------------------- for-loop [47] 0.4% for-loop [5] 0.4% run [4] 49.6% [7] 29360(100.0%) 324(1.1%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.6% run-improve43 [8] 39.8% prepare-points [9] 6.2% errors [2] 1.5% oracle-error [10] 1.0% eval-errors [11] 0.6% errors-score [12] 0.5% ulp-difference [76] 0.4% ---------------------------------------------------------------- ??? [7] 100.0% [8] 23484(80.0%) 0(0.0%) run-improve43 ...ie/develop/src/mainloop.rkt:339:0 simplify! [13] 98.6% for-loop [16] 1.4% ---------------------------------------------------------------- ??? [7] 100.0% [9] 3630(12.4%) 386(1.3%) prepare-points ...bie/develop/src/points.rkt:166:0 loop [14] 89.4% ---------------------------------------------------------------- ??? [7] 100.0% [10] 602(2.1%) 0(0.0%) oracle-error ...erbie/develop/src/points.rkt:207:0 for-loop [15] 100.0% ---------------------------------------------------------------- ??? [7] 100.0% [11] 332(1.1%) 0(0.0%) eval-errors ...herbie/develop/src/points.rkt:198:0 for-loop [17] 100.0% ---------------------------------------------------------------- ??? [7] 100.0% [12] 298(1.0%) 0(0.0%) errors-score ...erbie/develop/src/points.rkt:215:0 loop [18] 100.0% ---------------------------------------------------------------- run-improve43 [8] 100.0% [13] 23148(78.8%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:217:0 ??? [19] 100.0% ---------------------------------------------------------------- prepare-points [9] 100.0% [14] 3244(11.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:143:4 loop [20] 89.0% ordinary-value? [78] 11.0% ---------------------------------------------------------------- oracle-error [10] 100.0% [15] 602(2.1%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:208:2 loop [68] 100.0% ---------------------------------------------------------------- run-improve43 [8] 100.0% [16] 336(1.1%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:354:4 run-iter! [21] 100.0% ---------------------------------------------------------------- eval-errors [11] 100.0% [17] 332(1.1%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:200:2 ulp-difference [76] 100.0% ---------------------------------------------------------------- errors-score [12] 100.0% [18] 298(1.0%) 298(1.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ---------------------------------------------------------------- simplify! [13] 100.0% [19] 23148(78.8%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:26:0 for-loop [22] 97.3% loop [25] 1.3% one-iter [26] 1.3% ---------------------------------------------------------------- loop [14] 100.0% [20] 2886(9.8%) 632(2.2%) loop ...htlies/herbie/develop/src/points.rkt:102:2 ??? [23] 54.2% hash-update! [82] 12.5% ??? [74] 11.4% ---------------------------------------------------------------- for-loop [16] 100.0% [21] 336(1.1%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:320:0 localize! [24] 100.0% ---------------------------------------------------------------- ??? [19] 100.0% [22] 22524(76.7%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:33:2 one-iter [26] 100.0% ---------------------------------------------------------------- loop [20] 100.0% [23] 1564(5.3%) 0(0.0%) ??? ...htlies/herbie/develop/src/programs.rkt:99:2 ??? [27] 100.0% ---------------------------------------------------------------- run-iter! [21] 100.0% [24] 336(1.1%) 0(0.0%) localize! ...herbie/develop/src/mainloop.rkt:120:0 localize-error [28] 100.0% ---------------------------------------------------------------- ??? [19] 100.0% [25] 312(1.1%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:142:2 for-loop [29] 100.0% ---------------------------------------------------------------- ??? [19] 1.4% for-loop [22] 98.6% [26] 22836(77.8%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:85:0 for-loop [30] 74.0% find-matches [31] 24.5% for-loop [35] 1.4% ---------------------------------------------------------------- ??? [23] 100.0% [27] 1564(5.3%) 286(1.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [32] 44.0% ??? [33] 37.7% ---------------------------------------------------------------- localize! [24] 100.0% [28] 336(1.1%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:57:0 hash-ref! [34] 100.0% ---------------------------------------------------------------- loop [25] 100.0% [29] 312(1.1%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:148:4 for-loop [36] 100.0% ---------------------------------------------------------------- one-iter [26] 100.0% [30] 16910(57.6%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:94:2 loop [37] 100.0% ---------------------------------------------------------------- one-iter [26] 100.0% [31] 5602(19.1%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:55:0 for-loop [38] 100.0% ---------------------------------------------------------------- ??? [27] 100.0% [32] 688(2.3%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [39] 100.0% ---------------------------------------------------------------- ??? [27] 100.0% [33] 590(2.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ival-mult [40] 100.0% ---------------------------------------------------------------- localize-error [28] 33.3% map [6] 66.7% [34] 336(1.1%) 0(0.0%) hash-ref! .../racket/private/more-scheme.rkt:376:2 parse-loop30 [3] 66.7% ??? [41] 33.3% ---------------------------------------------------------------- one-iter [26] 100.0% [35] 324(1.1%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:110:2 set-precompute! [42] 100.0% ---------------------------------------------------------------- for-loop [29] 100.0% [36] 312(1.1%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:158:2 table-ref [43] 100.0% ---------------------------------------------------------------- for-loop [30] 100.0% [37] 16910(57.6%) 0(0.0%) loop .../herbie/develop/src/core/simplify.rkt:99:4 apply-match [44] 100.0% ---------------------------------------------------------------- for-loop [38] 50.0% find-matches [31] 50.0% [38] 5602(19.1%) 1548(5.3%) for-loop ...bie/develop/src/core/simplify.rkt:57:8 for-loop [38] 50.0% match-e [49] 36.2% ---------------------------------------------------------------- ??? [32] 100.0% [39] 688(2.3%) 0(0.0%) ival-add ...erbie/develop/src/biginterval.rkt:94:0 bfadd [45] 100.0% ---------------------------------------------------------------- ??? [33] 100.0% [40] 590(2.0%) 290(1.0%) ival-mult ...bie/develop/src/biginterval.rkt:112:0 bfadd [45] 50.8% ---------------------------------------------------------------- hash-ref! [34] 100.0% [41] 336(1.1%) 0(0.0%) ??? .../herbie/develop/src/core/localize.rkt:23:13 repeat [46] 100.0% ---------------------------------------------------------------- for-loop [35] 100.0% [42] 324(1.1%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:116:0 for-loop [47] 100.0% ---------------------------------------------------------------- for-loop [36] 100.0% [43] 312(1.1%) 312(1.1%) table-ref ...es/herbie/develop/src/common.rkt:41:0 ---------------------------------------------------------------- loop [37] 100.0% [44] 16910(57.6%) 0(0.0%) apply-match .../develop/src/core/simplify.rkt:64:0 for-loop [48] 85.0% match-e [49] 9.2% set [70] 3.8% make-sequence [51] 2.0% ---------------------------------------------------------------- ival-mult [40] 30.4% ival-add [39] 69.6% [45] 988(3.4%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [50] 69.6% ??? [52] 30.4% ---------------------------------------------------------------- ??? [41] 100.0% [46] 336(1.1%) 336(1.1%) repeat ...herbie/develop/src/core/localize.rkt:9:0 ---------------------------------------------------------------- set-precompute! [42] 100.0% [47] 324(1.1%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:118:2 ??? [7] 100.0% ---------------------------------------------------------------- apply-match [44] 100.0% [48] 14374(49.0%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:77:2 merge-egraph-nodes! [53] 52.3% dedup-children! [59] 39.2% substitute-e [55] 6.5% mk-enode! [57] 2.1% ---------------------------------------------------------------- apply-match [44] 13.9% for-loop [60] 33.0% for-loop [38] 53.1% [49] 5608(19.1%) 0(0.0%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [54] 91.9% constant? [56] 8.1% ---------------------------------------------------------------- bfadd [45] 100.0% [50] 688(2.3%) 688(2.3%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ---------------------------------------------------------------- apply-match [44] 100.0% [51] 332(1.1%) 332(1.1%) make-sequence ...ects/racket/private/for.rkt:528:2 ---------------------------------------------------------------- bfadd [45] 100.0% [52] 300(1.0%) 300(1.0%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ---------------------------------------------------------------- for-loop [48] 100.0% [53] 7512(25.6%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:143:0 loop! [58] 87.6% update-leader! [63] 8.4% dedup-children! [59] 4.0% ---------------------------------------------------------------- match-e [49] 100.0% [54] 5608(19.1%) 3760(12.8%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [60] 41.1% cartesian-product [64] 6.0% curried [66] 2.7% foldr [67] 2.7% ---------------------------------------------------------------- for-loop [48] 44.5% for-loop [61] 55.5% [55] 930(3.2%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [61] 72.9% ??? [74] 16.0% variable? [65] 11.0% ---------------------------------------------------------------- match-e [49] 100.0% [56] 910(3.1%) 0(0.0%) constant? ...e/develop/src/syntax/syntax.rkt:721:0 value? [62] 100.0% ---------------------------------------------------------------- for-loop [48] 100.0% [57] 300(1.0%) 300(1.0%) mk-enode! ...rbie/develop/src/core/egraph.rkt:97:0 ---------------------------------------------------------------- loop [68] 33.3% merge-egraph-nodes! [53] 66.7% [58] 6578(22.4%) 2458(8.4%) loop! ...s/herbie/develop/src/core/enode.rkt:190:2 loop [68] 43.1% custom-set-union [71] 19.1% set [70] 9.6% update-en-expr [72] 7.3% ---------------------------------------------------------------- merge-egraph-nodes! [53] 5.1% for-loop [48] 94.9% [59] 5932(20.2%) 0(0.0%) dedup-children! ...evelop/src/core/enode.rkt:198:0 loop [69] 84.2% loop [73] 15.8% ---------------------------------------------------------------- for-loop [54] 100.0% [60] 3702(12.6%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [49] 100.0% ---------------------------------------------------------------- substitute-e [55] 100.0% [61] 930(3.2%) 324(1.1%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 substitute-e [55] 82.6% ---------------------------------------------------------------- constant? [56] 100.0% [62] 910(3.1%) 910(3.1%) value? ...herbie/develop/src/syntax/types.rkt:18:0 ---------------------------------------------------------------- merge-egraph-nodes! [53] 100.0% [63] 634(2.2%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:211:0 for-loop [75] 100.0% ---------------------------------------------------------------- for-loop [54] 100.0% [64] 334(1.1%) 334(1.1%) cartesian-product ...ollects/racket/list.rkt:822:0 ---------------------------------------------------------------- substitute-e [55] 100.0% [65] 308(1.0%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:724:0 ??? [74] 100.0% ---------------------------------------------------------------- for-loop [54] 100.0% [66] 302(1.0%) 302(1.0%) curried ...-7.0/collects/racket/function.rkt:71:18 ---------------------------------------------------------------- for-loop [54] 100.0% [67] 302(1.0%) 302(1.0%) foldr ....0/collects/racket/private/list.rkt:242:4 ---------------------------------------------------------------- loop! [58] 6.7% for-loop [15] 10.7% loop [68] 82.6% [68] 5626(19.2%) 640(2.2%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [68] 82.6% loop! [58] 6.2% ulp-difference [76] 5.4% ordinary-value? [78] 5.3% ---------------------------------------------------------------- dedup-children! [59] 8.1% loop [69] 91.9% [69] 4996(17.0%) 4996(17.0%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [69] 91.9% ---------------------------------------------------------------- apply-match [44] 34.0% loop! [58] 66.0% [70] 1914(6.5%) 1264(4.3%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [79] 34.0% ---------------------------------------------------------------- loop! [58] 100.0% [71] 1256(4.3%) 658(2.2%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [81] 47.6% ---------------------------------------------------------------- loop! [58] 100.0% [72] 960(3.3%) 960(3.3%) update-en-expr ...evelop/src/core/egraph.rkt:205:0 ---------------------------------------------------------------- dedup-children! [59] 11.6% loop [73] 88.4% [73] 936(3.2%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [73] 88.4% loop [77] 11.6% ---------------------------------------------------------------- substitute-e [55] 31.9% variable? [65] 33.0% loop [20] 35.1% [74] 934(3.2%) 934(3.2%) ??? ...contract/private/arrow-val-first.rkt:388:18 ---------------------------------------------------------------- update-leader! [63] 100.0% [75] 634(2.2%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:216:6 for-loop [80] 100.0% ---------------------------------------------------------------- loop [68] 31.1% for-loop [17] 34.2% ??? [7] 34.8% [76] 972(3.3%) 0(0.0%) ulp-difference ...erbie/develop/src/float.rkt:46:0 infer-representation [83]100.0% ---------------------------------------------------------------- loop [73] 100.0% [77] 936(3.2%) 936(3.2%) loop (unknown source) ---------------------------------------------------------------- loop [68] 45.6% loop [14] 54.4% [78] 658(2.2%) 0(0.0%) ordinary-value? ...rbie/develop/src/float.rkt:80:0 special-value? [84] 100.0% ---------------------------------------------------------------- set [70] 100.0% [79] 650(2.2%) 650(2.2%) for-loop ...cts/racket/private/set-types.rkt:937:4 ---------------------------------------------------------------- for-loop [75] 100.0% [80] 634(2.2%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:217:8 hash-update! [82] 100.0% ---------------------------------------------------------------- custom-set-union [71] 100.0% [81] 598(2.0%) 298(1.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [85] 50.2% ---------------------------------------------------------------- loop [20] 36.3% for-loop [80] 63.7% [82] 996(3.4%) 362(1.2%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [87] 63.7% ---------------------------------------------------------------- ulp-difference [76] 100.0% [83] 972(3.3%) 640(2.2%) infer-representation ...develop/src/float.rkt:15:0 return/no-unsupplied [89] 34.2% ---------------------------------------------------------------- ordinary-value? [78] 100.0% [84] 658(2.2%) 0(0.0%) special-value? ...erbie/develop/src/float.rkt:76:0 for-loop [86] 100.0% ---------------------------------------------------------------- for-loop [81] 100.0% [85] 300(1.0%) 300(1.0%) for-loop ...cts/racket/private/set-types.rkt:178:5 ---------------------------------------------------------------- special-value? [84] 100.0% [86] 658(2.2%) 0(0.0%) for-loop ...lies/herbie/develop/src/float.rkt:17:3 ??? [90] 54.4% return/no-unsupplied [89] 45.6% ---------------------------------------------------------------- hash-update! [82] 100.0% [87] 634(2.2%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:219:24 for-loop [88] 100.0% ---------------------------------------------------------------- ??? [87] 100.0% [88] 634(2.2%) 634(2.2%) for-loop ...bie/develop/src/core/egraph.rkt:220:26 ---------------------------------------------------------------- for-loop [86] 47.5% infer-representation [83] 52.5% [89] 632(2.2%) 332(1.1%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [91] 47.5% ---------------------------------------------------------------- for-loop [86] 100.0% [90] 358(1.2%) 358(1.2%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ---------------------------------------------------------------- return/no-unsupplied [89]100.0% [91] 300(1.0%) 300(1.0%) filter ...0/collects/racket/private/list.rkt:256:2 ----------------------------------------------------------------