Profiling results ----------------- Total cpu time observed: 21032ms (out of 21428ms) Number of samples taken: 67 (once every 314ms) ======================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================== ??? [6] 100.0% [1] 21032(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ------------------------------------------------------------------------ matcher [39] 100.0% [2] 360(1.7%) 0(0.0%) ??? ...s/herbie/master/src/core/matcher.rkt:130:11 for-loop [5] 50.0% for-loop [4] 50.0% ------------------------------------------------------------------------ profile-thunk16 [1] 100.0% [3] 21032(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [6] 100.0% ------------------------------------------------------------------------ ??? [2] 100.0% [4] 360(1.7%) 0(0.0%) for-loop ...rbie/master/src/core/matcher.rkt:106:4 foldl [64] 100.0% ------------------------------------------------------------------------ ??? [2] 100.0% [5] 360(1.7%) 0(0.0%) for-loop ...bie/master/src/core/matcher.rkt:132:15 matcher [39] 100.0% ------------------------------------------------------------------------ for-loop [101] 3.0% run [3] 48.5% [6] 21032(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 48.5% run-improve47 [7] 35.4% prepare-points [8] 9.0% errors [98] 1.9% infer-double-representation [62] 1.5% oracle-error [10] 1.5% precision->real [9] 1.0% eval-errors [11] 0.7% ??? [72] 0.5% ------------------------------------------------------------------------ ??? [6] 100.0% [7] 15124(71.9%) 0(0.0%) run-improve47 ...bie/master/src/mainloop.rkt:342:0 for-loop [12] 100.0% ------------------------------------------------------------------------ ??? [6] 100.0% [8] 3796(18.0%) 0(0.0%) prepare-points ...rbie/master/src/points.rkt:146:0 loop [13] 100.0% ------------------------------------------------------------------------ ??? [6] 100.0% [9] 650(3.1%) 0(0.0%) precision->real ...e/master/src/programs.rkt:92:33 infer-representation [87] 100.0% ------------------------------------------------------------------------ ??? [6] 100.0% [10] 612(2.9%) 0(0.0%) oracle-error ...herbie/master/src/points.rkt:188:0 for-loop [14] 100.0% ------------------------------------------------------------------------ ??? [6] 100.0% [11] 300(1.4%) 0(0.0%) eval-errors .../herbie/master/src/points.rkt:179:0 for-loop [15] 100.0% ------------------------------------------------------------------------ run-improve47 [7] 100.0% [12] 15124(71.9%) 0(0.0%) for-loop ...s/herbie/master/src/mainloop.rkt:359:4 run-iter! [16] 100.0% ------------------------------------------------------------------------ prepare-points [8] 100.0% [13] 3796(18.0%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:122:4 loop [17] 49.7% ??? [18] 41.0% infer-representation [87] 9.2% ------------------------------------------------------------------------ oracle-error [10] 100.0% [14] 612(2.9%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:189:2 loop [58] 100.0% ------------------------------------------------------------------------ eval-errors [11] 100.0% [15] 300(1.4%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:181:2 infer-double-representation [62]100.0% ------------------------------------------------------------------------ for-loop [12] 100.0% [16] 15124(71.9%) 0(0.0%) run-iter! .../herbie/master/src/mainloop.rkt:323:0 simplify! [19] 91.2% finalize-iter! [20] 4.2% gen-rewrites! [21] 2.4% choose-best-alt! [22] 2.2% ------------------------------------------------------------------------ loop [13] 100.0% [17] 1888(9.0%) 0(0.0%) loop ...ightlies/herbie/master/src/points.rkt:81:2 ??? [72] 83.6% ??? [56] 16.4% ------------------------------------------------------------------------ loop [13] 100.0% [18] 1558(7.4%) 0(0.0%) ??? ...ightlies/herbie/master/src/points.rkt:106:2 ??? [80] 80.0% ??? [86] 20.0% ------------------------------------------------------------------------ run-iter! [16] 100.0% [19] 13792(65.6%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:220:0 ??? [23] 97.6% for-loop [25] 2.4% ------------------------------------------------------------------------ run-iter! [16] 100.0% [20] 640(3.0%) 0(0.0%) finalize-iter! ...ie/master/src/mainloop.rkt:274:0 ??? [56] 100.0% ------------------------------------------------------------------------ run-iter! [16] 100.0% [21] 360(1.7%) 0(0.0%) gen-rewrites! ...bie/master/src/mainloop.rkt:179:0 for-loop [24] 100.0% ------------------------------------------------------------------------ run-iter! [16] 100.0% [22] 332(1.6%) 0(0.0%) choose-best-alt! .../master/src/mainloop.rkt:114:0 ??? [56] 100.0% ------------------------------------------------------------------------ simplify! [19] 100.0% [23] 13466(64.0%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:26:0 for-loop [26] 68.9% one-iter [29] 28.8% loop [28] 2.3% ------------------------------------------------------------------------ gen-rewrites! [21] 100.0% [24] 360(1.7%) 0(0.0%) for-loop .../herbie/master/src/mainloop.rkt:187:11 rewrite-expression-head20 [27] 100.0% ------------------------------------------------------------------------ for-loop [25] 50.0% simplify! [19] 50.0% [25] 326(1.6%) 326(1.6%) for-loop ...s/herbie/master/src/mainloop.rkt:247:6 for-loop [25] 50.0% ------------------------------------------------------------------------ ??? [23] 100.0% [26] 9284(44.1%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:33:2 one-iter [29] 100.0% ------------------------------------------------------------------------ for-loop [24] 100.0% [27] 360(1.7%) 0(0.0%) rewrite-expression-head20 ...core/matcher.rkt:87:0 rewriter [30] 100.0% ------------------------------------------------------------------------ ??? [23] 100.0% [28] 308(1.5%) 0(0.0%) loop .../herbie/master/src/core/simplify.rkt:104:2 for-loop [31] 100.0% ------------------------------------------------------------------------ ??? [23] 29.4% for-loop [26] 70.6% [29] 13158(62.6%) 0(0.0%) one-iter ...rbie/master/src/core/simplify.rkt:65:0 find-matches [32] 70.6% for-loop [33] 15.0% for-loop [34] 12.1% for-loop [36] 2.4% ------------------------------------------------------------------------ matcher [39] 50.0% rewrite-expression-head20 [27] 50.0% [30] 360(1.7%) 0(0.0%) rewriter ...erbie/master/src/core/matcher.rkt:90:2 for-loop [35] 100.0% ------------------------------------------------------------------------ loop [28] 100.0% [31] 308(1.5%) 308(1.5%) for-loop ...bie/master/src/core/simplify.rkt:110:4 ------------------------------------------------------------------------ one-iter [29] 100.0% [32] 9286(44.2%) 0(0.0%) find-matches .../master/src/core/simplify.rkt:55:0 for-loop [37] 100.0% ------------------------------------------------------------------------ one-iter [29] 100.0% [33] 1970(9.4%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:67:2 for-loop [38] 100.0% ------------------------------------------------------------------------ one-iter [29] 100.0% [34] 1590(7.6%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:75:2 update-leader! [48] 100.0% ------------------------------------------------------------------------ rewriter [30] 100.0% [35] 360(1.7%) 0(0.0%) for-loop ...erbie/master/src/core/matcher.rkt:92:4 matcher [39] 100.0% ------------------------------------------------------------------------ one-iter [29] 100.0% [36] 312(1.5%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:72:2 set-precompute! [40] 100.0% ------------------------------------------------------------------------ for-loop [37] 48.4% find-matches [32] 51.6% [37] 9286(44.2%) 664(3.2%) for-loop ...rbie/master/src/core/simplify.rkt:57:8 for-loop [37] 48.4% match-e [41] 46.4% ------------------------------------------------------------------------ for-loop [33] 100.0% [38] 1970(9.4%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:70:4 merge-egraph-nodes! [42] 48.7% dedup-children! [43] 18.2% substitute-e [45] 16.5% mk-enode! [44] 16.5% ------------------------------------------------------------------------ for-loop [5] 33.3% for-loop [35] 66.7% [39] 360(1.7%) 0(0.0%) matcher ...erbie/master/src/core/matcher.rkt:118:2 ??? [2] 66.7% rewriter [30] 33.3% ------------------------------------------------------------------------ for-loop [36] 100.0% [40] 312(1.5%) 0(0.0%) set-precompute! ...ster/src/core/simplify.rkt:79:0 for-loop [46] 100.0% ------------------------------------------------------------------------ for-loop [55] 36.0% for-loop [37] 64.0% [41] 8622(41.0%) 0(0.0%) match-e .../herbie/master/src/core/ematch.rkt:39:0 for-loop [47] 77.6% constant? [78] 10.1% variable? [49] 6.0% make-sequence [54] 3.5% ??? [56] 2.9% ------------------------------------------------------------------------ merge-egraph-nodes! [42] 23.1% for-loop [38] 76.9% [42] 960(4.6%) 0(0.0%) merge-egraph-nodes! ...r/src/core/egraph.rkt:143:0 update-leader! [48] 65.4% merge-egraph-nodes! [42] 23.1% loop! [68] 11.5% ------------------------------------------------------------------------ for-loop [38] 100.0% [43] 358(1.7%) 0(0.0%) dedup-children! ...master/src/core/enode.rkt:195:0 loop [50] 100.0% ------------------------------------------------------------------------ for-loop [38] 100.0% [44] 326(1.6%) 0(0.0%) mk-enode! ...erbie/master/src/core/egraph.rkt:97:0 hash-has-key? [51] 100.0% ------------------------------------------------------------------------ for-loop [38] 33.3% for-loop [52] 66.7% [45] 326(1.6%) 0(0.0%) substitute-e ...ie/master/src/core/ematch.rkt:64:0 for-loop [52] 66.7% ??? [56] 33.3% ------------------------------------------------------------------------ set-precompute! [40] 100.0% [46] 312(1.5%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:81:2 setfindf [53] 100.0% ------------------------------------------------------------------------ match-e [41] 100.0% [47] 8014(38.1%) 1532(7.3%) for-loop ...erbie/master/src/core/ematch.rkt:52:11 for-loop [55] 74.8% loop [58] 4.1% foldr [60] 3.8% cartesian-product [61] 3.7% ------------------------------------------------------------------------ merge-egraph-nodes! [42] 28.3% for-loop [34] 71.7% [48] 2218(10.5%) 0(0.0%) update-leader! ...master/src/core/egraph.rkt:211:0 for-loop [57] 100.0% ------------------------------------------------------------------------ match-e [41] 100.0% [49] 1546(7.4%) 0(0.0%) variable? ...ie/master/src/syntax/syntax.rkt:722:0 value? [84] 59.1% ??? [56] 40.9% ------------------------------------------------------------------------ dedup-children! [43] 3.3% loop [50] 96.7% [50] 358(1.7%) 358(1.7%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [50] 96.7% ------------------------------------------------------------------------ mk-enode! [44] 100.0% [51] 326(1.6%) 326(1.6%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ------------------------------------------------------------------------ substitute-e [45] 100.0% [52] 326(1.6%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:73:24 substitute-e [45] 100.0% ------------------------------------------------------------------------ for-loop [46] 100.0% [53] 312(1.5%) 0(0.0%) setfindf ...ies/herbie/master/src/common.rkt:142:0 for-loop [59] 100.0% ------------------------------------------------------------------------ match-e [41] 100.0% [54] 300(1.4%) 300(1.4%) make-sequence ...ects/racket/private/for.rkt:528:2 ------------------------------------------------------------------------ for-loop [47] 100.0% [55] 6446(30.6%) 628(3.0%) for-loop ...erbie/master/src/core/ematch.rkt:58:37 match-e [41] 75.7% ??? [63] 14.6% ------------------------------------------------------------------------ loop [17] 10.9% substitute-e [45] 11.5% choose-best-alt! [22] 11.7% match-e [41] 21.1% variable? [49] 22.3% finalize-iter! [20] 22.6% [56] 2838(13.5%) 1866(8.9%) ??? ...contract/private/arrow-val-first.rkt:388:18 for-loop [65] 22.6% ??? [67] 11.7% ------------------------------------------------------------------------ update-leader! [48] 100.0% [57] 2218(10.5%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:216:6 hash-update! [71] 84.9% for-loop [66] 15.1% ------------------------------------------------------------------------ for-loop [47] 0.6% loop! [68] 0.9% for-loop [14] 48.0% loop [58] 50.6% [58] 1276(6.1%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [58] 50.6% infer-double-representation [62] 24.5% ??? [70] 23.5% loop! [68] 0.9% foldl [64] 0.6% ------------------------------------------------------------------------ setfindf [53] 100.0% [59] 312(1.5%) 0(0.0%) for-loop ...ies/herbie/master/src/common.rkt:143:2 constant? [78] 100.0% ------------------------------------------------------------------------ for-loop [47] 100.0% [60] 302(1.4%) 0(0.0%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [69] 100.0% ------------------------------------------------------------------------ for-loop [47] 100.0% [61] 300(1.4%) 300(1.4%) cartesian-product ...ollects/racket/list.rkt:822:0 ------------------------------------------------------------------------ for-loop [15] 19.4% loop [58] 20.2% ??? [6] 60.4% [62] 1544(7.3%) 0(0.0%) infer-double-representation .../src/float.rkt:22:0 for-loop [73] 100.0% ------------------------------------------------------------------------ for-loop [55] 100.0% [63] 1242(5.9%) 300(1.4%) ??? ...lies/herbie/master/src/core/ematch.rkt:43:5 for-loop [74] 75.8% ------------------------------------------------------------------------ loop [58] 48.0% for-loop [4] 52.0% [64] 692(3.3%) 0(0.0%) foldl ....0/collects/racket/private/list.rkt:229:4 ??? [75] 52.0% merge2 [77] 48.0% ------------------------------------------------------------------------ ??? [56] 100.0% [65] 640(3.0%) 0(0.0%) for-loop ...bie/master/src/core/alt-table.rkt:56:2 errors [98] 100.0% ------------------------------------------------------------------------ for-loop [57] 100.0% [66] 334(1.6%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:217:8 hash-update! [71] 100.0% ------------------------------------------------------------------------ ??? [56] 100.0% [67] 332(1.6%) 0(0.0%) ??? ...s/herbie/master/src/core/alt-table.rkt:59:0 ??? [80] 100.0% ------------------------------------------------------------------------ loop [58] 50.0% merge-egraph-nodes! [42] 50.0% [68] 332(1.6%) 0(0.0%) loop! ...es/herbie/master/src/core/enode.rkt:187:2 loop [58] 50.0% set [76] 50.0% ------------------------------------------------------------------------ foldr [60] 100.0% [69] 302(1.4%) 302(1.4%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 ------------------------------------------------------------------------ loop [58] 100.0% [70] 300(1.4%) 0(0.0%) ??? ...ghtlies/herbie/master/src/points.rkt:190:26 ??? [72] 100.0% ------------------------------------------------------------------------ for-loop [66] 15.1% for-loop [57] 84.9% [71] 2218(10.5%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [79] 100.0% ------------------------------------------------------------------------ ??? [6] 13.3% ??? [70] 13.9% loop [17] 72.9% [72] 2166(10.3%) 300(1.4%) ??? ...htlies/herbie/master/src/programs.rkt:108:2 ??? [81] 59.2% ??? [80] 13.7% real->precision [83] 13.3% ------------------------------------------------------------------------ infer-double-representation [62]100.0% [73] 1544(7.3%) 630(3.0%) for-loop ...tlies/herbie/master/src/float.rkt:17:3 ??? [92] 39.6% return/no-unsupplied [94] 19.6% ------------------------------------------------------------------------ ??? [63] 100.0% [74] 942(4.5%) 308(1.5%) for-loop ...herbie/master/src/core/ematch.rkt:44:7 constant? [78] 67.3% ------------------------------------------------------------------------ foldl [64] 100.0% [75] 360(1.7%) 0(0.0%) ??? ...ies/herbie/master/src/core/matcher.rkt:26:7 core651 [82] 100.0% ------------------------------------------------------------------------ loop! [68] 100.0% [76] 332(1.6%) 332(1.6%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------ foldl [64] 100.0% [77] 332(1.6%) 332(1.6%) merge2 ...s/herbie/master/src/core/ematch.rkt:24:0 ------------------------------------------------------------------------ for-loop [59] 11.2% for-loop [74] 22.7% match-e [41] 66.1% [78] 2788(13.3%) 0(0.0%) constant? ...ie/master/src/syntax/syntax.rkt:719:0 value? [84] 100.0% ------------------------------------------------------------------------ hash-update! [71] 100.0% [79] 2218(10.5%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:219:24 for-loop [85] 100.0% ------------------------------------------------------------------------ ??? [72] 15.8% ??? [67] 17.7% ??? [18] 66.5% [80] 1874(8.9%) 314(1.5%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [88] 49.7% argmin [90] 17.7% mk-ival [91] 15.8% ------------------------------------------------------------------------ ??? [72] 100.0% [81] 1282(6.1%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [86] 100.0% ------------------------------------------------------------------------ ??? [75] 100.0% [82] 360(1.7%) 0(0.0%) core651 ...acket/contract/private/arr-i.rkt:918:19 ??? [89] 100.0% ------------------------------------------------------------------------ ??? [72] 100.0% [83] 288(1.4%) 0(0.0%) real->precision ...e/master/src/programs.rkt:87:33 infer-representation [87] 100.0% ------------------------------------------------------------------------ variable? [49] 24.7% constant? [78] 75.3% [84] 3702(17.6%) 3702(17.6%) value? .../herbie/master/src/syntax/types.rkt:18:0 ------------------------------------------------------------------------ ??? [79] 100.0% [85] 2218(10.5%) 2218(10.5%) for-loop ...rbie/master/src/core/egraph.rkt:220:26 ------------------------------------------------------------------------ ??? [18] 19.6% ??? [81] 80.4% [86] 1594(7.6%) 312(1.5%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-sub [93] 43.0% ival-div [95] 37.4% ------------------------------------------------------------------------ real->precision [83] 22.4% loop [13] 27.2% precision->real [9] 50.5% [87] 1288(6.1%) 662(3.1%) infer-representation .../master/src/float.rkt:15:0 return/no-unsupplied [94] 26.2% ??? [92] 22.4% ------------------------------------------------------------------------ ??? [80] 100.0% [88] 932(4.4%) 932(4.4%) sample-multi-bounded ...master/src/points.rkt:15:0 ------------------------------------------------------------------------ core651 [82] 100.0% [89] 360(1.7%) 360(1.7%) ??? ...s/racket/contract/private/arr-i.rkt:1249:27 ------------------------------------------------------------------------ ??? [80] 100.0% [90] 332(1.6%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 ??? [96] 100.0% ------------------------------------------------------------------------ ??? [80] 100.0% [91] 296(1.4%) 0(0.0%) mk-ival .../herbie/master/src/biginterval.rkt:57:0 bf [97] 100.0% ------------------------------------------------------------------------ infer-representation [87] 32.0% for-loop [73] 68.0% [92] 900(4.3%) 900(4.3%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ------------------------------------------------------------------------ ??? [86] 100.0% [93] 686(3.3%) 0(0.0%) ival-sub ...erbie/master/src/biginterval.rkt:100:0 bfdiv [99] 100.0% ------------------------------------------------------------------------ for-loop [73] 47.2% infer-representation [87] 52.8% [94] 640(3.0%) 302(1.4%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [100] 52.8% ------------------------------------------------------------------------ ??? [86] 100.0% [95] 596(2.8%) 298(1.4%) ival-div ...erbie/master/src/biginterval.rkt:148:0 bfdiv [99] 50.0% ------------------------------------------------------------------------ argmin [90] 100.0% [96] 332(1.6%) 0(0.0%) ??? ...tlies/herbie/master/src/mainloop.rkt:111:10 errors [98] 100.0% ------------------------------------------------------------------------ mk-ival [91] 100.0% [97] 296(1.4%) 296(1.4%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 ------------------------------------------------------------------------ ??? [96] 15.3% for-loop [65] 29.5% ??? [6] 55.2% [98] 2172(10.3%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:205:0 for-loop [101] 100.0% ------------------------------------------------------------------------ ival-div [95] 30.3% ival-sub [93] 69.7% [99] 984(4.7%) 0(0.0%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [102] 69.7% ??? [103] 30.3% ------------------------------------------------------------------------ return/no-unsupplied [94] 100.0% [100] 338(1.6%) 338(1.6%) filter ...0/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------ errors [98] 100.0% [101] 2172(10.3%) 302(1.4%) for-loop ...ies/herbie/master/src/points.rkt:207:2 ??? [6] 86.1% ------------------------------------------------------------------------ bfdiv [99] 100.0% [102] 686(3.3%) 686(3.3%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------------ bfdiv [99] 100.0% [103] 298(1.4%) 298(1.4%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ------------------------------------------------------------------------