Profiling results ----------------- Total cpu time observed: 121464ms (out of 125128ms) Number of samples taken: 287 (once every 423ms) (Hiding functions with self<1.0% and local<2.0%: 1 of 93 hidden) ========================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================== ??? [10] 100.0% [1] 118580(97.6%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [6] 100.0% -------------------------------------------------------------------------- loop [46] 100.0% [2] 103096(84.9%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:156:4 ??? [7] 100.0% -------------------------------------------------------------------------- ??? [74] 100.0% [3] 8048(6.6%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:105:0 one-iter [8] 100.0% -------------------------------------------------------------------------- hash-ref! [79] 100.0% [4] 4382(3.6%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:194:5 loop [46] 100.0% -------------------------------------------------------------------------- ??? [74] 100.0% [5] 1806(1.5%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:237:2 pass [9] 100.0% -------------------------------------------------------------------------- profile-thunk16 [1] 99.7% [6] 118906(97.9%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [10] 100.0% -------------------------------------------------------------------------- ??? [2] 100.0% [7] 103096(84.9%) 9646(7.9%) ??? ...acket/collects/racket/private/kw.rkt:444:14 bf-complex-mult [50] 77.5% bf-complex-add [51] 10.5% ??? [14] 1.2% ??? [68] 1.1% parse-loop12 [83] 0.3% -------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [8] 8048(6.6%) 0(0.0%) one-iter ...ie/develop/src/core/simplify.rkt:116:0 for-loop [11] 58.7% for-loop [12] 41.3% -------------------------------------------------------------------------- loop [5] 100.0% [9] 1806(1.5%) 0(0.0%) pass ...herbie/develop/src/core/simplify.rkt:227:2 for-loop [13] 100.0% -------------------------------------------------------------------------- run [6] 50.0% [10] 119242(98.2%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.7% prepare-points [23] 43.0% run-improve50 [15] 7.1% -------------------------------------------------------------------------- for-loop [11] 50.0% one-iter [8] 50.0% [11] 4724(3.9%) 320(0.3%) for-loop ...e/develop/src/core/simplify.rkt:126:12 for-loop [11] 50.0% rule-valid-at-type? [16] 46.6% -------------------------------------------------------------------------- one-iter [8] 100.0% [12] 3324(2.7%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:166:2 for-loop [17] 68.8% match-e [19] 21.5% reduce-to-single! [22] 9.7% -------------------------------------------------------------------------- pass [9] 100.0% [13] 1806(1.5%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:230:29 argmin [18] 60.2% loop [20] 19.9% make-sequence [21] 19.8% -------------------------------------------------------------------------- ??? [7] 100.0% [14] 1238(1.0%) 1238(1.0%) ??? ...ects/racket/contract/private/prop.rkt:493:4 -------------------------------------------------------------------------- ??? [10] 100.0% [15] 16640(13.7%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 setup-alt-simplified [24] 53.6% prepare-points [23] 36.4% for-loop [26] 5.9% get-final-combination [28] 4.0% -------------------------------------------------------------------------- for-loop [11] 100.0% [16] 4404(3.6%) 3770(3.1%) rule-valid-at-type? .../src/syntax/rules.rkt:548:0 *complex-rules* [30] 14.4% -------------------------------------------------------------------------- for-loop [12] 100.0% [17] 2286(1.9%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:148:10 mk-enode! [34] 45.1% merge-egraph-nodes! [29] 27.8% substitute-e [31] 27.1% -------------------------------------------------------------------------- for-loop [13] 100.0% [18] 1088(0.9%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [25] 100.0% -------------------------------------------------------------------------- for-loop [38] 25.0% for-loop [12] 75.0% [19] 716(0.6%) 0(0.0%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [27] 100.0% -------------------------------------------------------------------------- for-loop [13] 100.0% [20] 360(0.3%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [25] 100.0% -------------------------------------------------------------------------- for-loop [13] 100.0% [21] 358(0.3%) 358(0.3%) make-sequence ...ects/racket/private/for.rkt:509:2 -------------------------------------------------------------------------- for-loop [12] 100.0% [22] 322(0.3%) 322(0.3%) reduce-to-single! ...lop/src/core/egraph.rkt:325:0 -------------------------------------------------------------------------- run-improve50 [15] 5.6% ??? [10] 94.4% [23] 108260(89.1%) 0(0.0%) prepare-points ...bie/develop/src/points.rkt:214:0 loop [41] 36.2% make-exacts* [40] 32.6% loop [32] 31.2% -------------------------------------------------------------------------- run-improve50 [15] 100.0% [24] 8924(7.3%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [33] 100.0% -------------------------------------------------------------------------- loop [20] 24.9% argmin [18] 75.1% [25] 1448(1.2%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:210:2 ??? [74] 75.3% ...velop/src/common.rkt:47:2 [77] 24.7% -------------------------------------------------------------------------- run-improve50 [15] 100.0% [26] 990(0.8%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [35] 100.0% -------------------------------------------------------------------------- match-e [19] 100.0% [27] 716(0.6%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 list-cartesian-product [36] 75.0% for-loop [38] 25.0% -------------------------------------------------------------------------- run-improve50 [15] 100.0% [28] 668(0.5%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 extract-alt [39] 53.6% ??? [68] 46.4% -------------------------------------------------------------------------- merge-egraph-nodes! [29] 26.3% for-loop [17] 73.7% [29] 636(0.5%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 update-leader! [37] 73.7% merge-egraph-nodes! [29] 26.3% -------------------------------------------------------------------------- rule-valid-at-type? [16] 100.0% [30] 634(0.5%) 634(0.5%) *complex-rules* ...elop/src/syntax/rules.rkt:560:0 -------------------------------------------------------------------------- substitute-e [31] 24.2% for-loop [17] 75.8% [31] 620(0.5%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [34] 75.8% substitute-e [31] 24.2% -------------------------------------------------------------------------- prepare-points [23] 100.0% [32] 33796(27.8%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [40] 59.9% loop [41] 40.1% -------------------------------------------------------------------------- setup-alt-simplified [24] 100.0% [33] 8924(7.3%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [74] 100.0% -------------------------------------------------------------------------- substitute-e [31] 37.6% for-loop [17] 62.4% [34] 1650(1.4%) 0(0.0%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [42] 100.0% -------------------------------------------------------------------------- for-loop [26] 100.0% [35] 990(0.8%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 localize-error [43] 100.0% -------------------------------------------------------------------------- for-loop [27] 100.0% [36] 716(0.6%) 716(0.6%) list-cartesian-product ...src/core/ematch.rkt:20:0 -------------------------------------------------------------------------- merge-egraph-nodes! [29] 100.0% [37] 636(0.5%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [44] 100.0% -------------------------------------------------------------------------- for-loop [27] 100.0% [38] 358(0.3%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [19] 100.0% -------------------------------------------------------------------------- get-final-combination [28] 100.0% [39] 358(0.3%) 0(0.0%) extract-alt ...es/herbie/develop/src/glue.rkt:55:0 argmins [45] 100.0% -------------------------------------------------------------------------- loop [32] 36.4% prepare-points [23] 63.6% [40] 55538(45.7%) 326(0.3%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [46] 89.7% eval-prog [56] 9.7% -------------------------------------------------------------------------- loop [32] 25.7% prepare-points [23] 74.3% [41] 52722(43.4%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [46] 100.0% -------------------------------------------------------------------------- mk-enode! [34] 100.0% [42] 1650(1.4%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [47] 100.0% -------------------------------------------------------------------------- run-iter! [35] 100.0% [43] 990(0.8%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [79] 100.0% -------------------------------------------------------------------------- update-leader! [37] 100.0% [44] 636(0.5%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [48] 100.0% -------------------------------------------------------------------------- extract-alt [39] 100.0% [45] 358(0.3%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:152:0 composed [49] 100.0% -------------------------------------------------------------------------- parse-loop12 [83] 0.1% loop [41] 0.5% make-exacts* [40] 0.6% ??? [4] 4.0% loop [46] 94.7% [46] 109156(89.9%) 344(0.3%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [46] 94.7% hash-ref! [79] 4.0% ??? [2] 1.1% ??? [76] 0.1% bf-complex-add [51] 0.0% bf-complex-mult [50] 0.0% ??? [68] 0.0% -------------------------------------------------------------------------- new-enode [42] 100.0% [47] 1650(1.4%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [52] 100.0% -------------------------------------------------------------------------- for-loop [44] 100.0% [48] 636(0.5%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [53] 100.0% -------------------------------------------------------------------------- argmins [45] 100.0% [49] 358(0.3%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [54] 100.0% -------------------------------------------------------------------------- loop [46] 0.4% ??? [7] 99.6% [50] 80216(66.0%) 4606(3.8%) bf-complex-mult ...develop/src/bigcomplex.rkt:33:0 bf* [55] 57.4% ??? [60] 31.1% ...higher-order.rkt:346:33 [57] 5.8% -------------------------------------------------------------------------- loop [46] 2.8% ??? [7] 97.2% [51] 11130(9.2%) 0(0.0%) bf-complex-add .../develop/src/bigcomplex.rkt:22:0 ??? [60] 93.1% ...higher-order.rkt:346:33 [57] 6.9% -------------------------------------------------------------------------- type-of-enode-expr [47] 100.0% [52] 1650(1.4%) 0(0.0%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [58] 62.4% ??? [74] 37.6% -------------------------------------------------------------------------- for-loop [48] 100.0% [53] 636(0.5%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [59] 100.0% -------------------------------------------------------------------------- composed [49] 100.0% [54] 358(0.3%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:271:0 eval-prog [56] 100.0% -------------------------------------------------------------------------- bf-complex-mult [50] 100.0% [55] 46026(37.9%) 1980(1.6%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [60] 95.7% -------------------------------------------------------------------------- errors [54] 6.2% make-exacts* [40] 93.8% [56] 5752(4.7%) 0(0.0%) eval-prog ...herbie/develop/src/programs.rkt:150:0 hash-ref! [79] 81.6% f137 [62] 18.4% -------------------------------------------------------------------------- bf-complex-add [51] 14.2% bf-complex-mult [50] 85.8% [57] 5402(4.4%) 792(0.7%) ...higher-order.rkt:346:33 (unknown source) ??? [61] 85.3% -------------------------------------------------------------------------- get-sigs [52] 100.0% [58] 1030(0.8%) 0(0.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [63] 65.0% get/build-late-neg-projection [65] 35.0% -------------------------------------------------------------------------- hash-update! [53] 100.0% [59] 636(0.5%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [64] 100.0% -------------------------------------------------------------------------- bf-complex-add [51] 13.1% bf-complex-mult [50] 31.4% bf* [55] 55.5% [60] 79358(65.3%) 5718(4.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [66] 81.8% bfneg [67] 11.0% -------------------------------------------------------------------------- ...higher-order.rkt:346:33 [57] 100.0% [61] 4610(3.8%) 2282(1.9%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [75] 50.5% -------------------------------------------------------------------------- eval-prog [56] 11.4% f137 [62] 40.3% hash-ref! [79] 48.3% [62] 2050(1.7%) 0(0.0%) f137 .../collects/racket/match/compiler.rkt:507:40 map [69] 48.3% f137 [62] 40.3% ??? [68] 11.4% -------------------------------------------------------------------------- ??? [58] 100.0% [63] 670(0.6%) 312(0.3%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [72] 53.4% -------------------------------------------------------------------------- ??? [59] 100.0% [64] 636(0.5%) 636(0.5%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 -------------------------------------------------------------------------- ??? [71] 50.0% ??? [58] 50.0% [65] 360(0.3%) 0(0.0%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [71] 50.0% ??? [70] 50.0% -------------------------------------------------------------------------- ??? [60] 100.0% [66] 64888(53.4%) 42164(34.7%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [73] 35.0% -------------------------------------------------------------------------- ??? [60] 100.0% [67] 8752(7.2%) 6056(5.0%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [73] 30.8% -------------------------------------------------------------------------- get-final-combination [28] 9.6% loop [46] 21.4% f137 [62] 32.9% ??? [7] 36.1% [68] 3222(2.7%) 1548(1.3%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [74] 30.4% ...velop/src/common.rkt:47:2 [77] 11.1% ??? [75] 10.4% -------------------------------------------------------------------------- f137 [62] 100.0% [69] 990(0.8%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 ??? [76] 100.0% -------------------------------------------------------------------------- get/build-late-neg-projection [65]100.0% [70] 360(0.3%) 360(0.3%) ??? ...cts/racket/contract/private/prop.rkt:314:12 -------------------------------------------------------------------------- get/build-late-neg-projection [65]100.0% [71] 360(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [65]100.0% -------------------------------------------------------------------------- ??? [63] 100.0% [72] 358(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [78] 100.0% -------------------------------------------------------------------------- bfneg [67] 10.6% bfmul [66] 89.4% [73] 25420(20.9%) 25420(20.9%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -------------------------------------------------------------------------- get-sigs [52] 2.0% for-loop [25] 3.5% ??? [68] 7.8% simplify-alt [33] 40.7% ??? [74] 44.1% [74] 10524(8.7%) 1030(0.8%) ??? ...llects/racket/private/norm-define.rkt:53:83 ??? [74] 44.1% iterate-egraph!13 [3] 37.3% loop [5] 6.9% ??? [87] 4.3% -------------------------------------------------------------------------- ??? [68] 12.6% ??? [61] 87.4% [75] 2664(2.2%) 2328(1.9%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [81] 12.6% -------------------------------------------------------------------------- map [69] 13.2% loop [46] 86.8% [76] 990(0.8%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [79] 100.0% -------------------------------------------------------------------------- for-loop [25] 50.0% ??? [68] 50.0% [77] 716(0.6%) 716(0.6%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 -------------------------------------------------------------------------- ??? [72] 100.0% [78] 358(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [80] 100.0% -------------------------------------------------------------------------- localize-error [43] 2.0% ??? [76] 15.4% eval-prog [56] 21.4% loop [46] 61.1% [79] 5682(4.7%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [4] 61.1% bigfloat-hash [82] 21.4% parse-loop12 [83] 15.4% f137 [62] 2.0% -------------------------------------------------------------------------- ??? [78] 100.0% [80] 358(0.3%) 0(0.0%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [84] 100.0% -------------------------------------------------------------------------- ??? [75] 100.0% [81] 336(0.3%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [85] 100.0% -------------------------------------------------------------------------- hash-ref! [79] 100.0% [82] 4692(3.9%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [86] 71.7% sig+exp->bigfloat [88] 28.3% -------------------------------------------------------------------------- ??? [7] 26.0% hash-ref! [79] 74.0% [83] 1338(1.1%) 348(0.3%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [46] 74.0% -------------------------------------------------------------------------- for-loop [80] 100.0% [84] 358(0.3%) 358(0.3%) add-list-context ...ontract/private/list.rkt:752:0 -------------------------------------------------------------------------- ??? [81] 100.0% [85] 336(0.3%) 0(0.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [87] 100.0% -------------------------------------------------------------------------- bigfloat-hash [82] 100.0% [86] 3362(2.8%) 3028(2.5%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [89] 9.9% -------------------------------------------------------------------------- hash-has-key? [85] 19.9% ??? [74] 80.1% [87] 1686(1.4%) 1066(0.9%) ??? ...ects/racket/contract/private/list.rkt:737:4 ??? [90] 19.0% for-loop [91] 17.8% -------------------------------------------------------------------------- bigfloat-hash [82] 100.0% [88] 1330(1.1%) 1330(1.1%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 -------------------------------------------------------------------------- bfcanonicalize [86] 100.0% [89] 334(0.3%) 334(0.3%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 -------------------------------------------------------------------------- ??? [87] 100.0% [90] 320(0.3%) 0(0.0%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [92] 100.0% -------------------------------------------------------------------------- ??? [87] 100.0% [91] 300(0.2%) 300(0.2%) for-loop ...acket/contract/private/list.rkt:743:12 -------------------------------------------------------------------------- ??? [90] 100.0% [92] 320(0.3%) 320(0.3%) make-keyword-procedure ...ket/private/kw.rkt:260:4 --------------------------------------------------------------------------