Profiling results ----------------- Total cpu time observed: 30406ms (out of 30844ms) Number of samples taken: 93 (once every 327ms) ======================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================= ??? [5] 100.0% [1] 30406(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ----------------------------------------------------------------------- matcher [53] 100.0% [2] 324(1.1%) 0(0.0%) ??? ...s/herbie/master/src/core/matcher.rkt:130:11 for-loop [4] 100.0% ----------------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 30406(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% ----------------------------------------------------------------------- ??? [2] 100.0% [4] 324(1.1%) 0(0.0%) for-loop ...bie/master/src/core/matcher.rkt:132:15 matcher [53] 100.0% ----------------------------------------------------------------------- for-loop [97] 1.1% run [3] 49.4% [5] 30406(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.4% run-improve47 [6] 40.2% prepare-points [7] 7.2% errors [92] 0.8% oracle-error [8] 0.6% eval-errors [9] 0.6% precision->real [75] 0.4% ??? [20] 0.4% infer-double-representation [10] 0.4% ----------------------------------------------------------------------- ??? [5] 100.0% [6] 24570(80.8%) 0(0.0%) run-improve47 ...bie/master/src/mainloop.rkt:342:0 simplify! [19] 67.2% for-loop [11] 32.8% ----------------------------------------------------------------------- ??? [5] 100.0% [7] 4376(14.4%) 0(0.0%) prepare-points ...rbie/master/src/points.rkt:146:0 loop [12] 100.0% ----------------------------------------------------------------------- ??? [5] 100.0% [8] 384(1.3%) 0(0.0%) oracle-error ...herbie/master/src/points.rkt:188:0 for-loop [13] 100.0% ----------------------------------------------------------------------- ??? [5] 100.0% [9] 370(1.2%) 0(0.0%) eval-errors .../herbie/master/src/points.rkt:179:0 for-loop [14] 100.0% ----------------------------------------------------------------------- ??? [5] 100.0% [10] 320(1.1%) 0(0.0%) infer-double-representation .../src/float.rkt:22:0 for-loop [15] 100.0% ----------------------------------------------------------------------- run-improve47 [6] 100.0% [11] 8070(26.5%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:359:4 run-iter! [16] 100.0% ----------------------------------------------------------------------- prepare-points [7] 100.0% [12] 4376(14.4%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:122:4 loop [17] 53.7% ??? [18] 46.3% ----------------------------------------------------------------------- oracle-error [8] 100.0% [13] 384(1.3%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:189:2 loop [67] 100.0% ----------------------------------------------------------------------- eval-errors [9] 100.0% [14] 370(1.2%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:181:2 ??? [20] 100.0% ----------------------------------------------------------------------- infer-double-representation [10]100.0% [15] 320(1.1%) 320(1.1%) for-loop ...tlies/herbie/master/src/float.rkt:17:3 ----------------------------------------------------------------------- for-loop [11] 100.0% [16] 8070(26.5%) 0(0.0%) run-iter! .../herbie/master/src/mainloop.rkt:323:0 simplify! [19] 92.0% gen-rewrites! [21] 4.0% finalize-iter! [22] 4.0% ----------------------------------------------------------------------- loop [12] 100.0% [17] 2350(7.7%) 324(1.1%) loop ...ightlies/herbie/master/src/points.rkt:81:2 ??? [20] 86.2% ----------------------------------------------------------------------- loop [12] 100.0% [18] 2026(6.7%) 0(0.0%) ??? ...ightlies/herbie/master/src/points.rkt:106:2 ??? [28] 100.0% ----------------------------------------------------------------------- run-iter! [16] 31.0% run-improve47 [6] 69.0% [19] 23926(78.7%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:220:0 ??? [23] 100.0% ----------------------------------------------------------------------- ??? [5] 12.7% for-loop [14] 13.5% loop [17] 73.8% [20] 2744(9.0%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:108:2 ??? [24] 73.8% real->precision [25] 26.2% ----------------------------------------------------------------------- run-iter! [16] 100.0% [21] 324(1.1%) 0(0.0%) gen-rewrites! ...bie/master/src/mainloop.rkt:179:0 for-loop [26] 100.0% ----------------------------------------------------------------------- run-iter! [16] 100.0% [22] 320(1.1%) 0(0.0%) finalize-iter! ...ie/master/src/mainloop.rkt:274:0 ??? [69] 100.0% ----------------------------------------------------------------------- simplify! [19] 100.0% [23] 23926(78.7%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:26:0 for-loop [27] 86.0% one-iter [32] 9.7% loop [29] 4.3% ----------------------------------------------------------------------- ??? [20] 100.0% [24] 2026(6.7%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [28] 50.8% ??? [30] 49.2% ----------------------------------------------------------------------- ??? [20] 100.0% [25] 718(2.4%) 0(0.0%) real->precision ...e/master/src/programs.rkt:87:33 infer-representation [84] 100.0% ----------------------------------------------------------------------- gen-rewrites! [21] 100.0% [26] 324(1.1%) 0(0.0%) for-loop .../herbie/master/src/mainloop.rkt:187:11 rewrite-expression-head20 [31] 100.0% ----------------------------------------------------------------------- ??? [23] 100.0% [27] 20574(67.7%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:33:2 one-iter [32] 100.0% ----------------------------------------------------------------------- ??? [24] 33.7% ??? [18] 66.3% [28] 3056(10.1%) 316(1.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [33] 56.0% ival-mult [34] 33.7% ----------------------------------------------------------------------- ??? [23] 100.0% [29] 1024(3.4%) 0(0.0%) loop .../herbie/master/src/core/simplify.rkt:104:2 for-loop [35] 100.0% ----------------------------------------------------------------------- ??? [24] 100.0% [30] 996(3.3%) 294(1.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [36] 37.1% ival-sub [37] 33.3% ----------------------------------------------------------------------- for-loop [26] 100.0% [31] 324(1.1%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [38] 100.0% ----------------------------------------------------------------------- ??? [23] 10.2% for-loop [27] 89.8% [32] 22902(75.3%) 0(0.0%) one-iter ...rbie/master/src/core/simplify.rkt:65:0 find-matches [39] 62.7% for-loop [40] 34.6% for-loop [44] 2.8% ----------------------------------------------------------------------- ??? [28] 100.0% [33] 1710(5.6%) 0(0.0%) sample-multi-bounded ...master/src/points.rkt:15:0 random-ranges [42] 80.5% return/no-unsupplied [94] 19.5% ----------------------------------------------------------------------- ??? [28] 100.0% [34] 1030(3.4%) 0(0.0%) ival-mult ...rbie/master/src/biginterval.rkt:112:0 bfadd [41] 100.0% ----------------------------------------------------------------------- loop [29] 100.0% [35] 1024(3.4%) 360(1.2%) for-loop ...bie/master/src/core/simplify.rkt:110:4 for-loop [43] 64.8% ----------------------------------------------------------------------- ??? [30] 100.0% [36] 370(1.2%) 0(0.0%) ival-add ...herbie/master/src/biginterval.rkt:94:0 bfadd [41] 100.0% ----------------------------------------------------------------------- ??? [30] 100.0% [37] 332(1.1%) 0(0.0%) ival-sub ...erbie/master/src/biginterval.rkt:100:0 bfadd [41] 100.0% ----------------------------------------------------------------------- matcher [53] 50.0% rewrite-expression-head20 [31] 50.0% [38] 324(1.1%) 0(0.0%) rewriter ...erbie/master/src/core/matcher.rkt:90:2 for-loop [46] 50.0% *rules* [45] 50.0% ----------------------------------------------------------------------- one-iter [32] 100.0% [39] 14354(47.2%) 0(0.0%) find-matches .../master/src/core/simplify.rkt:55:0 for-loop [47] 100.0% ----------------------------------------------------------------------- one-iter [32] 100.0% [40] 7918(26.0%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:67:2 for-loop [48] 100.0% ----------------------------------------------------------------------- ival-sub [37] 19.2% ival-add [36] 21.4% ival-mult [34] 59.5% [41] 1732(5.7%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 ??? [49] 63.4% new-mpfr [50] 36.6% ----------------------------------------------------------------------- sample-multi-bounded [33] 100.0% [42] 1376(4.5%) 1376(4.5%) random-ranges ...erbie/master/src/common.rkt:183:0 ----------------------------------------------------------------------- for-loop [35] 100.0% [43] 664(2.2%) 338(1.1%) for-loop ...ie/master/src/core/simplify.rkt:114:16 for-loop [52] 49.1% ----------------------------------------------------------------------- one-iter [32] 100.0% [44] 630(2.1%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:72:2 set-precompute! [51] 100.0% ----------------------------------------------------------------------- rewriter [38] 100.0% [45] 324(1.1%) 0(0.0%) *rules* ...erbie/master/src/syntax/rules.rkt:666:0 for-loop [62] 100.0% ----------------------------------------------------------------------- rewriter [38] 100.0% [46] 324(1.1%) 0(0.0%) for-loop ...erbie/master/src/core/matcher.rkt:92:4 matcher [53] 100.0% ----------------------------------------------------------------------- for-loop [47] 48.9% find-matches [39] 51.1% [47] 14354(47.2%) 970(3.2%) for-loop ...rbie/master/src/core/simplify.rkt:57:8 for-loop [47] 48.9% match-e [54] 46.6% ----------------------------------------------------------------------- for-loop [40] 100.0% [48] 7918(26.0%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:70:4 merge-egraph-nodes! [55] 67.9% dedup-children! [59] 16.4% substitute-e [56] 8.1% mk-enode! [71] 7.6% ----------------------------------------------------------------------- bfadd [41] 100.0% [49] 1098(3.6%) 1098(3.6%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ----------------------------------------------------------------------- bfadd [41] 100.0% [50] 634(2.1%) 634(2.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ----------------------------------------------------------------------- for-loop [44] 100.0% [51] 630(2.1%) 0(0.0%) set-precompute! ...ster/src/core/simplify.rkt:79:0 for-loop [57] 100.0% ----------------------------------------------------------------------- for-loop [43] 100.0% [52] 326(1.1%) 326(1.1%) for-loop ...ie/master/src/core/simplify.rkt:118:23 ----------------------------------------------------------------------- for-loop [4] 50.0% for-loop [46] 50.0% [53] 324(1.1%) 0(0.0%) matcher ...erbie/master/src/core/matcher.rkt:118:2 ??? [2] 50.0% rewriter [38] 50.0% ----------------------------------------------------------------------- for-loop [66] 28.8% for-loop [47] 71.2% [54] 13384(44.0%) 2768(9.1%) match-e .../herbie/master/src/core/ematch.rkt:39:0 for-loop [58] 75.5% constant? [90] 5.0% variable? [60] 3.9% ??? [69] 1.4% ----------------------------------------------------------------------- for-loop [65] 2.1% merge-egraph-nodes! [55] 8.2% for-loop [48] 89.8% [55] 5376(17.7%) 0(0.0%) merge-egraph-nodes! ...r/src/core/egraph.rkt:143:0 loop! [73] 53.4% update-leader! [61] 16.0% dedup-children! [59] 14.4% merge-egraph-nodes! [55] 8.2% for-loop [62] 6.1% for-loop [65] 2.1% ----------------------------------------------------------------------- for-loop [63] 25.9% for-loop [48] 74.1% [56] 644(2.1%) 334(1.1%) substitute-e ...ie/master/src/core/ematch.rkt:64:0 for-loop [63] 74.1% ----------------------------------------------------------------------- set-precompute! [51] 100.0% [57] 630(2.1%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:81:2 setfindf [64] 100.0% ----------------------------------------------------------------------- match-e [54] 100.0% [58] 11852(39.0%) 1896(6.2%) for-loop ...erbie/master/src/core/ematch.rkt:52:11 for-loop [66] 52.7% loop [67] 34.1% curried [76] 1.4% ----------------------------------------------------------------------- merge-egraph-nodes! [55] 43.4% for-loop [48] 56.6% [59] 2294(7.5%) 0(0.0%) dedup-children! ...master/src/core/enode.rkt:195:0 loop [68] 100.0% ----------------------------------------------------------------------- match-e [54] 100.0% [60] 1560(5.1%) 0(0.0%) variable? ...ie/master/src/syntax/syntax.rkt:722:0 ??? [69] 62.9% value? [96] 37.1% ----------------------------------------------------------------------- merge-egraph-nodes! [55] 100.0% [61] 1022(3.4%) 0(0.0%) update-leader! ...master/src/core/egraph.rkt:211:0 for-loop [70] 100.0% ----------------------------------------------------------------------- *rules* [45] 49.8% merge-egraph-nodes! [55] 50.2% [62] 650(2.1%) 650(2.1%) for-loop ...lies/herbie/master/src/common.rkt:74:9 ----------------------------------------------------------------------- substitute-e [56] 100.0% [63] 644(2.1%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:73:24 substitute-e [56] 51.9% mk-enode! [71] 48.1% ----------------------------------------------------------------------- for-loop [57] 100.0% [64] 630(2.1%) 298(1.0%) setfindf ...ies/herbie/master/src/common.rkt:142:0 for-loop [72] 52.7% ----------------------------------------------------------------------- merge-egraph-nodes! [55] 100.0% [65] 334(1.1%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:197:4 merge-egraph-nodes! [55] 100.0% ----------------------------------------------------------------------- for-loop [58] 100.0% [66] 6908(22.7%) 644(2.1%) for-loop ...erbie/master/src/core/ematch.rkt:58:37 match-e [54] 90.6% ??? [79] 4.7% ----------------------------------------------------------------------- for-loop [58] 0.8% loop! [73] 1.8% for-loop [13] 6.7% loop [67] 90.7% [67] 5726(18.8%) 1990(6.5%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [67] 90.7% precision->real [75] 6.7% loop! [73] 1.8% curried [76] 0.1% foldl [74] 0.1% ----------------------------------------------------------------------- dedup-children! [59] 3.0% loop [68] 97.0% [68] 2294(7.5%) 2294(7.5%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [68] 97.0% ----------------------------------------------------------------------- finalize-iter! [22] 17.3% match-e [54] 29.6% variable? [60] 53.1% [69] 1850(6.1%) 1194(3.9%) ??? ...contract/private/arrow-val-first.rkt:388:18 ??? [78] 18.2% for-loop [80] 17.3% ----------------------------------------------------------------------- update-leader! [61] 100.0% [70] 1022(3.4%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:216:6 hash-update! [86] 64.6% for-loop [77] 35.4% ----------------------------------------------------------------------- for-loop [63] 34.1% for-loop [48] 65.9% [71] 910(3.0%) 300(1.0%) mk-enode! ...erbie/master/src/core/egraph.rkt:97:0 hash-has-key? [81] 34.1% new-enode [82] 33.0% ----------------------------------------------------------------------- setfindf [64] 100.0% [72] 332(1.1%) 0(0.0%) for-loop ...ies/herbie/master/src/common.rkt:143:2 constant? [90] 100.0% ----------------------------------------------------------------------- loop [67] 21.4% merge-egraph-nodes! [55] 78.6% [73] 3032(10.0%) 326(1.1%) loop! ...es/herbie/master/src/core/enode.rkt:187:2 custom-set-union [83] 62.2% loop [67] 21.4% set [87] 11.0% ----------------------------------------------------------------------- loop [67] 100.0% [74] 1726(5.7%) 362(1.2%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [85] 79.0% ----------------------------------------------------------------------- ??? [5] 48.2% loop [67] 51.8% [75] 742(2.4%) 0(0.0%) precision->real ...e/master/src/programs.rkt:92:33 infer-representation [84] 100.0% ----------------------------------------------------------------------- loop [67] 49.5% for-loop [58] 50.5% [76] 658(2.2%) 658(2.2%) curried ...-7.0/collects/racket/function.rkt:71:18 ----------------------------------------------------------------------- for-loop [70] 100.0% [77] 362(1.2%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:217:8 hash-update! [86] 100.0% ----------------------------------------------------------------------- ??? [69] 100.0% [78] 336(1.1%) 336(1.1%) ??? ...ects/racket/contract/private/guts.rkt:746:8 ----------------------------------------------------------------------- for-loop [66] 100.0% [79] 326(1.1%) 0(0.0%) ??? ...lies/herbie/master/src/core/ematch.rkt:43:5 for-loop [88] 100.0% ----------------------------------------------------------------------- ??? [69] 100.0% [80] 320(1.1%) 0(0.0%) for-loop ...bie/master/src/core/alt-table.rkt:56:2 atab-add-altn [89] 100.0% ----------------------------------------------------------------------- mk-enode! [71] 100.0% [81] 310(1.0%) 310(1.0%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ----------------------------------------------------------------------- mk-enode! [71] 100.0% [82] 300(1.0%) 0(0.0%) new-enode ...herbie/master/src/core/enode.rkt:94:0 set [87] 100.0% ----------------------------------------------------------------------- loop! [73] 100.0% [83] 2040(6.7%) 308(1.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [91] 66.9% for-loop [95] 18.0% ----------------------------------------------------------------------- real->precision [25] 49.2% precision->real [75] 50.8% [84] 1460(4.8%) 1076(3.5%) infer-representation .../master/src/float.rkt:15:0 return/no-unsupplied [94] 26.3% ----------------------------------------------------------------------- foldl [74] 100.0% [85] 1364(4.5%) 1364(4.5%) merge2 ...s/herbie/master/src/core/ematch.rkt:24:0 ----------------------------------------------------------------------- for-loop [77] 35.4% for-loop [70] 64.6% [86] 1022(3.4%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [93] 100.0% ----------------------------------------------------------------------- new-enode [82] 31.1% loop! [73] 68.9% [87] 966(3.2%) 966(3.2%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------------- ??? [79] 100.0% [88] 326(1.1%) 0(0.0%) for-loop ...herbie/master/src/core/ematch.rkt:44:7 constant? [90] 100.0% ----------------------------------------------------------------------- for-loop [80] 100.0% [89] 320(1.1%) 0(0.0%) atab-add-altn ...ster/src/core/alt-table.rkt:203:0 errors [92] 100.0% ----------------------------------------------------------------------- for-loop [88] 16.9% for-loop [72] 17.2% match-e [54] 65.8% [90] 1926(6.3%) 0(0.0%) constant? ...ie/master/src/syntax/syntax.rkt:719:0 value? [96] 100.0% ----------------------------------------------------------------------- custom-set-union [83] 100.0% [91] 1364(4.5%) 634(2.1%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [99] 53.5% ----------------------------------------------------------------------- atab-add-altn [89] 31.2% ??? [5] 68.8% [92] 1026(3.4%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:205:0 for-loop [97] 100.0% ----------------------------------------------------------------------- hash-update! [86] 100.0% [93] 1022(3.4%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:219:24 for-loop [98] 100.0% ----------------------------------------------------------------------- sample-multi-bounded [33] 46.5% infer-representation [84] 53.5% [94] 718(2.4%) 384(1.3%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [100] 46.5% ----------------------------------------------------------------------- custom-set-union [83] 100.0% [95] 368(1.2%) 368(1.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ----------------------------------------------------------------------- variable? [60] 23.1% constant? [90] 76.9% [96] 2504(8.2%) 2504(8.2%) value? .../herbie/master/src/syntax/types.rkt:18:0 ----------------------------------------------------------------------- errors [92] 100.0% [97] 1026(3.4%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:207:2 ??? [5] 100.0% ----------------------------------------------------------------------- ??? [93] 100.0% [98] 1022(3.4%) 1022(3.4%) for-loop ...rbie/master/src/core/egraph.rkt:220:26 ----------------------------------------------------------------------- for-loop [91] 100.0% [99] 730(2.4%) 730(2.4%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------------- return/no-unsupplied [94] 100.0% [100] 334(1.1%) 334(1.1%) filter ...0/collects/racket/private/list.rkt:256:2 -----------------------------------------------------------------------