Profiling results ----------------- Total cpu time observed: 5808ms (out of 6040ms) Number of samples taken: 31 (once every 187ms) ====================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ====================================================================== run [5] 50.0% [1] 5648(97.2%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [3] 50.0% loop [6] 31.6% run-improve50 [4] 18.4% ---------------------------------------------------------------------- hash-ref! [19] 100.0% [2] 148(2.5%) 0(0.0%) ??? ...herbie/diff-of-prods/src/programs.rkt:183:5 loop [16] 100.0% ---------------------------------------------------------------------- ??? [1] 100.0% [3] 5648(97.2%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [5] 100.0% ---------------------------------------------------------------------- ??? [1] 100.0% [4] 2084(35.9%) 0(0.0%) run-improve50 ...f-of-prods/src/mainloop.rkt:234:0 setup-alt-simplified [7] 91.0% loop [6] 9.0% ---------------------------------------------------------------------- profile-thunk16 [3] 100.0% [5] 5648(97.2%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [1] 100.0% ---------------------------------------------------------------------- run-improve50 [4] 5.0% ??? [1] 95.0% [6] 3752(64.6%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:193:2 make-exacts* [11] 51.4% loop [9] 44.3% for-loop [10] 4.3% ---------------------------------------------------------------------- run-improve50 [4] 100.0% [7] 1896(32.6%) 0(0.0%) setup-alt-simplified ...of-prods/src/glue.rkt:49:0 simplify-alt [8] 100.0% ---------------------------------------------------------------------- setup-alt-simplified [7] 100.0% [8] 1896(32.6%) 0(0.0%) simplify-alt ...ie/diff-of-prods/src/glue.rkt:76:0 ??? [21] 100.0% ---------------------------------------------------------------------- loop [6] 100.0% [9] 1662(28.6%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:151:2 make-exacts* [11] 40.1% loop [12] 39.7% eval-prog [13] 20.2% ---------------------------------------------------------------------- loop [6] 100.0% [10] 162(2.8%) 0(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:200:24 for-loop [14] 100.0% ---------------------------------------------------------------------- loop [9] 25.7% loop [6] 74.3% [11] 2594(44.7%) 0(0.0%) make-exacts* ...diff-of-prods/src/points.rkt:138:0 loop [16] 58.1% map [15] 41.9% ---------------------------------------------------------------------- loop [9] 100.0% [12] 660(11.4%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:141:4 map [15] 100.0% ---------------------------------------------------------------------- loop [9] 100.0% [13] 336(5.8%) 0(0.0%) eval-prog .../diff-of-prods/src/programs.rkt:148:0 hash-ref! [19] 100.0% ---------------------------------------------------------------------- for-loop [10] 100.0% [14] 162(2.8%) 0(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:201:26 ??? [18] 100.0% ---------------------------------------------------------------------- loop [12] 37.8% make-exacts* [11] 62.2% [15] 1746(30.1%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [16] 100.0% ---------------------------------------------------------------------- make-exacts* [11] 0.4% ??? [2] 4.4% map [15] 5.7% loop [16] 89.6% [16] 3402(58.6%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [16] 89.6% ??? [17] 6.1% hash-ref! [19] 4.4% ??? [18] 0.0% ---------------------------------------------------------------------- loop [16] 100.0% [17] 3072(52.9%) 0(0.0%) ??? ...herbie/diff-of-prods/src/programs.rkt:154:4 ??? [20] 77.8% ??? [22] 17.1% ??? [24] 5.1% ---------------------------------------------------------------------- for-loop [14] 47.1% loop [16] 52.9% [18] 344(5.9%) 162(2.8%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [21] 52.9% ---------------------------------------------------------------------- loop [16] 29.4% eval-prog [13] 70.6% [19] 336(5.8%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 bigfloat-hash [23] 70.6% ??? [2] 29.4% ---------------------------------------------------------------------- ??? [17] 100.0% [20] 2390(41.2%) 484(8.3%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [32] 59.6% bf* [27] 20.2% ---------------------------------------------------------------------- ??? [18] 8.1% simplify-alt [8] 42.4% ??? [21] 45.9% [21] 2238(38.5%) 0(0.0%) ??? ...llects/racket/private/norm-define.rkt:53:83 ??? [21] 45.9% iterate-egraph!13 [25] 45.9% return/no-unsupplied [29] 8.1% ---------------------------------------------------------------------- ??? [17] 100.0% [22] 524(9.0%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [26] 100.0% ---------------------------------------------------------------------- hash-ref! [19] 100.0% [23] 336(5.8%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [28] 100.0% ---------------------------------------------------------------------- ??? [17] 100.0% [24] 158(2.7%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:145:21 ??? [30] 100.0% ---------------------------------------------------------------------- ??? [21] 100.0% [25] 2056(35.4%) 0(0.0%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [31] 100.0% ---------------------------------------------------------------------- ??? [22] 100.0% [26] 524(9.0%) 370(6.4%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [37] 29.4% ---------------------------------------------------------------------- ??? [20] 100.0% [27] 482(8.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [32] 100.0% ---------------------------------------------------------------------- bigfloat-hash [23] 100.0% [28] 336(5.8%) 188(3.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [33] 44.0% ---------------------------------------------------------------------- ??? [21] 100.0% [29] 182(3.1%) 182(3.1%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 ---------------------------------------------------------------------- ??? [24] 100.0% [30] 158(2.7%) 158(2.7%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ---------------------------------------------------------------------- iterate-egraph!13 [25] 100.0% [31] 2056(35.4%) 0(0.0%) one-iter ...f-of-prods/src/core/simplify.rkt:113:0 loop [34] 100.0% ---------------------------------------------------------------------- bf* [27] 25.3% ??? [20] 74.7% [32] 1906(32.8%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [35] 100.0% ---------------------------------------------------------------------- sig+exp->bigfloat [28] 100.0% [33] 148(2.5%) 148(2.5%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ---------------------------------------------------------------------- one-iter [31] 100.0% [34] 2056(35.4%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [36] 100.0% ---------------------------------------------------------------------- ??? [32] 100.0% [35] 1906(32.8%) 1740(30.0%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [37] 8.7% ---------------------------------------------------------------------- loop [34] 100.0% [36] 2056(35.4%) 0(0.0%) apply-match ...f-prods/src/core/simplify.rkt:130:2 for-loop [38] 70.0% update-leader! [43] 22.3% match-e [39] 7.7% ---------------------------------------------------------------------- real->bigfloat [26] 48.1% bfmul [35] 51.9% [37] 320(5.5%) 320(5.5%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ---------------------------------------------------------------------- apply-match [36] 100.0% [38] 1440(24.8%) 0(0.0%) for-loop ...-of-prods/src/core/simplify.rkt:145:10 merge-egraph-nodes! [40] 65.1% mk-enode! [44] 22.5% substitute-e [41] 12.4% ---------------------------------------------------------------------- apply-match [36] 100.0% [39] 158(2.7%) 0(0.0%) match-e .../diff-of-prods/src/core/ematch.rkt:46:0 for-loop [42] 100.0% ---------------------------------------------------------------------- for-loop [38] 100.0% [40] 938(16.2%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [43] 100.0% ---------------------------------------------------------------------- for-loop [38] 100.0% [41] 178(3.1%) 0(0.0%) substitute-e ...-of-prods/src/core/ematch.rkt:71:0 mk-enode! [44] 100.0% ---------------------------------------------------------------------- match-e [39] 100.0% [42] 158(2.7%) 158(2.7%) for-loop ...iff-of-prods/src/core/ematch.rkt:59:11 ---------------------------------------------------------------------- apply-match [36] 32.8% merge-egraph-nodes! [40] 67.2% [43] 1396(24.0%) 0(0.0%) update-leader! ...-prods/src/core/egraph.rkt:217:0 for-loop [45] 100.0% ---------------------------------------------------------------------- substitute-e [41] 35.5% for-loop [38] 64.5% [44] 502(8.6%) 0(0.0%) mk-enode! ...ff-of-prods/src/core/egraph.rkt:101:0 new-enode [46] 100.0% ---------------------------------------------------------------------- update-leader! [43] 100.0% [45] 1396(24.0%) 0(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:222:6 for-loop [47] 100.0% ---------------------------------------------------------------------- mk-enode! [44] 100.0% [46] 502(8.6%) 0(0.0%) new-enode ...diff-of-prods/src/core/enode.rkt:97:0 type-of-enode-expr [48] 100.0% ---------------------------------------------------------------------- for-loop [45] 100.0% [47] 1396(24.0%) 0(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:223:8 hash-update! [49] 100.0% ---------------------------------------------------------------------- new-enode [46] 100.0% [48] 502(8.6%) 0(0.0%) type-of-enode-expr ...rods/src/core/enode.rkt:68:0 get-sigs [50] 100.0% ---------------------------------------------------------------------- for-loop [47] 100.0% [49] 1396(24.0%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [51] 100.0% ---------------------------------------------------------------------- type-of-enode-expr [48] 100.0% [50] 502(8.6%) 0(0.0%) get-sigs ...e/diff-of-prods/src/type-check.rkt:5:0 ??? [52] 35.5% ??? [53] 32.7% ...prods/src/common.rkt:47:2 [54] 31.9% ---------------------------------------------------------------------- hash-update! [49] 100.0% [51] 1396(24.0%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/egraph.rkt:225:24 for-loop [55] 89.4% make-sequence [59] 10.6% ---------------------------------------------------------------------- get-sigs [50] 100.0% [52] 178(3.1%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [56] 100.0% ---------------------------------------------------------------------- get-sigs [50] 100.0% [53] 164(2.8%) 0(0.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [57] 100.0% ---------------------------------------------------------------------- get-sigs [50] 100.0% [54] 160(2.8%) 0(0.0%) ...prods/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [58] 100.0% ---------------------------------------------------------------------- ??? [51] 100.0% [55] 1248(21.5%) 784(13.5%) for-loop ...ff-of-prods/src/core/egraph.rkt:226:26 update-en-expr [60] 37.2% ---------------------------------------------------------------------- ??? [52] 100.0% [56] 178(3.1%) 0(0.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [61] 100.0% ---------------------------------------------------------------------- ??? [53] 100.0% [57] 164(2.8%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [62] 100.0% ---------------------------------------------------------------------- ...prods/src/common.rkt:47:2 [54]100.0% [58] 160(2.8%) 160(2.8%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ---------------------------------------------------------------------- ??? [51] 100.0% [59] 148(2.5%) 0(0.0%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [63] 100.0% ---------------------------------------------------------------------- for-loop [55] 100.0% [60] 464(8.0%) 464(8.0%) update-en-expr ...-prods/src/core/egraph.rkt:211:0 ---------------------------------------------------------------------- hash-has-key? [56] 100.0% [61] 178(3.1%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [64] 100.0% ---------------------------------------------------------------------- ??? [57] 100.0% [62] 164(2.8%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [65] 100.0% ---------------------------------------------------------------------- make-sequence [59] 100.0% [63] 148(2.5%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [66] 100.0% ---------------------------------------------------------------------- ??? [61] 100.0% [64] 178(3.1%) 0(0.0%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [67] 100.0% ---------------------------------------------------------------------- ??? [62] 100.0% [65] 164(2.8%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [68] 100.0% ---------------------------------------------------------------------- ??? [63] 100.0% [66] 148(2.5%) 148(2.5%) custom-in-set ...acket/private/set-types.rkt:577:0 ---------------------------------------------------------------------- for-loop [64] 100.0% [67] 178(3.1%) 178(3.1%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 ---------------------------------------------------------------------- ??? [65] 100.0% [68] 164(2.8%) 164(2.8%) for-loop ...racket/contract/private/list.rkt:680:9 ----------------------------------------------------------------------