Profiling results ----------------- Total cpu time observed: 98778ms (out of 99300ms) Number of samples taken: 304 (once every 325ms) (Hiding functions with self<1.0% and local<2.0%: 1 of 82 hidden) ==================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ==================================================================== ??? [5] 100.0% [1] 98778(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% -------------------------------------------------------------------- ??? [5] 100.0% [2] 334(0.3%) 0(0.0%) errors ...s/herbie/use-places/src/points.rkt:201:0 for-loop [4] 100.0% -------------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 98778(100.0%) 0(0.0%) run ...et-7.2/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% -------------------------------------------------------------------- errors [2] 100.0% [4] 334(0.3%) 0(0.0%) for-loop ...herbie/use-places/src/points.rkt:203:2 ??? [5] 100.0% -------------------------------------------------------------------- for-loop [4] 0.1% run [3] 49.9% [5] 98778(100.0%) 276(0.3%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.9% run-improve47 [6] 46.3% prepare-points-intervals [8] 3.4% errors [2] 0.1% ??? [16] 0.1% -------------------------------------------------------------------- ??? [5] 100.0% [6] 91380(92.5%) 0(0.0%) run-improve47 ...use-places/src/mainloop.rkt:346:0 simplify! [7] 99.6% prepare-points-intervals [8] 0.4% -------------------------------------------------------------------- run-improve47 [6] 100.0% [7] 91056(92.2%) 0(0.0%) simplify! ...bie/use-places/src/mainloop.rkt:224:0 ??? [9] 99.6% for-loop [11] 0.4% -------------------------------------------------------------------- run-improve47 [6] 4.6% ??? [5] 95.4% [8] 7112(7.2%) 0(0.0%) prepare-points-intervals ...s/src/points.rkt:110:0 loop [10] 100.0% -------------------------------------------------------------------- simplify! [7] 100.0% [9] 90710(91.8%) 0(0.0%) ??? ...erbie/use-places/src/core/simplify.rkt:31:0 for-loop [12] 99.6% loop [17] 0.4% -------------------------------------------------------------------- prepare-points-intervals [8]100.0% [10] 7112(7.2%) 0(0.0%) loop ...ies/herbie/use-places/src/points.rkt:123:4 loop [13] 57.9% ??? [14] 33.8% do-curry [59] 8.3% -------------------------------------------------------------------- for-loop [11] 50.0% simplify! [7] 50.0% [11] 346(0.4%) 0(0.0%) for-loop ...rbie/use-places/src/mainloop.rkt:251:6 for-loop [11] 50.0% ??? [27] 50.0% -------------------------------------------------------------------- ??? [9] 100.0% [12] 90374(91.5%) 0(0.0%) for-loop .../use-places/src/core/simplify.rkt:51:2 ??? [15] 99.3% precompute-phase [19] 0.4% loop [17] 0.4% -------------------------------------------------------------------- loop [10] 100.0% [13] 4116(4.2%) 674(0.7%) loop ...lies/herbie/use-places/src/points.rkt:81:2 ??? [16] 76.7% hash-update! [73] 6.9% -------------------------------------------------------------------- loop [10] 100.0% [14] 2404(2.4%) 652(0.7%) ??? ...lies/herbie/use-places/src/points.rkt:106:2 ??? [27] 57.0% ??? [18] 15.9% -------------------------------------------------------------------- for-loop [12] 100.0% [15] 89716(90.8%) 0(0.0%) ??? ...erbie/use-places/src/core/simplify.rkt:92:0 for-loop [20] 93.9% find-matches [21] 6.1% -------------------------------------------------------------------- ??? [5] 9.6% loop [13] 90.4% [16] 3490(3.5%) 404(0.4%) ??? ...es/herbie/use-places/src/programs.rkt:115:2 ??? [22] 62.0% ??? [27] 26.4% -------------------------------------------------------------------- for-loop [12] 49.1% ??? [9] 50.9% [17] 660(0.7%) 0(0.0%) loop ...ie/use-places/src/core/extraction.rkt:25:2 for-loop [23] 100.0% -------------------------------------------------------------------- ??? [14] 100.0% [18] 382(0.4%) 382(0.4%) ??? ...cket-7.2/collects/racket/function.rkt:93:12 -------------------------------------------------------------------- for-loop [12] 100.0% [19] 334(0.3%) 0(0.0%) precompute-phase ...es/src/core/simplify.rkt:101:0 for-loop [24] 100.0% -------------------------------------------------------------------- ??? [15] 100.0% [20] 84270(85.3%) 300(0.3%) for-loop .../use-places/src/core/simplify.rkt:93:2 for-loop [25] 99.6% -------------------------------------------------------------------- ??? [15] 100.0% [21] 5446(5.5%) 0(0.0%) find-matches ...-places/src/core/simplify.rkt:84:0 for-loop [26] 100.0% -------------------------------------------------------------------- ??? [16] 100.0% [22] 2164(2.2%) 0(0.0%) ??? ...t-7.2/collects/racket/private/kw.rkt:594:14 ??? [28] 56.4% ??? [27] 43.6% -------------------------------------------------------------------- loop [17] 100.0% [23] 660(0.7%) 0(0.0%) for-loop ...se-places/src/core/extraction.rkt:29:4 for-loop [29] 100.0% -------------------------------------------------------------------- precompute-phase [19] 100.0% [24] 334(0.3%) 0(0.0%) for-loop ...use-places/src/core/simplify.rkt:102:2 set-precompute! [30] 100.0% -------------------------------------------------------------------- for-loop [20] 100.0% [25] 83970(85.0%) 618(0.6%) for-loop .../use-places/src/core/simplify.rkt:96:4 merge-egraph-nodes! [31] 47.4% dedup-children! [54] 47.3% mk-enode-rec! [33] 3.0% pattern-substitute [35] 1.5% -------------------------------------------------------------------- for-loop [26] 50.0% find-matches [21] 50.0% [26] 5446(5.5%) 0(0.0%) for-loop .../use-places/src/core/simplify.rkt:86:8 for-loop [26] 50.0% match-e [32] 50.0% -------------------------------------------------------------------- for-loop [11] 9.7% ??? [16] 25.7% ??? [22] 26.4% ??? [14] 38.2% [27] 3582(3.6%) 334(0.3%) ??? ...tract/private/arrow-higher-order.rkt:360:33 sample-multi-bounded [34] 38.2% ival-mult [37] 26.4% mk-ival [38] 16.4% location-do [39] 9.7% -------------------------------------------------------------------- ??? [22] 100.0% [28] 1220(1.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:364:33 ival-sub [36] 100.0% -------------------------------------------------------------------- for-loop [23] 100.0% [29] 660(0.7%) 336(0.3%) for-loop ...e-places/src/core/extraction.rkt:37:16 for-loop [41] 49.1% -------------------------------------------------------------------- for-loop [24] 100.0% [30] 334(0.3%) 0(0.0%) set-precompute! ...ces/src/core/simplify.rkt:110:0 for-loop [40] 100.0% -------------------------------------------------------------------- merge-egraph-nodes! [31] 2.8% for-loop [45] 4.6% for-loop [25] 92.6% [31] 39800(40.3%) 594(0.6%) merge-egraph-nodes! ...s/src/core/egraph.rkt:145:0 loop! [42] 71.3% update-leader! [43] 14.8% for-loop [45] 4.9% dedup-children! [54] 2.8% merge-egraph-nodes! [31] 2.8% enode-merge! [51] 0.9% -------------------------------------------------------------------- for-loop [58] 28.4% for-loop [26] 71.6% [32] 5446(5.5%) 600(0.6%) match-e ...bie/use-places/src/core/ematch.rkt:39:0 for-loop [44] 87.1% ??? [61] 4.6% -------------------------------------------------------------------- loop [55] 32.0% for-loop [25] 68.0% [33] 2528(2.6%) 300(0.3%) mk-enode-rec! ...-places/src/core/egraph.rkt:117:0 loop [55] 50.9% for-loop [48] 18.9% hash-has-key? [49] 17.9% do-curry [59] 6.4% -------------------------------------------------------------------- ??? [27] 100.0% [34] 1370(1.4%) 610(0.6%) sample-multi-bounded ...places/src/points.rkt:15:0 random-ranges [47] 55.5% -------------------------------------------------------------------- pattern-substitute [35] 42.4% for-loop [25] 57.6% [35] 1266(1.3%) 930(0.9%) pattern-substitute ...es/src/core/matcher.rkt:46:0 pattern-substitute [35] 42.4% variable? [52] 8.8% -------------------------------------------------------------------- ??? [28] 100.0% [36] 1220(1.2%) 380(0.4%) ival-sub ...e/use-places/src/biginterval.rkt:107:0 bfsub [46] 68.9% -------------------------------------------------------------------- ??? [27] 100.0% [37] 944(1.0%) 346(0.4%) ival-mult .../use-places/src/biginterval.rkt:119:0 bfsub [46] 63.3% -------------------------------------------------------------------- ??? [27] 100.0% [38] 588(0.6%) 0(0.0%) mk-ival ...bie/use-places/src/biginterval.rkt:65:0 bf [50] 100.0% -------------------------------------------------------------------- ??? [27] 100.0% [39] 346(0.4%) 346(0.4%) location-do ...ie/use-places/src/programs.rkt:64:0 -------------------------------------------------------------------- set-precompute! [30] 100.0% [40] 334(0.3%) 0(0.0%) for-loop ...use-places/src/core/simplify.rkt:112:2 setfindf [53] 100.0% -------------------------------------------------------------------- for-loop [29] 100.0% [41] 324(0.3%) 324(0.3%) for-loop ...e-places/src/core/extraction.rkt:41:23 -------------------------------------------------------------------- loop [55] 26.9% merge-egraph-nodes! [31] 73.1% [42] 29520(29.9%) 7374(7.5%) loop! ...erbie/use-places/src/core/enode.rkt:194:2 custom-set-union [69] 36.7% loop [55] 32.4% set [56] 12.9% update-en-expr [81] 2.8% -------------------------------------------------------------------- merge-egraph-nodes! [31] 100.0% [43] 6686(6.8%) 0(0.0%) update-leader! ...places/src/core/egraph.rkt:213:0 for-loop [57] 100.0% -------------------------------------------------------------------- match-e [32] 100.0% [44] 5146(5.2%) 1510(1.5%) for-loop ...e/use-places/src/core/ematch.rkt:52:11 for-loop [58] 61.7% do-curry [59] 11.6% loop [55] 6.0% step [67] 2.9% -------------------------------------------------------------------- merge-egraph-nodes! [31] 100.0% [45] 4170(4.2%) 0(0.0%) for-loop ...e/use-places/src/core/egraph.rkt:199:4 merge-egraph-nodes! [31] 92.9% dedup-children! [54] 7.1% -------------------------------------------------------------------- ival-mult [37] 41.6% ival-sub [36] 58.4% [46] 1438(1.5%) 312(0.3%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [60] 57.6% ??? [62] 20.7% -------------------------------------------------------------------- sample-multi-bounded [34] 100.0% [47] 760(0.8%) 0(0.0%) random-ranges ...e/use-places/src/common.rkt:171:0 build--> [63] 60.5% cons/c [66] 39.5% -------------------------------------------------------------------- mk-enode-rec! [33] 100.0% [48] 658(0.7%) 658(0.7%) for-loop .../use-places/src/core/egraph.rkt:109:10 -------------------------------------------------------------------- mk-enode-rec! [33] 100.0% [49] 602(0.6%) 602(0.6%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 -------------------------------------------------------------------- mk-ival [38] 100.0% [50] 588(0.6%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [60] 51.0% ??? [62] 49.0% -------------------------------------------------------------------- merge-egraph-nodes! [31] 100.0% [51] 356(0.4%) 0(0.0%) enode-merge! ...se-places/src/core/enode.rkt:131:0 adopt-enode! [64] 100.0% -------------------------------------------------------------------- pattern-substitute [35] 100.0% [52] 336(0.3%) 0(0.0%) variable? ...se-places/src/syntax/syntax.rkt:729:0 ??? [61] 100.0% -------------------------------------------------------------------- for-loop [40] 100.0% [53] 334(0.3%) 0(0.0%) setfindf ...herbie/use-places/src/common.rkt:130:0 for-loop [65] 100.0% -------------------------------------------------------------------- for-loop [45] 0.7% merge-egraph-nodes! [31] 4.6% for-loop [25] 94.7% [54] 41966(42.5%) 0(0.0%) dedup-children! ...places/src/core/enode.rkt:202:0 loop [68] 97.8% loop [71] 2.2% -------------------------------------------------------------------- for-loop [44] 0.1% mk-enode-rec! [33] 9.8% loop! [42] 12.0% loop [55] 78.1% [55] 19652(19.9%) 2562(2.6%) loop ...-7.2/collects/racket/private/map.rkt:40:19 loop [55] 78.1% loop! [42] 10.5% mk-enode-rec! [33] 7.4% -------------------------------------------------------------------- loop! [42] 100.0% [56] 7712(7.8%) 7712(7.8%) set ...collects/racket/private/set-types.rkt:981:0 -------------------------------------------------------------------- update-leader! [43] 100.0% [57] 6686(6.8%) 310(0.3%) for-loop ...e/use-places/src/core/egraph.rkt:218:6 hash-update! [73] 57.4% for-loop [70] 37.9% -------------------------------------------------------------------- for-loop [44] 100.0% [58] 4222(4.3%) 596(0.6%) for-loop ...e/use-places/src/core/ematch.rkt:58:37 match-e [32] 70.9% ??? [72] 15.0% -------------------------------------------------------------------- mk-enode-rec! [33] 17.9% loop [10] 32.6% for-loop [44] 49.5% [59] 1814(1.8%) 1814(1.8%) do-curry ...-7.2/collects/racket/function.rkt:71:2 -------------------------------------------------------------------- bf [50] 26.6% bfsub [46] 73.4% [60] 1128(1.1%) 1128(1.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 -------------------------------------------------------------------- variable? [52] 35.8% match-e [32] 64.2% [61] 938(0.9%) 938(0.9%) ??? ...contract/private/arrow-val-first.rkt:390:18 -------------------------------------------------------------------- bf [50] 49.1% bfsub [46] 50.9% [62] 586(0.6%) 586(0.6%) ??? /opt/racket-7.2/collects/ffi/unsafe.rkt:905:4 -------------------------------------------------------------------- random-ranges [47] 100.0% [63] 460(0.5%) 460(0.5%) build--> ...act/private/arrow-val-first.rkt:1088:0 -------------------------------------------------------------------- enode-merge! [51] 100.0% [64] 356(0.4%) 0(0.0%) adopt-enode! ...se-places/src/core/enode.rkt:109:0 custom-set-union [69] 100.0% -------------------------------------------------------------------- setfindf [53] 100.0% [65] 334(0.3%) 334(0.3%) for-loop ...herbie/use-places/src/common.rkt:131:2 -------------------------------------------------------------------- random-ranges [47] 100.0% [66] 300(0.3%) 300(0.3%) cons/c .../racket/contract/private/guts.rkt:504:15 -------------------------------------------------------------------- for-loop [44] 100.0% [67] 300(0.3%) 300(0.3%) step ...ket-7.2/collects/racket/function.rkt:145:9 -------------------------------------------------------------------- dedup-children! [54] 10.3% loop [68] 89.7% [68] 41034(41.5%) 41034(41.5%) loop ...racket-7.2/collects/racket/list.rkt:434:17 loop [68] 89.7% -------------------------------------------------------------------- adopt-enode! [64] 3.1% loop! [42] 96.9% [69] 11532(11.7%) 4812(4.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [74] 55.7% for-loop [77] 2.6% -------------------------------------------------------------------- for-loop [57] 100.0% [70] 2536(2.6%) 0(0.0%) for-loop ...e/use-places/src/core/egraph.rkt:219:8 hash-update! [73] 100.0% -------------------------------------------------------------------- dedup-children! [54] 13.2% loop [71] 86.8% [71] 932(0.9%) 0(0.0%) loop ...racket-7.2/collects/racket/list.rkt:417:34 loop [71] 86.8% loop [75] 13.2% -------------------------------------------------------------------- for-loop [58] 100.0% [72] 632(0.6%) 324(0.3%) ??? .../herbie/use-places/src/core/ematch.rkt:43:5 for-loop [76] 48.7% -------------------------------------------------------------------- loop [13] 4.3% for-loop [70] 38.1% for-loop [57] 57.6% [73] 6662(6.7%) 286(0.3%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [78] 95.7% -------------------------------------------------------------------- custom-set-union [69] 100.0% [74] 6422(6.5%) 3544(3.6%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [79] 44.8% -------------------------------------------------------------------- loop [71] 100.0% [75] 932(0.9%) 932(0.9%) loop (unknown source) -------------------------------------------------------------------- ??? [72] 100.0% [76] 308(0.3%) 308(0.3%) for-loop ...ie/use-places/src/core/ematch.rkt:44:7 -------------------------------------------------------------------- custom-set-union [69] 100.0% [77] 298(0.3%) 298(0.3%) for-loop ...cts/racket/private/set-types.rkt:152:2 -------------------------------------------------------------------- hash-update! [73] 100.0% [78] 6376(6.5%) 600(0.6%) ??? ...erbie/use-places/src/core/egraph.rkt:221:24 for-loop [80] 90.6% -------------------------------------------------------------------- for-loop [74] 100.0% [79] 2878(2.9%) 2878(2.9%) for-loop ...cts/racket/private/set-types.rkt:178:5 -------------------------------------------------------------------- ??? [78] 100.0% [80] 5776(5.8%) 5476(5.5%) for-loop .../use-places/src/core/egraph.rkt:222:26 update-en-expr [81] 5.2% -------------------------------------------------------------------- for-loop [80] 15.4% loop! [42] 84.6% [81] 1948(2.0%) 1948(2.0%) update-en-expr ...places/src/core/egraph.rkt:207:0 --------------------------------------------------------------------