Profiling results ----------------- Total cpu time observed: 25350ms (out of 26080ms) Number of samples taken: 67 (once every 378ms) ================================================================ Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================ ??? [5] 100.0% [1] 25350(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ---------------------------------------------------------------- ??? [5] 100.0% [2] 2376(9.4%) 0(0.0%) errors ...erbie/no-dirty-bits/src/points.rkt:223:0 for-loop [4] 100.0% ---------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 25350(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] 2376(9.4%) 0(0.0%) for-loop ...bie/no-dirty-bits/src/points.rkt:225:2 ??? [5] 100.0% ---------------------------------------------------------------- for-loop [4] 3.1% run [3] 48.4% [5] 25350(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 48.4% prepare-points [6] 29.5% run-improve43 [7] 10.7% errors-score [8] 3.3% errors [2] 3.1% ??? [32] 1.8% eval-errors [10] 1.2% ulp-difference [9] 0.9% oracle-error [11] 0.6% ??? [23] 0.4% ---------------------------------------------------------------- ??? [5] 100.0% [6] 14960(59.0%) 0(0.0%) prepare-points ...-dirty-bits/src/points.rkt:166:0 loop [12] 100.0% ---------------------------------------------------------------- ??? [5] 100.0% [7] 5420(21.4%) 0(0.0%) run-improve43 ...dirty-bits/src/mainloop.rkt:339:0 simplify! [13] 100.0% ---------------------------------------------------------------- ??? [5] 100.0% [8] 1688(6.7%) 0(0.0%) errors-score ...no-dirty-bits/src/points.rkt:215:0 loop [14] 100.0% ---------------------------------------------------------------- ??? [5] 100.0% [9] 688(2.7%) 296(1.2%) ulp-difference ...no-dirty-bits/src/float.rkt:46:0 infer-representation [16] 57.0% ---------------------------------------------------------------- ??? [5] 100.0% [10] 598(2.4%) 0(0.0%) eval-errors .../no-dirty-bits/src/points.rkt:198:0 for-loop [15] 100.0% ---------------------------------------------------------------- ??? [5] 100.0% [11] 308(1.2%) 0(0.0%) oracle-error ...no-dirty-bits/src/points.rkt:207:0 for-loop [17] 100.0% ---------------------------------------------------------------- prepare-points [6] 100.0% [12] 14960(59.0%) 0(0.0%) loop .../herbie/no-dirty-bits/src/points.rkt:143:4 loop [18] 89.8% ??? [20] 8.0% andmap [22] 2.2% ---------------------------------------------------------------- run-improve43 [7] 100.0% [13] 5420(21.4%) 0(0.0%) simplify! .../no-dirty-bits/src/mainloop.rkt:217:0 ??? [19] 100.0% ---------------------------------------------------------------- errors-score [8] 100.0% [14] 1688(6.7%) 302(1.2%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [25] 82.1% ---------------------------------------------------------------- eval-errors [10] 100.0% [15] 598(2.4%) 0(0.0%) for-loop ...bie/no-dirty-bits/src/points.rkt:200:2 ??? [23] 100.0% ---------------------------------------------------------------- ulp-difference [9] 100.0% [16] 392(1.5%) 0(0.0%) infer-representation ...ty-bits/src/float.rkt:15:0 return/no-unsupplied [67]100.0% ---------------------------------------------------------------- oracle-error [11] 100.0% [17] 308(1.2%) 0(0.0%) for-loop ...bie/no-dirty-bits/src/points.rkt:208:2 loop [21] 100.0% ---------------------------------------------------------------- loop [12] 100.0% [18] 13438(53.0%) 582(2.3%) loop .../herbie/no-dirty-bits/src/points.rkt:102:2 ??? [23] 93.5% ??? [66] 2.2% ---------------------------------------------------------------- simplify! [13] 100.0% [19] 5420(21.4%) 0(0.0%) ??? ...ie/no-dirty-bits/src/core/simplify.rkt:26:0 for-loop [24] 60.7% loop [26] 33.7% one-iter [28] 5.6% ---------------------------------------------------------------- loop [12] 100.0% [20] 1196(4.7%) 0(0.0%) ??? ...s/herbie/no-dirty-bits/src/points.rkt:127:2 ??? [32] 100.0% ---------------------------------------------------------------- loop! [57] 1.4% for-loop [17] 32.7% loop [21] 65.9% [21] 942(3.7%) 0(0.0%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [21] 65.9% ordinary-value? [25] 32.7% loop! [57] 1.4% ---------------------------------------------------------------- loop [12] 100.0% [22] 326(1.3%) 0(0.0%) andmap ...0/collects/racket/private/map.rkt:102:13 ordinary-value? [25] 100.0% ---------------------------------------------------------------- ??? [5] 2.2% for-loop [15] 4.4% loop [18] 93.3% [23] 13464(53.1%) 0(0.0%) ??? .../herbie/no-dirty-bits/src/programs.rkt:99:2 ??? [27] 75.4% ??? [32] 24.6% ---------------------------------------------------------------- ??? [19] 100.0% [24] 3292(13.0%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:33:2 one-iter [28] 100.0% ---------------------------------------------------------------- loop [21] 15.2% andmap [22] 16.1% loop [14] 68.6% [25] 2020(8.0%) 0(0.0%) ordinary-value? ...o-dirty-bits/src/float.rkt:80:0 special-value? [29] 100.0% ---------------------------------------------------------------- ??? [19] 100.0% [26] 1824(7.2%) 0(0.0%) loop .../no-dirty-bits/src/core/simplify.rkt:105:2 for-loop [30] 100.0% ---------------------------------------------------------------- ??? [23] 100.0% [27] 10154(40.1%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [31] 87.2% ??? [32] 12.8% ---------------------------------------------------------------- ??? [19] 8.5% for-loop [24] 91.5% [28] 3596(14.2%) 0(0.0%) one-iter ...-dirty-bits/src/core/simplify.rkt:65:0 for-loop [33] 66.4% find-matches [35] 33.6% ---------------------------------------------------------------- ordinary-value? [25] 100.0% [29] 2020(8.0%) 0(0.0%) special-value? ...no-dirty-bits/src/float.rkt:76:0 for-loop [34] 100.0% ---------------------------------------------------------------- loop [26] 100.0% [30] 1824(7.2%) 0(0.0%) for-loop ...dirty-bits/src/core/simplify.rkt:111:4 for-loop [45] 34.0% argmin [36] 33.3% expression-cost [46] 16.4% filter [75] 16.2% ---------------------------------------------------------------- ??? [27] 100.0% [31] 8854(34.9%) 312(1.2%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-fma [37] 43.6% ival-add [38] 27.4% ival-sub [42] 25.5% ---------------------------------------------------------------- ??? [20] 16.6% ??? [27] 18.1% ??? [5] 19.3% ??? [23] 46.0% [32] 7194(28.4%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 mk-ival [39] 33.5% ->flonum [41] 31.8% ival-mult [47] 18.1% sample-multi-bounded [44] 16.6% ---------------------------------------------------------------- one-iter [28] 100.0% [33] 2386(9.4%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:67:2 for-loop [40] 100.0% ---------------------------------------------------------------- special-value? [29] 100.0% [34] 2020(8.0%) 634(2.5%) for-loop ...erbie/no-dirty-bits/src/float.rkt:17:3 return/no-unsupplied [67] 68.6% ---------------------------------------------------------------- one-iter [28] 100.0% [35] 1210(4.8%) 0(0.0%) find-matches ...ty-bits/src/core/simplify.rkt:55:0 for-loop [43] 100.0% ---------------------------------------------------------------- for-loop [30] 100.0% [36] 608(2.4%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 for-loop [45] 51.0% expression-cost [46] 49.0% ---------------------------------------------------------------- ??? [31] 100.0% [37] 3862(15.2%) 0(0.0%) ival-fma ...o-dirty-bits/src/biginterval.rkt:261:0 ival-mult [47] 90.6% bfsub [55] 9.4% ---------------------------------------------------------------- ??? [31] 100.0% [38] 2426(9.6%) 310(1.2%) ival-add ...no-dirty-bits/src/biginterval.rkt:94:0 bfsub [55] 87.2% ---------------------------------------------------------------- ??? [32] 100.0% [39] 2412(9.5%) 0(0.0%) mk-ival .../no-dirty-bits/src/biginterval.rkt:57:0 bf [48] 100.0% ---------------------------------------------------------------- for-loop [33] 100.0% [40] 2386(9.4%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:70:4 merge-egraph-nodes! [50] 87.9% dedup-children! [54] 12.1% ---------------------------------------------------------------- ??? [32] 100.0% [41] 2286(9.0%) 0(0.0%) ->flonum ...rbie/no-dirty-bits/src/float.rkt:149:0 ??? [49] 100.0% ---------------------------------------------------------------- ??? [31] 100.0% [42] 2254(8.9%) 0(0.0%) ival-sub ...o-dirty-bits/src/biginterval.rkt:100:0 bfsub [55] 100.0% ---------------------------------------------------------------- for-loop [43] 50.0% find-matches [35] 50.0% [43] 1210(4.8%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:57:8 for-loop [43] 50.0% match-e [51] 50.0% ---------------------------------------------------------------- ??? [32] 100.0% [44] 1196(4.7%) 1196(4.7%) sample-multi-bounded ...y-bits/src/points.rkt:15:0 ---------------------------------------------------------------- argmin [36] 33.3% for-loop [30] 66.7% [45] 930(3.7%) 0(0.0%) for-loop ...e/no-dirty-bits/src/programs.rkt:158:2 table-ref [52] 100.0% ---------------------------------------------------------------- argmin [36] 49.8% for-loop [30] 50.2% [46] 598(2.4%) 0(0.0%) expression-cost ...rty-bits/src/programs.rkt:157:0 compile [53] 100.0% ---------------------------------------------------------------- ??? [32] 27.1% ival-fma [37] 72.9% [47] 4800(18.9%) 638(2.5%) ival-mult ...-dirty-bits/src/biginterval.rkt:112:0 bfsub [55] 86.7% ---------------------------------------------------------------- mk-ival [39] 100.0% [48] 2412(9.5%) 390(1.5%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [65] 72.1% ??? [66] 11.8% ---------------------------------------------------------------- ->flonum [41] 100.0% [49] 2286(9.0%) 0(0.0%) ??? ...ies/herbie/no-dirty-bits/src/float.rkt:23:2 for-loop [56] 100.0% ---------------------------------------------------------------- for-loop [40] 100.0% [50] 2098(8.3%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:143:0 loop! [57] 43.9% update-leader! [59] 41.9% enode-merge! [61] 14.2% ---------------------------------------------------------------- for-loop [68] 16.5% for-loop [43] 83.5% [51] 1210(4.8%) 600(2.4%) match-e .../no-dirty-bits/src/core/ematch.rkt:39:0 for-loop [58] 66.9% ---------------------------------------------------------------- for-loop [45] 100.0% [52] 930(3.7%) 326(1.3%) table-ref ...bie/no-dirty-bits/src/common.rkt:41:0 for-loop [60] 33.3% assoc-iterate-first [63] 31.6% ---------------------------------------------------------------- expression-cost [46] 100.0% [53] 598(2.4%) 300(1.2%) compile ...ie/no-dirty-bits/src/programs.rkt:134:0 hash-ref! [62] 49.8% ---------------------------------------------------------------- for-loop [40] 100.0% [54] 288(1.1%) 0(0.0%) dedup-children! ...y-bits/src/core/enode.rkt:195:0 loop [64] 100.0% ---------------------------------------------------------------- ival-fma [37] 4.1% ival-add [38] 23.8% ival-sub [42] 25.3% ival-mult [47] 46.8% [55] 8894(35.1%) 636(2.5%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [65] 63.0% ??? [66] 29.9% ---------------------------------------------------------------- ??? [49] 100.0% [56] 2286(9.0%) 898(3.5%) for-loop ...erbie/no-dirty-bits/src/float.rkt:24:5 return/no-unsupplied [67] 60.7% ---------------------------------------------------------------- loop [21] 34.5% merge-egraph-nodes! [50] 65.5% [57] 920(3.6%) 620(2.4%) loop! ...ie/no-dirty-bits/src/core/enode.rkt:187:2 loop [21] 34.5% set [71] 16.3% ---------------------------------------------------------------- match-e [51] 100.0% [58] 910(3.6%) 0(0.0%) for-loop ...o-dirty-bits/src/core/ematch.rkt:52:11 for-loop [68] 66.6% curry* [70] 33.4% ---------------------------------------------------------------- merge-egraph-nodes! [50] 100.0% [59] 880(3.5%) 0(0.0%) update-leader! ...y-bits/src/core/egraph.rkt:211:0 for-loop [69] 66.4% for-loop [74] 33.6% ---------------------------------------------------------------- table-ref [52] 100.0% [60] 310(1.2%) 310(1.2%) for-loop ...rbie/no-dirty-bits/src/common.rkt:43:4 ---------------------------------------------------------------- merge-egraph-nodes! [50] 100.0% [61] 298(1.2%) 0(0.0%) enode-merge! ...irty-bits/src/core/enode.rkt:124:0 adopt-enode! [72] 100.0% ---------------------------------------------------------------- compile [53] 33.3% ??? [73] 66.7% [62] 298(1.2%) 298(1.2%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [73] 66.7% ---------------------------------------------------------------- table-ref [52] 100.0% [63] 294(1.2%) 294(1.2%) assoc-iterate-first ...cket/private/dict.rkt:166:0 ---------------------------------------------------------------- dedup-children! [54] 4.0% loop [64] 96.0% [64] 288(1.1%) 288(1.1%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [64] 96.0% ---------------------------------------------------------------- bf [48] 23.7% bfsub [55] 76.3% [65] 7340(29.0%) 7340(29.0%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ---------------------------------------------------------------- bf [48] 8.8% loop [18] 9.0% bfsub [55] 82.2% [66] 3230(12.7%) 3230(12.7%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ---------------------------------------------------------------- infer-representation [16] 12.4% for-loop [34] 43.8% for-loop [56] 43.8% [67] 3166(12.5%) 0(0.0%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 filter [75] 100.0% ---------------------------------------------------------------- for-loop [58] 100.0% [68] 606(2.4%) 0(0.0%) for-loop ...o-dirty-bits/src/core/ematch.rkt:58:37 ??? [76] 50.5% match-e [51] 49.5% ---------------------------------------------------------------- update-leader! [59] 100.0% [69] 584(2.3%) 0(0.0%) for-loop ...o-dirty-bits/src/core/egraph.rkt:216:6 hash-update! [80] 51.0% for-loop [79] 49.0% ---------------------------------------------------------------- for-loop [58] 100.0% [70] 304(1.2%) 0(0.0%) curry* ...et-7.0/collects/racket/function.rkt:44:2 procedure-arity [77] 100.0% ---------------------------------------------------------------- loop! [57] 100.0% [71] 300(1.2%) 300(1.2%) set ...collects/racket/private/set-types.rkt:981:0 ---------------------------------------------------------------- enode-merge! [61] 100.0% [72] 298(1.2%) 0(0.0%) adopt-enode! ...irty-bits/src/core/enode.rkt:102:0 custom-set-union [78] 100.0% ---------------------------------------------------------------- hash-ref! [62] 100.0% [73] 298(1.2%) 0(0.0%) ??? ...herbie/no-dirty-bits/src/programs.rkt:142:5 hash-ref! [62] 100.0% ---------------------------------------------------------------- update-leader! [59] 100.0% [74] 296(1.2%) 296(1.2%) for-loop ...o-dirty-bits/src/core/egraph.rkt:226:6 ---------------------------------------------------------------- for-loop [30] 8.5% return/no-unsupplied [67] 91.5% [75] 3462(13.7%) 3462(13.7%) filter ...0/collects/racket/private/list.rkt:256:2 ---------------------------------------------------------------- for-loop [68] 100.0% [76] 306(1.2%) 0(0.0%) ??? ...rbie/no-dirty-bits/src/core/ematch.rkt:43:5 for-loop [81] 100.0% ---------------------------------------------------------------- curry* [70] 100.0% [77] 304(1.2%) 304(1.2%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ---------------------------------------------------------------- adopt-enode! [72] 100.0% [78] 298(1.2%) 298(1.2%) custom-set-union ...et/private/set-types.rkt:168:0 ---------------------------------------------------------------- for-loop [69] 100.0% [79] 286(1.1%) 0(0.0%) for-loop ...o-dirty-bits/src/core/egraph.rkt:217:8 hash-update! [80] 100.0% ---------------------------------------------------------------- for-loop [79] 49.0% for-loop [69] 51.0% [80] 584(2.3%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [82] 100.0% ---------------------------------------------------------------- ??? [76] 100.0% [81] 306(1.2%) 0(0.0%) for-loop ...no-dirty-bits/src/core/ematch.rkt:44:7 constant? [83] 100.0% ---------------------------------------------------------------- hash-update! [80] 100.0% [82] 584(2.3%) 0(0.0%) ??? ...ie/no-dirty-bits/src/core/egraph.rkt:219:24 for-loop [84] 100.0% ---------------------------------------------------------------- for-loop [81] 100.0% [83] 306(1.2%) 0(0.0%) constant? ...irty-bits/src/syntax/syntax.rkt:721:0 value? [85] 100.0% ---------------------------------------------------------------- ??? [82] 100.0% [84] 584(2.3%) 298(1.2%) for-loop ...-dirty-bits/src/core/egraph.rkt:220:26 update-en-expr [86] 49.0% ---------------------------------------------------------------- constant? [83] 100.0% [85] 306(1.2%) 306(1.2%) value? .../no-dirty-bits/src/syntax/types.rkt:18:0 ---------------------------------------------------------------- for-loop [84] 100.0% [86] 286(1.1%) 286(1.1%) update-en-expr ...y-bits/src/core/egraph.rkt:205:0 ----------------------------------------------------------------