Profiling results ----------------- Total cpu time observed: 32060ms (out of 32536ms) Number of samples taken: 96 (once every 334ms) ======================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================== ??? [8] 100.0% [1] 32060(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ------------------------------------------------------------------------ ??? [8] 100.0% [2] 362(1.1%) 0(0.0%) get-final-combination ...er/src/mainloop.rkt:365:0 argmin [4] 100.0% ------------------------------------------------------------------------ profile-thunk16 [1] 100.0% [3] 32060(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [8] 100.0% ------------------------------------------------------------------------ get-final-combination [2] 100.0% [4] 362(1.1%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 ??? [5] 100.0% ------------------------------------------------------------------------ argmin [4] 100.0% [5] 362(1.1%) 0(0.0%) ??? ...tlies/herbie/master/src/mainloop.rkt:111:10 errors [6] 100.0% ------------------------------------------------------------------------ ??? [5] 26.8% ??? [8] 73.2% [6] 1350(4.2%) 0(0.0%) errors ...tlies/herbie/master/src/points.rkt:205:0 for-loop [7] 100.0% ------------------------------------------------------------------------ errors [6] 100.0% [7] 1350(4.2%) 292(0.9%) for-loop ...ies/herbie/master/src/points.rkt:207:2 ??? [8] 78.4% ------------------------------------------------------------------------ for-loop [7] 1.1% run [3] 49.4% [8] 32060(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.4% run-improve47 [9] 37.8% prepare-points [10] 8.7% errors [6] 1.2% ??? [22] 1.1% oracle-error [11] 0.9% eval-errors [12] 0.5% get-final-combination [2] 0.4% ------------------------------------------------------------------------ ??? [8] 100.0% [9] 24216(75.5%) 0(0.0%) run-improve47 ...bie/master/src/mainloop.rkt:342:0 simplify! [13] 100.0% ------------------------------------------------------------------------ ??? [8] 100.0% [10] 5590(17.4%) 0(0.0%) prepare-points ...rbie/master/src/points.rkt:146:0 loop [14] 100.0% ------------------------------------------------------------------------ ??? [8] 100.0% [11] 602(1.9%) 0(0.0%) oracle-error ...herbie/master/src/points.rkt:188:0 for-loop [15] 100.0% ------------------------------------------------------------------------ ??? [8] 100.0% [12] 302(0.9%) 0(0.0%) eval-errors .../herbie/master/src/points.rkt:179:0 for-loop [16] 100.0% ------------------------------------------------------------------------ run-improve47 [9] 100.0% [13] 24216(75.5%) 0(0.0%) simplify! .../herbie/master/src/mainloop.rkt:220:0 ??? [17] 100.0% ------------------------------------------------------------------------ prepare-points [10] 100.0% [14] 5590(17.4%) 0(0.0%) loop ...ghtlies/herbie/master/src/points.rkt:122:4 loop [18] 65.0% ??? [20] 35.0% ------------------------------------------------------------------------ oracle-error [11] 100.0% [15] 602(1.9%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:189:2 loop [19] 100.0% ------------------------------------------------------------------------ eval-errors [12] 100.0% [16] 302(0.9%) 0(0.0%) for-loop ...ies/herbie/master/src/points.rkt:181:2 ??? [22] 100.0% ------------------------------------------------------------------------ simplify! [13] 100.0% [17] 24216(75.5%) 0(0.0%) ??? ...es/herbie/master/src/core/simplify.rkt:26:0 for-loop [21] 100.0% ------------------------------------------------------------------------ loop [14] 100.0% [18] 3632(11.3%) 0(0.0%) loop ...ightlies/herbie/master/src/points.rkt:81:2 ??? [22] 91.5% ??? [65] 8.5% ------------------------------------------------------------------------ loop! [62] 7.5% for-loop [15] 21.8% loop [19] 70.8% [19] 2766(8.6%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [19] 70.8% infer-double-representation [27] 11.1% ??? [23] 10.7% loop! [62] 7.5% ------------------------------------------------------------------------ loop [14] 100.0% [20] 1958(6.1%) 288(0.9%) ??? ...ightlies/herbie/master/src/points.rkt:106:2 ??? [30] 85.3% ------------------------------------------------------------------------ ??? [17] 100.0% [21] 24216(75.5%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:33:2 one-iter [24] 100.0% ------------------------------------------------------------------------ for-loop [16] 6.5% ??? [8] 22.6% loop [18] 71.0% [22] 4682(14.6%) 0(0.0%) ??? ...htlies/herbie/master/src/programs.rkt:108:2 ??? [25] 43.0% real->precision [26] 29.0% ??? [30] 27.9% ------------------------------------------------------------------------ loop [19] 100.0% [23] 296(0.9%) 0(0.0%) ??? ...ghtlies/herbie/master/src/points.rkt:190:26 infer-double-representation [27]100.0% ------------------------------------------------------------------------ for-loop [21] 100.0% [24] 24216(75.5%) 0(0.0%) one-iter ...rbie/master/src/core/simplify.rkt:65:0 for-loop [28] 60.8% find-matches [29] 35.5% for-loop [34] 2.5% for-loop [35] 1.2% ------------------------------------------------------------------------ ??? [22] 100.0% [25] 2014(6.3%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [31] 66.6% ??? [30] 33.4% ------------------------------------------------------------------------ ??? [22] 100.0% [26] 1360(4.2%) 326(1.0%) real->precision ...e/master/src/programs.rkt:87:33 infer-representation [32] 76.0% ------------------------------------------------------------------------ ??? [23] 49.2% loop [19] 50.8% [27] 602(1.9%) 0(0.0%) infer-double-representation .../src/float.rkt:22:0 for-loop [33] 100.0% ------------------------------------------------------------------------ one-iter [24] 100.0% [28] 14726(45.9%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:67:2 for-loop [36] 100.0% ------------------------------------------------------------------------ one-iter [24] 100.0% [29] 8588(26.8%) 0(0.0%) find-matches .../master/src/core/simplify.rkt:55:0 for-loop [37] 100.0% ------------------------------------------------------------------------ ??? [25] 18.4% ??? [22] 35.8% ??? [20] 45.8% [30] 3650(11.4%) 992(3.1%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [38] 36.7% mk-ival [40] 26.2% ival-mult [42] 9.9% ------------------------------------------------------------------------ ??? [25] 100.0% [31] 1342(4.2%) 334(1.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-sub [39] 75.1% ------------------------------------------------------------------------ real->precision [26] 100.0% [32] 1034(3.2%) 1034(3.2%) infer-representation .../master/src/float.rkt:15:0 ------------------------------------------------------------------------ infer-double-representation [27]100.0% [33] 602(1.9%) 0(0.0%) for-loop ...tlies/herbie/master/src/float.rkt:17:3 return/no-unsupplied [43] 50.8% ??? [44] 49.2% ------------------------------------------------------------------------ one-iter [24] 100.0% [34] 602(1.9%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:72:2 set-precompute! [41] 100.0% ------------------------------------------------------------------------ one-iter [24] 100.0% [35] 300(0.9%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:75:2 update-leader! [64] 100.0% ------------------------------------------------------------------------ for-loop [28] 100.0% [36] 14726(45.9%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:70:4 merge-egraph-nodes! [52] 78.4% dedup-children! [74] 19.5% substitute-e [51] 2.1% ------------------------------------------------------------------------ for-loop [37] 50.0% find-matches [29] 50.0% [37] 8588(26.8%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:57:8 for-loop [37] 50.0% match-e [45] 50.0% ------------------------------------------------------------------------ ??? [30] 100.0% [38] 1338(4.2%) 0(0.0%) sample-multi-bounded ...master/src/points.rkt:15:0 random-ranges [46] 76.7% for-loop [50] 23.3% ------------------------------------------------------------------------ ??? [31] 100.0% [39] 1008(3.1%) 0(0.0%) ival-sub ...erbie/master/src/biginterval.rkt:100:0 bfsub [47] 100.0% ------------------------------------------------------------------------ ??? [30] 100.0% [40] 958(3.0%) 0(0.0%) mk-ival .../herbie/master/src/biginterval.rkt:57:0 bf [48] 100.0% ------------------------------------------------------------------------ for-loop [34] 100.0% [41] 602(1.9%) 0(0.0%) set-precompute! ...ster/src/core/simplify.rkt:79:0 for-loop [49] 100.0% ------------------------------------------------------------------------ ??? [30] 100.0% [42] 362(1.1%) 362(1.1%) ival-mult ...rbie/master/src/biginterval.rkt:112:0 ------------------------------------------------------------------------ for-loop [33] 100.0% [43] 306(1.0%) 306(1.0%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 ------------------------------------------------------------------------ for-loop [33] 100.0% [44] 296(0.9%) 296(0.9%) ??? ...s/racket/contract/private/arr-i.rkt:1252:29 ------------------------------------------------------------------------ for-loop [63] 34.3% for-loop [37] 65.7% [45] 8588(26.8%) 1806(5.6%) match-e .../herbie/master/src/core/ematch.rkt:39:0 for-loop [53] 71.5% constant? [97] 4.6% ??? [65] 3.9% make-sequence [60] 3.5% variable? [57] 2.5% ------------------------------------------------------------------------ sample-multi-bounded [38] 100.0% [46] 1026(3.2%) 0(0.0%) random-ranges ...erbie/master/src/common.rkt:183:0 build--> [55] 69.6% cons/c [58] 30.4% ------------------------------------------------------------------------ ival-sub [39] 100.0% [47] 1008(3.1%) 0(0.0%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:821:4 ??? [54] 100.0% ------------------------------------------------------------------------ mk-ival [40] 100.0% [48] 958(3.0%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [56] 68.9% ??? [54] 31.1% ------------------------------------------------------------------------ set-precompute! [41] 100.0% [49] 602(1.9%) 0(0.0%) for-loop ...rbie/master/src/core/simplify.rkt:81:2 setfindf [61] 50.2% merge-egraph-nodes! [52] 49.8% ------------------------------------------------------------------------ sample-multi-bounded [38] 100.0% [50] 312(1.0%) 312(1.0%) for-loop ...lies/herbie/master/src/points.rkt:23:4 ------------------------------------------------------------------------ for-loop [59] 50.0% for-loop [36] 50.0% [51] 308(1.0%) 0(0.0%) substitute-e ...ie/master/src/core/ematch.rkt:64:0 for-loop [59] 100.0% ------------------------------------------------------------------------ for-loop [66] 0.9% for-loop [49] 2.5% merge-egraph-nodes! [52] 7.7% for-loop [36] 88.8% [52] 11844(36.9%) 0(0.0%) merge-egraph-nodes! ...r/src/core/egraph.rkt:143:0 loop! [62] 46.9% update-leader! [64] 22.0% dedup-children! [74] 14.9% merge-egraph-nodes! [52] 7.7% for-loop [66] 6.0% enode-merge! [72] 2.5% ------------------------------------------------------------------------ match-e [45] 100.0% [53] 7080(22.1%) 2138(6.7%) for-loop ...erbie/master/src/core/ematch.rkt:52:11 for-loop [63] 59.0% foldl [67] 8.4% cp-2 [69] 4.7% cartesian-product [70] 4.3% loop [73] 2.1% ------------------------------------------------------------------------ bf [48] 22.8% bfsub [47] 77.2% [54] 1306(4.1%) 1306(4.1%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ------------------------------------------------------------------------ random-ranges [46] 100.0% [55] 714(2.2%) 0(0.0%) build--> ...act/private/arrow-val-first.rkt:1086:0 coerce-contract [68] 100.0% ------------------------------------------------------------------------ bf [48] 100.0% [56] 660(2.1%) 660(2.1%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------------ match-e [45] 100.0% [57] 634(2.0%) 0(0.0%) variable? ...ie/master/src/syntax/syntax.rkt:722:0 value? [101] 52.7% ??? [65] 47.3% ------------------------------------------------------------------------ random-ranges [46] 100.0% [58] 312(1.0%) 312(1.0%) cons/c .../racket/contract/private/guts.rkt:478:15 ------------------------------------------------------------------------ substitute-e [51] 100.0% [59] 308(1.0%) 308(1.0%) for-loop ...erbie/master/src/core/ematch.rkt:73:24 substitute-e [51] 50.0% ------------------------------------------------------------------------ match-e [45] 100.0% [60] 302(0.9%) 302(0.9%) make-sequence ...ects/racket/private/for.rkt:528:2 ------------------------------------------------------------------------ for-loop [49] 100.0% [61] 302(0.9%) 0(0.0%) setfindf ...ies/herbie/master/src/common.rkt:142:0 for-loop [71] 100.0% ------------------------------------------------------------------------ loop [19] 17.5% merge-egraph-nodes! [52] 82.5% [62] 6184(19.3%) 326(1.0%) loop! ...es/herbie/master/src/core/enode.rkt:187:2 custom-set-union [87] 62.2% loop [19] 17.5% set [76] 12.4% update-en-expr [90] 2.7% ------------------------------------------------------------------------ for-loop [53] 100.0% [63] 5246(16.4%) 0(0.0%) for-loop ...erbie/master/src/core/ematch.rkt:58:37 match-e [45] 94.3% ??? [84] 5.7% ------------------------------------------------------------------------ for-loop [35] 9.6% merge-egraph-nodes! [52] 90.4% [64] 3128(9.8%) 0(0.0%) update-leader! ...master/src/core/egraph.rkt:211:0 for-loop [75] 71.3% for-loop [83] 9.6% mutable-set [81] 9.6% custom-set-union! [85] 9.5% ------------------------------------------------------------------------ variable? [57] 18.7% loop [18] 19.3% match-e [45] 62.0% [65] 1604(5.0%) 662(2.1%) ??? ...contract/private/arrow-val-first.rkt:388:18 ??? [77] 58.7% ------------------------------------------------------------------------ merge-egraph-nodes! [52] 100.0% [66] 938(2.9%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:197:4 dedup-children! [74] 64.2% merge-egraph-nodes! [52] 35.8% ------------------------------------------------------------------------ for-loop [53] 100.0% [67] 894(2.8%) 594(1.9%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [82] 33.6% ------------------------------------------------------------------------ build--> [55] 100.0% [68] 714(2.2%) 0(0.0%) coerce-contract ...contract/private/guts.rkt:285:0 coerce-contract/f [78] 100.0% ------------------------------------------------------------------------ for-loop [53] 100.0% [69] 334(1.0%) 0(0.0%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 for-loop [79] 100.0% ------------------------------------------------------------------------ for-loop [53] 100.0% [70] 302(0.9%) 302(0.9%) cartesian-product ...ollects/racket/list.rkt:822:0 ------------------------------------------------------------------------ setfindf [61] 100.0% [71] 302(0.9%) 0(0.0%) for-loop ...ies/herbie/master/src/common.rkt:143:2 constant? [97] 100.0% ------------------------------------------------------------------------ merge-egraph-nodes! [52] 100.0% [72] 302(0.9%) 0(0.0%) enode-merge! ...ie/master/src/core/enode.rkt:124:0 adopt-enode! [80] 100.0% ------------------------------------------------------------------------ for-loop [53] 100.0% [73] 300(0.9%) 300(0.9%) loop ...cket-7.0/collects/racket/function.rkt:53:6 ------------------------------------------------------------------------ for-loop [66] 11.1% merge-egraph-nodes! [52] 35.7% for-loop [36] 53.2% [74] 5404(16.9%) 0(0.0%) dedup-children! ...master/src/core/enode.rkt:195:0 loop [86] 94.4% loop [92] 5.6% ------------------------------------------------------------------------ update-leader! [64] 100.0% [75] 2230(7.0%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:216:6 for-loop [88] 70.4% hash-update! [96] 29.6% ------------------------------------------------------------------------ loop! [62] 100.0% [76] 1532(4.8%) 1532(4.8%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------ ??? [65] 100.0% [77] 942(2.9%) 632(2.0%) ??? ...ects/racket/contract/private/guts.rkt:746:8 bigvalue? [91] 32.9% ------------------------------------------------------------------------ coerce-contract [68] 100.0% [78] 714(2.2%) 0(0.0%) coerce-contract/f ...ntract/private/guts.rkt:350:0 coerce-simple-value [89] 100.0% ------------------------------------------------------------------------ cp-2 [69] 100.0% [79] 334(1.0%) 334(1.0%) for-loop ...ket-7.0/collects/racket/list.rkt:827:4 ------------------------------------------------------------------------ enode-merge! [72] 100.0% [80] 302(0.9%) 0(0.0%) adopt-enode! ...ie/master/src/core/enode.rkt:102:0 custom-set-union [87] 100.0% ------------------------------------------------------------------------ update-leader! [64] 100.0% [81] 300(0.9%) 300(0.9%) mutable-set .../racket/private/set-types.rkt:999:0 ------------------------------------------------------------------------ foldl [67] 100.0% [82] 300(0.9%) 300(0.9%) merge2 ...s/herbie/master/src/core/ematch.rkt:24:0 ------------------------------------------------------------------------ update-leader! [64] 100.0% [83] 300(0.9%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:226:6 update-en-expr [90] 100.0% ------------------------------------------------------------------------ for-loop [63] 100.0% [84] 300(0.9%) 0(0.0%) ??? ...lies/herbie/master/src/core/ematch.rkt:43:5 for-loop [93] 100.0% ------------------------------------------------------------------------ update-leader! [64] 100.0% [85] 298(0.9%) 0(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [94] 100.0% ------------------------------------------------------------------------ dedup-children! [74] 5.4% loop [86] 94.6% [86] 5104(15.9%) 5104(15.9%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [86] 94.6% ------------------------------------------------------------------------ adopt-enode! [80] 7.0% loop! [62] 93.0% [87] 4296(13.4%) 1236(3.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [95] 57.3% for-loop [98] 14.0% ------------------------------------------------------------------------ for-loop [75] 100.0% [88] 1570(4.9%) 0(0.0%) for-loop ...erbie/master/src/core/egraph.rkt:217:8 hash-update! [96] 100.0% ------------------------------------------------------------------------ coerce-contract/f [78] 100.0% [89] 714(2.2%) 714(2.2%) coerce-simple-value ...ract/private/guts.rkt:363:0 ------------------------------------------------------------------------ for-loop [83] 47.5% loop! [62] 52.5% [90] 632(2.0%) 632(2.0%) update-en-expr ...master/src/core/egraph.rkt:205:0 ------------------------------------------------------------------------ ??? [77] 100.0% [91] 310(1.0%) 310(1.0%) bigvalue? ...rbie/master/src/syntax/types.rkt:19:0 ------------------------------------------------------------------------ dedup-children! [74] 8.3% loop [92] 91.7% [92] 300(0.9%) 0(0.0%) loop ...racket-7.0/collects/racket/list.rkt:417:34 loop [92] 91.7% loop [99] 8.3% ------------------------------------------------------------------------ ??? [84] 100.0% [93] 300(0.9%) 0(0.0%) for-loop ...herbie/master/src/core/ematch.rkt:44:7 constant? [97] 100.0% ------------------------------------------------------------------------ custom-set-union! [85] 100.0% [94] 298(0.9%) 298(0.9%) for-loop ...cts/racket/private/set-types.rkt:253:4 ------------------------------------------------------------------------ custom-set-union [87] 100.0% [95] 2460(7.7%) 1230(3.8%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [102] 50.0% ------------------------------------------------------------------------ for-loop [75] 29.6% for-loop [88] 70.4% [96] 2230(7.0%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [100] 100.0% ------------------------------------------------------------------------ for-loop [93] 25.3% for-loop [71] 25.5% match-e [45] 49.2% [97] 1186(3.7%) 0(0.0%) constant? ...ie/master/src/syntax/syntax.rkt:719:0 value? [101] 100.0% ------------------------------------------------------------------------ custom-set-union [87] 100.0% [98] 600(1.9%) 600(1.9%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------ loop [92] 100.0% [99] 300(0.9%) 300(0.9%) loop (unknown source) ------------------------------------------------------------------------ hash-update! [96] 100.0% [100] 2230(7.0%) 0(0.0%) ??? ...es/herbie/master/src/core/egraph.rkt:219:24 for-loop [103] 100.0% ------------------------------------------------------------------------ variable? [57] 22.0% constant? [97] 78.0% [101] 1520(4.7%) 1520(4.7%) value? .../herbie/master/src/syntax/types.rkt:18:0 ------------------------------------------------------------------------ for-loop [95] 100.0% [102] 1230(3.8%) 1230(3.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------ ??? [100] 100.0% [103] 2230(7.0%) 2230(7.0%) for-loop ...rbie/master/src/core/egraph.rkt:220:26 ------------------------------------------------------------------------