Profiling results ----------------- Total cpu time observed: 23072ms (out of 23280ms) Number of samples taken: 100 (once every 231ms) ================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================= ??? [5] 100.0% [1] 23072(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ----------------------------------------------------------------- ??? [5] 100.0% [2] 480(2.1%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:223:0 for-loop [4] 100.0% ----------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 23072(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% ----------------------------------------------------------------- errors [2] 100.0% [4] 480(2.1%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:225:2 ??? [5] 100.0% ----------------------------------------------------------------- for-loop [4] 0.7% run [3] 49.7% [5] 23072(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.7% run-improve43 [6] 39.8% prepare-points [7] 6.9% errors-score [8] 1.0% errors [2] 0.7% ulp-difference [9] 0.7% oracle-error [10] 0.6% eval-errors [11] 0.6% ----------------------------------------------------------------- ??? [5] 100.0% [6] 18376(79.6%) 0(0.0%) run-improve43 ...ie/develop/src/mainloop.rkt:339:0 simplify! [12] 100.0% ----------------------------------------------------------------- ??? [5] 100.0% [7] 3182(13.8%) 234(1.0%) prepare-points ...bie/develop/src/points.rkt:166:0 loop [13] 92.6% ----------------------------------------------------------------- ??? [5] 100.0% [8] 482(2.1%) 0(0.0%) errors-score ...erbie/develop/src/points.rkt:215:0 loop [14] 100.0% ----------------------------------------------------------------- ??? [5] 100.0% [9] 480(2.1%) 480(2.1%) ulp-difference ...erbie/develop/src/float.rkt:46:0 ----------------------------------------------------------------- ??? [5] 100.0% [10] 294(1.3%) 0(0.0%) oracle-error ...erbie/develop/src/points.rkt:207:0 for-loop [15] 100.0% ----------------------------------------------------------------- ??? [5] 100.0% [11] 258(1.1%) 0(0.0%) eval-errors ...herbie/develop/src/points.rkt:198:0 for-loop [16] 100.0% ----------------------------------------------------------------- run-improve43 [6] 100.0% [12] 18376(79.6%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:217:0 ??? [17] 100.0% ----------------------------------------------------------------- prepare-points [7] 100.0% [13] 2948(12.8%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:143:4 loop [18] 57.3% ??? [19] 42.7% ----------------------------------------------------------------- errors-score [8] 100.0% [14] 482(2.1%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [20] 100.0% ----------------------------------------------------------------- oracle-error [10] 100.0% [15] 294(1.3%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:208:2 loop [53] 100.0% ----------------------------------------------------------------- eval-errors [11] 100.0% [16] 258(1.1%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:200:2 ??? [61] 100.0% ----------------------------------------------------------------- simplify! [12] 100.0% [17] 18376(79.6%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:26:0 for-loop [21] 95.9% loop [22] 4.1% ----------------------------------------------------------------- loop [13] 100.0% [18] 1690(7.3%) 244(1.1%) loop ...htlies/herbie/develop/src/points.rkt:102:2 ??? [61] 85.6% ----------------------------------------------------------------- loop [13] 100.0% [19] 1258(5.5%) 0(0.0%) ??? ...ghtlies/herbie/develop/src/points.rkt:127:2 ??? [78] 100.0% ----------------------------------------------------------------- loop [14] 100.0% [20] 482(2.1%) 0(0.0%) ordinary-value? ...rbie/develop/src/float.rkt:80:0 special-value? [23] 100.0% ----------------------------------------------------------------- ??? [17] 100.0% [21] 17614(76.3%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:33:2 one-iter [24] 100.0% ----------------------------------------------------------------- ??? [17] 100.0% [22] 762(3.3%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:142:2 for-loop [25] 100.0% ----------------------------------------------------------------- ordinary-value? [20] 100.0% [23] 482(2.1%) 0(0.0%) special-value? ...erbie/develop/src/float.rkt:76:0 for-loop [26] 100.0% ----------------------------------------------------------------- for-loop [21] 100.0% [24] 17614(76.3%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:85:0 for-loop [27] 53.1% find-matches [28] 44.4% for-loop [29] 2.6% ----------------------------------------------------------------- loop [22] 100.0% [25] 762(3.3%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:148:4 expression-cost [33] 68.2% loop [30] 31.8% ----------------------------------------------------------------- special-value? [23] 100.0% [26] 482(2.1%) 482(2.1%) for-loop ...lies/herbie/develop/src/float.rkt:17:3 ----------------------------------------------------------------- one-iter [24] 100.0% [27] 9348(40.5%) 234(1.0%) for-loop ...bie/develop/src/core/simplify.rkt:94:2 loop [31] 93.1% reduce-to-single! [35] 2.2% update-leader! [52] 2.2% ----------------------------------------------------------------- one-iter [24] 100.0% [28] 7814(33.9%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:55:0 for-loop [32] 100.0% ----------------------------------------------------------------- one-iter [24] 100.0% [29] 452(2.0%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:110:2 update-leader! [52] 54.0% set-precompute! [34] 46.0% ----------------------------------------------------------------- for-loop [25] 100.0% [30] 242(1.0%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [33] 100.0% ----------------------------------------------------------------- for-loop [27] 100.0% [31] 8704(37.7%) 0(0.0%) loop .../herbie/develop/src/core/simplify.rkt:99:4 apply-match [36] 100.0% ----------------------------------------------------------------- for-loop [32] 50.0% find-matches [28] 50.0% [32] 7814(33.9%) 948(4.1%) for-loop ...bie/develop/src/core/simplify.rkt:57:8 for-loop [32] 50.0% match-e [40] 43.9% ----------------------------------------------------------------- loop [30] 31.8% for-loop [25] 68.2% [33] 762(3.3%) 0(0.0%) expression-cost .../develop/src/programs.rkt:157:0 compile [37] 100.0% ----------------------------------------------------------------- for-loop [29] 100.0% [34] 208(0.9%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:116:0 for-loop [38] 100.0% ----------------------------------------------------------------- for-loop [27] 100.0% [35] 206(0.9%) 0(0.0%) reduce-to-single! ...lop/src/core/egraph.rkt:318:0 for-loop [39] 100.0% ----------------------------------------------------------------- loop [31] 100.0% [36] 8704(37.7%) 0(0.0%) apply-match .../develop/src/core/simplify.rkt:64:0 for-loop [41] 77.5% match-e [40] 19.7% custom-set-intersect [43] 2.8% ----------------------------------------------------------------- expression-cost [33] 100.0% [37] 762(3.3%) 254(1.1%) compile ...s/herbie/develop/src/programs.rkt:134:0 hash-ref! [42] 66.7% ----------------------------------------------------------------- set-precompute! [34] 100.0% [38] 208(0.9%) 208(0.9%) for-loop ...ie/develop/src/core/simplify.rkt:118:2 ----------------------------------------------------------------- reduce-to-single! [35] 100.0% [39] 206(0.9%) 206(0.9%) for-loop ...rbie/develop/src/core/egraph.rkt:319:8 ----------------------------------------------------------------- apply-match [36] 11.4% for-loop [51] 33.8% for-loop [32] 54.8% [40] 8584(37.2%) 226(1.0%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [44] 85.8% constant? [79] 8.1% ??? [56] 2.5% variable? [48] 1.8% make-sequence [49] 0.9% ----------------------------------------------------------------- apply-match [36] 100.0% [41] 6746(29.2%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:77:2 merge-egraph-nodes! [45] 79.2% dedup-children! [55] 11.4% substitute-e [46] 9.3% ----------------------------------------------------------------- compile [37] 38.1% ??? [47] 61.9% [42] 508(2.2%) 266(1.2%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [47] 73.8% ----------------------------------------------------------------- apply-match [36] 100.0% [43] 240(1.0%) 0(0.0%) custom-set-intersect ...rivate/set-types.rkt:195:0 for-loop [50] 100.0% ----------------------------------------------------------------- match-e [40] 100.0% [44] 8140(35.3%) 2758(12.0%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [51] 58.0% loop [53] 8.6% foldr [57] 6.7% cp-2 [65] 4.7% foldl [66] 1.7% ----------------------------------------------------------------- merge-egraph-nodes! [45] 7.6% for-loop [54] 12.4% for-loop [41] 80.0% [45] 5346(23.2%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:143:0 update-leader! [52] 40.0% loop! [62] 30.9% for-loop [54] 12.4% merge-egraph-nodes! [45] 7.6% dedup-children! [55] 5.2% enode-merge! [59] 3.9% ----------------------------------------------------------------- for-loop [41] 100.0% [46] 628(2.7%) 204(0.9%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [58] 67.5% ----------------------------------------------------------------- hash-ref! [42] 100.0% [47] 508(2.2%) 242(1.0%) ??? ...tlies/herbie/develop/src/programs.rkt:142:5 hash-ref! [42] 88.1% ----------------------------------------------------------------- match-e [40] 100.0% [48] 474(2.1%) 0(0.0%) variable? ...e/develop/src/syntax/syntax.rkt:724:0 ??? [56] 100.0% ----------------------------------------------------------------- match-e [40] 100.0% [49] 240(1.0%) 240(1.0%) make-sequence ...ects/racket/private/for.rkt:528:2 ----------------------------------------------------------------- custom-set-intersect [43]100.0% [50] 240(1.0%) 240(1.0%) for-loop ...cts/racket/private/set-types.rkt:207:3 ----------------------------------------------------------------- for-loop [44] 100.0% [51] 5984(25.9%) 240(1.0%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [40] 82.6% ??? [64] 13.4% ----------------------------------------------------------------- for-loop [27] 6.4% for-loop [29] 7.6% merge-egraph-nodes! [45] 86.1% [52] 3212(13.9%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:211:0 for-loop [60] 100.0% ----------------------------------------------------------------- for-loop [44] 8.1% loop! [62] 9.0% for-loop [15] 15.8% loop [53] 67.0% [53] 1860(8.1%) 444(1.9%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [53] 67.0% ??? [61] 15.8% loop! [62] 9.0% foldl [66] 1.0% ----------------------------------------------------------------- merge-egraph-nodes! [45] 100.0% [54] 1520(6.6%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:197:4 merge-egraph-nodes! [45] 100.0% ----------------------------------------------------------------- merge-egraph-nodes! [45] 33.1% for-loop [41] 66.9% [55] 1154(5.0%) 0(0.0%) dedup-children! ...evelop/src/core/enode.rkt:198:0 loop [63] 100.0% ----------------------------------------------------------------- variable? [48] 42.9% match-e [40] 57.1% [56] 1106(4.8%) 1106(4.8%) ??? ...contract/private/arrow-val-first.rkt:388:18 ----------------------------------------------------------------- for-loop [44] 100.0% [57] 548(2.4%) 244(1.1%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [65] 55.5% ----------------------------------------------------------------- substitute-e [46] 100.0% [58] 424(1.8%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 mk-enode! [67] 100.0% ----------------------------------------------------------------- merge-egraph-nodes! [45] 100.0% [59] 208(0.9%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:127:0 adopt-enode! [68] 100.0% ----------------------------------------------------------------- update-leader! [52] 100.0% [60] 3212(13.9%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:216:6 for-loop [69] 61.5% hash-update! [77] 38.5% ----------------------------------------------------------------- for-loop [16] 12.9% loop [53] 14.7% loop [18] 72.4% [61] 1998(8.7%) 258(1.1%) ??? ...htlies/herbie/develop/src/programs.rkt:99:2 ??? [71] 61.3% ??? [78] 25.8% ----------------------------------------------------------------- loop [53] 23.6% merge-egraph-nodes! [45] 76.4% [62] 1992(8.6%) 220(1.0%) loop! ...s/herbie/develop/src/core/enode.rkt:190:2 custom-set-union [70] 56.3% loop [53] 23.6% set [73] 14.6% ----------------------------------------------------------------- dedup-children! [55] 9.2% loop [63] 90.8% [63] 1154(5.0%) 1154(5.0%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [63] 90.8% ----------------------------------------------------------------- for-loop [51] 100.0% [64] 800(3.5%) 0(0.0%) ??? ...ies/herbie/develop/src/core/ematch.rkt:43:5 for-loop [72] 100.0% ----------------------------------------------------------------- foldr [57] 38.1% for-loop [44] 61.9% [65] 798(3.5%) 798(3.5%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 ----------------------------------------------------------------- loop [53] 47.9% for-loop [44] 52.1% [66] 526(2.3%) 252(1.1%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [74] 52.1% ----------------------------------------------------------------- for-loop [58] 100.0% [67] 424(1.8%) 0(0.0%) mk-enode! ...rbie/develop/src/core/egraph.rkt:97:0 hash-has-key? [75] 52.8% new-enode [76] 47.2% ----------------------------------------------------------------- enode-merge! [59] 100.0% [68] 208(0.9%) 0(0.0%) adopt-enode! ...e/develop/src/core/enode.rkt:103:0 custom-set-union [70] 100.0% ----------------------------------------------------------------- for-loop [60] 100.0% [69] 1974(8.6%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:217:8 hash-update! [77] 100.0% ----------------------------------------------------------------- adopt-enode! [68] 15.6% loop! [62] 84.4% [70] 1330(5.8%) 0(0.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [80] 65.1% for-loop [82] 34.9% ----------------------------------------------------------------- ??? [61] 100.0% [71] 1224(5.3%) 242(1.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [81] 42.6% ??? [78] 37.6% ----------------------------------------------------------------- ??? [64] 100.0% [72] 800(3.5%) 0(0.0%) for-loop ...erbie/develop/src/core/ematch.rkt:44:7 constant? [79] 100.0% ----------------------------------------------------------------- loop! [62] 100.0% [73] 650(2.8%) 650(2.8%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------- foldl [66] 100.0% [74] 274(1.2%) 274(1.2%) merge2 .../herbie/develop/src/core/ematch.rkt:24:0 ----------------------------------------------------------------- mk-enode! [67] 100.0% [75] 224(1.0%) 224(1.0%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ----------------------------------------------------------------- mk-enode! [67] 100.0% [76] 200(0.9%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:95:0 type-of-enode-expr [83] 100.0% ----------------------------------------------------------------- for-loop [60] 38.5% for-loop [69] 61.5% [77] 3212(13.9%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [84] 100.0% ----------------------------------------------------------------- ??? [71] 20.6% ??? [61] 23.1% ??? [19] 56.3% [78] 2234(9.7%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [86] 56.3% ival-mult [88] 20.6% ->flonum [89] 13.2% mk-ival [91] 9.9% ----------------------------------------------------------------- for-loop [72] 40.0% match-e [40] 60.0% [79] 2002(8.7%) 0(0.0%) constant? ...e/develop/src/syntax/syntax.rkt:721:0 value? [85] 100.0% ----------------------------------------------------------------- custom-set-union [70] 100.0% [80] 866(3.8%) 226(1.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [87] 73.9% ----------------------------------------------------------------- ??? [71] 100.0% [81] 522(2.3%) 234(1.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-sub [90] 55.2% ----------------------------------------------------------------- custom-set-union [70] 100.0% [82] 464(2.0%) 464(2.0%) for-loop ...cts/racket/private/set-types.rkt:152:2 ----------------------------------------------------------------- new-enode [76] 100.0% [83] 200(0.9%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:67:0 table-ref [92] 100.0% ----------------------------------------------------------------- hash-update! [77] 100.0% [84] 3212(13.9%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:219:24 for-loop [93] 100.0% ----------------------------------------------------------------- constant? [79] 100.0% [85] 2002(8.7%) 2002(8.7%) value? ...herbie/develop/src/syntax/types.rkt:18:0 ----------------------------------------------------------------- ??? [78] 100.0% [86] 1258(5.5%) 516(2.2%) sample-multi-bounded ...evelop/src/points.rkt:15:0 for-loop [95] 37.5% loop [97] 21.5% ----------------------------------------------------------------- for-loop [80] 100.0% [87] 640(2.8%) 640(2.8%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------- ??? [78] 100.0% [88] 460(2.0%) 0(0.0%) ival-mult ...bie/develop/src/biginterval.rkt:112:0 bfmul [94] 100.0% ----------------------------------------------------------------- ??? [78] 100.0% [89] 294(1.3%) 0(0.0%) ->flonum ...ies/herbie/develop/src/float.rkt:149:0 ??? [96] 100.0% ----------------------------------------------------------------- ??? [81] 100.0% [90] 288(1.2%) 0(0.0%) ival-sub ...rbie/develop/src/biginterval.rkt:100:0 bfmul [94] 100.0% ----------------------------------------------------------------- ??? [78] 100.0% [91] 222(1.0%) 0(0.0%) mk-ival ...herbie/develop/src/biginterval.rkt:57:0 bf [98] 100.0% ----------------------------------------------------------------- type-of-enode-expr [83] 100.0% [92] 200(0.9%) 0(0.0%) table-ref ...es/herbie/develop/src/common.rkt:41:0 for-loop [99] 100.0% ----------------------------------------------------------------- ??? [84] 100.0% [93] 3212(13.9%) 3002(13.0%) for-loop ...bie/develop/src/core/egraph.rkt:220:26 update-en-expr [103] 6.5% ----------------------------------------------------------------- ival-sub [90] 38.5% ival-mult [88] 61.5% [94] 748(3.2%) 0(0.0%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:821:4 ??? [101] 61.5% new-mpfr [100] 38.5% ----------------------------------------------------------------- sample-multi-bounded [86]100.0% [95] 472(2.0%) 472(2.0%) for-loop ...ies/herbie/develop/src/points.rkt:23:4 ----------------------------------------------------------------- ->flonum [89] 100.0% [96] 294(1.3%) 294(1.3%) ??? ...nightlies/herbie/develop/src/float.rkt:23:2 ----------------------------------------------------------------- sample-multi-bounded [86]100.0% [97] 270(1.2%) 0(0.0%) loop ...ghtlies/herbie/develop/src/points.rkt:42:6 random-exp [102] 100.0% ----------------------------------------------------------------- mk-ival [91] 100.0% [98] 222(1.0%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [100] 100.0% ----------------------------------------------------------------- table-ref [92] 100.0% [99] 200(0.9%) 200(0.9%) for-loop ...ies/herbie/develop/src/common.rkt:43:4 ----------------------------------------------------------------- bf [98] 43.5% bfmul [94] 56.5% [100] 510(2.2%) 510(2.2%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ----------------------------------------------------------------- bfmul [94] 100.0% [101] 460(2.0%) 460(2.0%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ----------------------------------------------------------------- loop [97] 100.0% [102] 270(1.2%) 270(1.2%) random-exp .../herbie/develop/src/common.rkt:172:0 ----------------------------------------------------------------- for-loop [93] 100.0% [103] 210(0.9%) 210(0.9%) update-en-expr ...evelop/src/core/egraph.rkt:205:0 -----------------------------------------------------------------