Profiling results ----------------- Total cpu time observed: 17930ms (out of 18436ms) Number of samples taken: 56 (once every 320ms) ===================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ===================================================================== ??? [5] 100.0% [1] 17930(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% --------------------------------------------------------------------- matcher [51] 100.0% [2] 288(1.6%) 0(0.0%) ??? ...rbie/interface2/src/core/matcher.rkt:130:11 for-loop [4] 100.0% --------------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 17930(100.0%) 0(0.0%) run ...et-7.2/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% --------------------------------------------------------------------- ??? [2] 100.0% [4] 288(1.6%) 0(0.0%) for-loop ...interface2/src/core/matcher.rkt:132:15 matcher [51] 100.0% --------------------------------------------------------------------- for-loop [89] 0.6% run [3] 49.7% [5] 17930(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.7% run-improve47 [6] 37.3% prepare-points [7] 10.1% get-final-combination [9] 0.9% oracle-error [10] 0.9% errors [86] 0.6% ulp-difference [8] 0.6% --------------------------------------------------------------------- ??? [5] 100.0% [6] 13382(74.6%) 0(0.0%) run-improve47 ...interface2/src/mainloop.rkt:345:0 simplify! [19] 50.5% for-loop [11] 49.5% --------------------------------------------------------------------- ??? [5] 100.0% [7] 3606(20.1%) 0(0.0%) prepare-points .../interface2/src/points.rkt:146:0 loop [12] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [8] 322(1.8%) 322(1.8%) ulp-difference ...ie/interface2/src/float.rkt:20:0 --------------------------------------------------------------------- ??? [5] 100.0% [9] 312(1.7%) 0(0.0%) get-final-combination ...e2/src/mainloop.rkt:370:0 ??? [13] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [10] 308(1.7%) 0(0.0%) oracle-error ...ie/interface2/src/points.rkt:168:0 for-loop [14] 100.0% --------------------------------------------------------------------- run-improve47 [6] 100.0% [11] 6628(37.0%) 0(0.0%) for-loop ...rbie/interface2/src/mainloop.rkt:364:4 run-iter! [15] 100.0% --------------------------------------------------------------------- prepare-points [7] 100.0% [12] 3606(20.1%) 334(1.9%) loop ...ies/herbie/interface2/src/points.rkt:122:4 ??? [17] 46.0% loop [18] 36.2% do-curry [73] 8.5% --------------------------------------------------------------------- get-final-combination [9] 100.0% [13] 312(1.7%) 0(0.0%) ??? ...erbie/interface2/src/core/simplify.rkt:22:0 ??? [24] 100.0% --------------------------------------------------------------------- oracle-error [10] 100.0% [14] 308(1.7%) 0(0.0%) for-loop ...herbie/interface2/src/points.rkt:169:2 loop [16] 100.0% --------------------------------------------------------------------- for-loop [11] 100.0% [15] 6628(37.0%) 0(0.0%) run-iter! ...bie/interface2/src/mainloop.rkt:326:0 simplify! [19] 91.2% finalize-iter! [22] 4.5% gen-rewrites! [23] 4.3% --------------------------------------------------------------------- for-loop [14] 16.0% loop! [57] 23.5% loop [16] 60.5% [16] 1922(10.7%) 0(0.0%) loop ...-7.2/collects/racket/private/map.rkt:40:19 loop [16] 60.5% loop! [57] 23.5% ??? [21] 16.0% --------------------------------------------------------------------- loop [12] 100.0% [17] 1660(9.3%) 0(0.0%) ??? ...lies/herbie/interface2/src/points.rkt:106:2 ??? [20] 100.0% --------------------------------------------------------------------- loop [12] 100.0% [18] 1306(7.3%) 0(0.0%) loop ...lies/herbie/interface2/src/points.rkt:81:2 ??? [21] 100.0% --------------------------------------------------------------------- run-iter! [15] 47.2% run-improve47 [6] 52.8% [19] 12796(71.4%) 0(0.0%) simplify! ...bie/interface2/src/mainloop.rkt:223:0 ??? [24] 100.0% --------------------------------------------------------------------- ??? [17] 100.0% [20] 1660(9.3%) 652(3.6%) ??? ...tract/private/arrow-higher-order.rkt:360:33 sample-multi-bounded [26] 60.7% --------------------------------------------------------------------- loop [16] 19.1% loop [18] 80.9% [21] 1614(9.0%) 0(0.0%) ??? ...es/herbie/interface2/src/programs.rkt:115:2 ??? [25] 80.9% ??? [27] 19.1% --------------------------------------------------------------------- run-iter! [15] 100.0% [22] 298(1.7%) 0(0.0%) finalize-iter! ...nterface2/src/mainloop.rkt:277:0 ??? [71] 100.0% --------------------------------------------------------------------- run-iter! [15] 100.0% [23] 288(1.6%) 0(0.0%) gen-rewrites! ...interface2/src/mainloop.rkt:182:0 for-loop [28] 100.0% --------------------------------------------------------------------- ??? [13] 2.4% simplify! [19] 97.6% [24] 13108(73.1%) 0(0.0%) ??? ...erbie/interface2/src/core/simplify.rkt:26:0 for-loop [29] 95.4% one-iter [34] 4.6% --------------------------------------------------------------------- ??? [21] 100.0% [25] 1306(7.3%) 0(0.0%) ??? ...t-7.2/collects/racket/private/kw.rkt:594:14 ??? [30] 100.0% --------------------------------------------------------------------- ??? [20] 100.0% [26] 1008(5.6%) 0(0.0%) sample-multi-bounded ...rface2/src/points.rkt:15:0 random-ranges [31] 59.5% for-loop [32] 40.5% --------------------------------------------------------------------- ??? [21] 100.0% [27] 308(1.7%) 308(1.7%) ??? ...cket-7.2/collects/racket/function.rkt:93:12 --------------------------------------------------------------------- gen-rewrites! [23] 100.0% [28] 288(1.6%) 0(0.0%) for-loop ...bie/interface2/src/mainloop.rkt:190:11 rewrite-expression-head20 [33]100.0% --------------------------------------------------------------------- ??? [24] 100.0% [29] 12508(69.8%) 0(0.0%) for-loop .../interface2/src/core/simplify.rkt:35:2 one-iter [34] 100.0% --------------------------------------------------------------------- ??? [25] 100.0% [30] 1306(7.3%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:364:33 ival-add [35] 51.1% ival-div [36] 48.9% --------------------------------------------------------------------- sample-multi-bounded [26] 100.0% [31] 600(3.3%) 0(0.0%) random-ranges ...e/interface2/src/common.rkt:183:0 cons/c [37] 100.0% --------------------------------------------------------------------- sample-multi-bounded [26] 100.0% [32] 408(2.3%) 408(2.3%) for-loop .../herbie/interface2/src/points.rkt:23:4 --------------------------------------------------------------------- for-loop [28] 100.0% [33] 288(1.6%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [38] 100.0% --------------------------------------------------------------------- ??? [24] 4.6% for-loop [29] 95.4% [34] 13108(73.1%) 0(0.0%) one-iter .../interface2/src/core/simplify.rkt:72:0 for-loop [39] 66.8% find-matches [40] 30.8% for-loop [43] 2.4% --------------------------------------------------------------------- ??? [30] 100.0% [35] 668(3.7%) 0(0.0%) ival-add ...ie/interface2/src/biginterval.rkt:93:0 bfdiv [41] 100.0% --------------------------------------------------------------------- ??? [30] 100.0% [36] 638(3.6%) 328(1.8%) ival-div ...e/interface2/src/biginterval.rkt:147:0 bfdiv [41] 48.6% --------------------------------------------------------------------- random-ranges [31] 100.0% [37] 600(3.3%) 0(0.0%) cons/c .../racket/contract/private/guts.rkt:504:15 coerce-contract [42] 100.0% --------------------------------------------------------------------- rewrite-expression-head20 [33] 25.0% matcher [51] 75.0% [38] 288(1.6%) 288(1.6%) rewriter ...e/interface2/src/core/matcher.rkt:90:2 for-loop [44] 75.0% --------------------------------------------------------------------- one-iter [34] 100.0% [39] 8760(48.9%) 0(0.0%) for-loop .../interface2/src/core/simplify.rkt:74:2 for-loop [45] 100.0% --------------------------------------------------------------------- one-iter [34] 100.0% [40] 4036(22.5%) 0(0.0%) find-matches ...erface2/src/core/simplify.rkt:62:0 for-loop [46] 100.0% --------------------------------------------------------------------- ival-div [36] 31.7% ival-add [35] 68.3% [41] 978(5.5%) 0(0.0%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:821:4 ??? [47] 68.3% new-mpfr [50] 31.7% --------------------------------------------------------------------- cons/c [37] 100.0% [42] 600(3.3%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:308:0 coerce-contract/f [48] 100.0% --------------------------------------------------------------------- one-iter [34] 100.0% [43] 312(1.7%) 0(0.0%) for-loop .../interface2/src/core/simplify.rkt:82:2 reduce-to-single! [49] 100.0% --------------------------------------------------------------------- rewriter [38] 100.0% [44] 288(1.6%) 0(0.0%) for-loop ...e/interface2/src/core/matcher.rkt:92:4 matcher [51] 100.0% --------------------------------------------------------------------- for-loop [39] 100.0% [45] 8760(48.9%) 0(0.0%) for-loop .../interface2/src/core/simplify.rkt:77:4 merge-egraph-nodes! [52] 78.2% dedup-children! [66] 11.6% mk-enode! [70] 6.5% substitute-e [55] 3.7% --------------------------------------------------------------------- for-loop [46] 50.0% find-matches [40] 50.0% [46] 4036(22.5%) 0(0.0%) for-loop .../interface2/src/core/simplify.rkt:64:8 for-loop [46] 50.0% match-e [53] 50.0% --------------------------------------------------------------------- bfdiv [41] 100.0% [47] 668(3.7%) 668(3.7%) ??? /opt/racket-7.2/collects/ffi/unsafe.rkt:905:4 --------------------------------------------------------------------- coerce-contract [42] 100.0% [48] 600(3.3%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:373:0 coerce-simple-value [54] 100.0% --------------------------------------------------------------------- for-loop [43] 100.0% [49] 312(1.7%) 0(0.0%) reduce-to-single! ...ce2/src/core/egraph.rkt:318:0 for-loop [56] 100.0% --------------------------------------------------------------------- bfdiv [41] 100.0% [50] 310(1.7%) 310(1.7%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 --------------------------------------------------------------------- for-loop [4] 50.0% for-loop [44] 50.0% [51] 288(1.6%) 0(0.0%) matcher ...e/interface2/src/core/matcher.rkt:118:2 ??? [2] 50.0% rewriter [38] 50.0% --------------------------------------------------------------------- for-loop [59] 3.6% merge-egraph-nodes! [52] 4.6% for-loop [45] 91.8% [52] 6848(38.2%) 1564(8.7%) merge-egraph-nodes! ...2/src/core/egraph.rkt:143:0 loop! [57] 29.8% for-loop [59] 17.8% update-leader! [60] 13.5% dedup-children! [66] 7.4% merge-egraph-nodes! [52] 4.6% enode-merge! [64] 4.1% --------------------------------------------------------------------- for-loop [68] 16.2% for-loop [46] 83.8% [53] 4036(22.5%) 1336(7.5%) match-e ...bie/interface2/src/core/ematch.rkt:39:0 for-loop [58] 46.5% make-sequence [62] 8.3% constant? [61] 7.1% variable? [65] 3.0% ??? [71] 2.0% --------------------------------------------------------------------- coerce-contract/f [48] 100.0% [54] 600(3.3%) 600(3.3%) coerce-simple-value ...ract/private/guts.rkt:386:0 --------------------------------------------------------------------- for-loop [45] 100.0% [55] 326(1.8%) 0(0.0%) substitute-e ...nterface2/src/core/ematch.rkt:64:0 for-loop [63] 100.0% --------------------------------------------------------------------- reduce-to-single! [49] 100.0% [56] 312(1.7%) 0(0.0%) for-loop ...e/interface2/src/core/egraph.rkt:319:8 constant? [61] 100.0% --------------------------------------------------------------------- loop [16] 37.3% merge-egraph-nodes! [52] 62.7% [57] 2162(12.1%) 314(1.8%) loop! ...erbie/interface2/src/core/enode.rkt:195:2 loop [16] 37.3% set [67] 30.1% custom-set-union [78] 25.3% --------------------------------------------------------------------- match-e [53] 100.0% [58] 2078(11.6%) 854(4.8%) for-loop ...e/interface2/src/core/ematch.rkt:52:11 for-loop [68] 41.1% ??? [75] 11.8% do-curry [73] 6.0% step [76] 5.9% --------------------------------------------------------------------- merge-egraph-nodes! [52] 100.0% [59] 1466(8.2%) 0(0.0%) for-loop ...e/interface2/src/core/egraph.rkt:197:4 dedup-children! [66] 66.6% merge-egraph-nodes! [52] 33.4% --------------------------------------------------------------------- merge-egraph-nodes! [52] 100.0% [60] 1116(6.2%) 0(0.0%) update-leader! ...rface2/src/core/egraph.rkt:211:0 for-loop [69] 100.0% --------------------------------------------------------------------- match-e [53] 48.0% for-loop [56] 52.0% [61] 600(3.3%) 0(0.0%) constant? ...nterface2/src/syntax/syntax.rkt:719:0 value? [72] 100.0% --------------------------------------------------------------------- match-e [53] 100.0% [62] 334(1.9%) 334(1.9%) make-sequence ...ects/racket/private/for.rkt:530:2 --------------------------------------------------------------------- substitute-e [55] 100.0% [63] 326(1.8%) 0(0.0%) for-loop ...e/interface2/src/core/ematch.rkt:73:24 mk-enode! [70] 100.0% --------------------------------------------------------------------- merge-egraph-nodes! [52] 100.0% [64] 280(1.6%) 0(0.0%) enode-merge! ...nterface2/src/core/enode.rkt:132:0 adopt-enode! [74] 100.0% --------------------------------------------------------------------- match-e [53] 100.0% [65] 246(1.4%) 0(0.0%) variable? ...nterface2/src/syntax/syntax.rkt:722:0 ??? [71] 100.0% --------------------------------------------------------------------- merge-egraph-nodes! [52] 27.4% for-loop [59] 35.6% for-loop [45] 37.0% [66] 2740(15.3%) 0(0.0%) dedup-children! ...rface2/src/core/enode.rkt:203:0 loop [77] 100.0% --------------------------------------------------------------------- loop! [57] 100.0% [67] 1300(7.3%) 1300(7.3%) set ...collects/racket/private/set-types.rkt:981:0 --------------------------------------------------------------------- for-loop [58] 100.0% [68] 1224(6.8%) 0(0.0%) for-loop ...e/interface2/src/core/ematch.rkt:58:37 match-e [53] 100.0% --------------------------------------------------------------------- update-leader! [60] 100.0% [69] 1116(6.2%) 0(0.0%) for-loop ...e/interface2/src/core/egraph.rkt:216:6 hash-update! [82] 73.8% for-loop [81] 26.2% --------------------------------------------------------------------- for-loop [63] 36.3% for-loop [45] 63.7% [70] 898(5.0%) 572(3.2%) mk-enode! ...e/interface2/src/core/egraph.rkt:97:0 hash-has-key? [79] 36.3% --------------------------------------------------------------------- match-e [53] 30.6% variable? [65] 31.4% finalize-iter! [22] 38.0% [71] 784(4.4%) 486(2.7%) ??? ...contract/private/arrow-val-first.rkt:390:18 atab-add-altns [80] 38.0% --------------------------------------------------------------------- constant? [61] 100.0% [72] 600(3.3%) 600(3.3%) value? ...bie/interface2/src/syntax/types.rkt:18:0 --------------------------------------------------------------------- for-loop [58] 44.8% loop [12] 55.2% [73] 554(3.1%) 554(3.1%) do-curry ...-7.2/collects/racket/function.rkt:71:2 --------------------------------------------------------------------- enode-merge! [64] 100.0% [74] 280(1.6%) 0(0.0%) adopt-enode! ...nterface2/src/core/enode.rkt:110:0 custom-set-union [78] 100.0% --------------------------------------------------------------------- for-loop [58] 100.0% [75] 246(1.4%) 246(1.4%) ??? ...ket-7.2/collects/racket/function.rkt:138:13 --------------------------------------------------------------------- for-loop [58] 100.0% [76] 244(1.4%) 244(1.4%) step ...ket-7.2/collects/racket/function.rkt:145:9 --------------------------------------------------------------------- dedup-children! [66] 2.5% loop [77] 97.5% [77] 2740(15.3%) 2740(15.3%) loop ...racket-7.2/collects/racket/list.rkt:434:17 loop [77] 97.5% --------------------------------------------------------------------- adopt-enode! [74] 33.8% loop! [57] 66.2% [78] 828(4.6%) 280(1.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [83] 66.2% --------------------------------------------------------------------- mk-enode! [70] 100.0% [79] 326(1.8%) 326(1.8%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 --------------------------------------------------------------------- ??? [71] 100.0% [80] 298(1.7%) 0(0.0%) atab-add-altns ...ace2/src/core/alt-table.rkt:49:0 atab-add-altn [84] 100.0% --------------------------------------------------------------------- for-loop [69] 100.0% [81] 292(1.6%) 0(0.0%) for-loop ...e/interface2/src/core/egraph.rkt:217:8 hash-update! [82] 100.0% --------------------------------------------------------------------- for-loop [81] 26.2% for-loop [69] 73.8% [82] 1116(6.2%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [85] 100.0% --------------------------------------------------------------------- custom-set-union [78] 100.0% [83] 548(3.1%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [87] 100.0% --------------------------------------------------------------------- atab-add-altns [80] 100.0% [84] 298(1.7%) 0(0.0%) atab-add-altn ...ace2/src/core/alt-table.rkt:203:0 errors [86] 100.0% --------------------------------------------------------------------- hash-update! [82] 100.0% [85] 1116(6.2%) 0(0.0%) ??? ...erbie/interface2/src/core/egraph.rkt:219:24 for-loop [88] 100.0% --------------------------------------------------------------------- atab-add-altn [84] 48.1% ??? [5] 51.9% [86] 620(3.5%) 0(0.0%) errors ...s/herbie/interface2/src/points.rkt:185:0 for-loop [89] 51.9% eval-prog [90] 48.1% --------------------------------------------------------------------- for-loop [83] 100.0% [87] 548(3.1%) 548(3.1%) for-loop ...cts/racket/private/set-types.rkt:178:5 --------------------------------------------------------------------- ??? [85] 100.0% [88] 1116(6.2%) 1116(6.2%) for-loop .../interface2/src/core/egraph.rkt:220:26 --------------------------------------------------------------------- errors [86] 100.0% [89] 322(1.8%) 0(0.0%) for-loop ...herbie/interface2/src/points.rkt:187:2 ??? [5] 100.0% --------------------------------------------------------------------- errors [86] 100.0% [90] 298(1.7%) 0(0.0%) eval-prog ...rbie/interface2/src/programs.rkt:83:0 temp85_0 [91] 100.0% --------------------------------------------------------------------- eval-prog [90] 100.0% [91] 298(1.7%) 0(0.0%) temp85_0 (unknown source) compile15 [92] 100.0% --------------------------------------------------------------------- temp85_0 [91] 100.0% [92] 298(1.7%) 0(0.0%) compile15 (unknown source) temp91_0 [93] 100.0% --------------------------------------------------------------------- compile15 [92] 100.0% [93] 298(1.7%) 0(0.0%) temp91_0 (unknown source) temp118_0 [94] 100.0% --------------------------------------------------------------------- temp91_0 [93] 100.0% [94] 298(1.7%) 0(0.0%) temp118_0 (unknown source) expand-capturing-lifts [95] 100.0% --------------------------------------------------------------------- temp118_0 [94] 100.0% [95] 298(1.7%) 0(0.0%) expand-capturing-lifts (unknown source) lambda-clause-expander [96] 100.0% --------------------------------------------------------------------- expand-capturing-lifts [95] 100.0% [96] 298(1.7%) 0(0.0%) lambda-clause-expander (unknown source) finish-bodys [97] 100.0% --------------------------------------------------------------------- lambda-clause-expander [96] 33.3% for-loop [98] 66.7% [97] 298(1.7%) 0(0.0%) finish-bodys (unknown source) for-loop [98] 100.0% --------------------------------------------------------------------- for-loop [98] 40.0% finish-bodys [97] 60.0% [98] 298(1.7%) 298(1.7%) for-loop (unknown source) finish-bodys [97] 40.0% for-loop [98] 40.0% ---------------------------------------------------------------------