Profiling results ----------------- Total cpu time observed: 19302ms (out of 19532ms) Number of samples taken: 61 (once every 316ms) ================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================== ??? [5] 100.0% [1] 19302(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [2] 11800(61.1%) 0(0.0%) run-improve40 ...dirty-bits/src/mainloop.rkt:336:0 simplify! [4] 100.0% ------------------------------------------------------------------ profile-thunk16 [1] 100.0% [3] 19302(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% ------------------------------------------------------------------ run-improve40 [2] 100.0% [4] 11800(61.1%) 0(0.0%) simplify! .../no-dirty-bits/src/mainloop.rkt:213:0 ??? [6] 100.0% ------------------------------------------------------------------ run [3] 50.0% [5] 19302(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 50.0% run-improve40 [2] 30.6% prepare-points-intervals [8] 17.2% errors [10] 0.8% errors-score [11] 0.7% eval-errors [12] 0.7% ------------------------------------------------------------------ simplify! [4] 100.0% [6] 11800(61.1%) 0(0.0%) ??? ...ie/no-dirty-bits/src/core/simplify.rkt:26:0 for-loop [7] 91.9% loop [9] 8.1% ------------------------------------------------------------------ ??? [6] 100.0% [7] 10850(56.2%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:33:2 one-iter [13] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [8] 6622(34.3%) 0(0.0%) prepare-points-intervals ...s/src/points.rkt:133:0 loop [14] 100.0% ------------------------------------------------------------------ ??? [6] 100.0% [9] 950(4.9%) 0(0.0%) loop .../no-dirty-bits/src/core/simplify.rkt:106:2 for-loop [15] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [10] 308(1.6%) 0(0.0%) errors ...erbie/no-dirty-bits/src/points.rkt:228:0 for-loop [16] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [11] 288(1.5%) 0(0.0%) errors-score ...no-dirty-bits/src/points.rkt:220:0 loop [17] 100.0% ------------------------------------------------------------------ ??? [5] 100.0% [12] 284(1.5%) 0(0.0%) eval-errors .../no-dirty-bits/src/points.rkt:203:0 for-loop [18] 100.0% ------------------------------------------------------------------ for-loop [7] 100.0% [13] 10850(56.2%) 0(0.0%) one-iter ...-dirty-bits/src/core/simplify.rkt:66:0 find-matches [20] 58.0% for-loop [21] 38.7% for-loop [22] 3.3% ------------------------------------------------------------------ prepare-points-intervals [8]100.0% [14] 6622(34.3%) 0(0.0%) loop .../herbie/no-dirty-bits/src/points.rkt:145:4 loop [19] 95.7% ??? [26] 4.3% ------------------------------------------------------------------ loop [9] 100.0% [15] 950(4.9%) 0(0.0%) for-loop ...dirty-bits/src/core/simplify.rkt:112:4 for-loop [23] 35.2% argmin [24] 33.1% loop [25] 31.8% ------------------------------------------------------------------ errors [10] 100.0% [16] 308(1.6%) 308(1.6%) for-loop ...bie/no-dirty-bits/src/points.rkt:230:2 ------------------------------------------------------------------ errors-score [11] 100.0% [17] 288(1.5%) 288(1.5%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ------------------------------------------------------------------ eval-errors [12] 100.0% [18] 284(1.5%) 0(0.0%) for-loop ...bie/no-dirty-bits/src/points.rkt:205:2 ??? [39] 100.0% ------------------------------------------------------------------ loop [14] 100.0% [19] 6334(32.8%) 600(3.1%) loop .../herbie/no-dirty-bits/src/points.rkt:104:2 ??? [28] 76.2% ??? [50] 9.6% ??? [39] 4.7% ------------------------------------------------------------------ one-iter [13] 100.0% [20] 6294(32.6%) 0(0.0%) find-matches ...ty-bits/src/core/simplify.rkt:56:0 for-loop [27] 100.0% ------------------------------------------------------------------ one-iter [13] 100.0% [21] 4194(21.7%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:68:2 for-loop [29] 100.0% ------------------------------------------------------------------ one-iter [13] 100.0% [22] 362(1.9%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:76:2 update-leader! [40] 100.0% ------------------------------------------------------------------ for-loop [15] 100.0% [23] 334(1.7%) 0(0.0%) for-loop ...irty-bits/src/core/simplify.rkt:116:16 for-loop [30] 100.0% ------------------------------------------------------------------ for-loop [15] 100.0% [24] 314(1.6%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 for-loop [31] 100.0% ------------------------------------------------------------------ for-loop [15] 100.0% [25] 302(1.6%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:751:4 expression-cost [32] 100.0% ------------------------------------------------------------------ loop [14] 100.0% [26] 288(1.5%) 0(0.0%) ??? ...s/herbie/no-dirty-bits/src/points.rkt:129:2 ??? [39] 100.0% ------------------------------------------------------------------ for-loop [27] 50.0% find-matches [20] 50.0% [27] 6294(32.6%) 300(1.6%) for-loop ...-dirty-bits/src/core/simplify.rkt:58:8 for-loop [27] 50.0% match-e [33] 47.6% ------------------------------------------------------------------ loop [19] 100.0% [28] 4828(25.0%) 324(1.7%) ??? ...herbie/no-dirty-bits/src/programs.rkt:146:2 ??? [34] 80.2% ??? [39] 13.0% ------------------------------------------------------------------ for-loop [21] 100.0% [29] 4194(21.7%) 0(0.0%) for-loop ...-dirty-bits/src/core/simplify.rkt:71:4 merge-egraph-nodes! [35] 77.2% mk-enode! [36] 15.1% dedup-children! [42] 7.7% ------------------------------------------------------------------ for-loop [23] 100.0% [30] 334(1.7%) 334(1.7%) for-loop ...irty-bits/src/core/simplify.rkt:120:23 ------------------------------------------------------------------ argmin [24] 100.0% [31] 314(1.6%) 0(0.0%) for-loop ...e/no-dirty-bits/src/programs.rkt:205:2 table-ref [66] 100.0% ------------------------------------------------------------------ loop [25] 100.0% [32] 302(1.6%) 0(0.0%) expression-cost ...rty-bits/src/programs.rkt:204:0 compile [37] 100.0% ------------------------------------------------------------------ for-loop [48] 26.4% for-loop [27] 73.6% [33] 5994(31.1%) 962(5.0%) match-e .../no-dirty-bits/src/core/ematch.rkt:39:0 for-loop [38] 73.7% make-sequence [44] 7.6% ??? [50] 3.4% variable? [45] 1.9% ------------------------------------------------------------------ ??? [28] 100.0% [34] 3874(20.1%) 288(1.5%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [39] 66.1% ??? [80] 26.4% ------------------------------------------------------------------ merge-egraph-nodes! [35] 19.8% for-loop [29] 80.2% [35] 3238(16.8%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:145:0 update-leader! [40] 35.0% loop! [41] 24.7% merge-egraph-nodes! [35] 19.8% dedup-children! [42] 11.2% enode-merge! [47] 9.3% ------------------------------------------------------------------ for-loop [29] 100.0% [36] 632(3.3%) 0(0.0%) mk-enode! ...o-dirty-bits/src/core/egraph.rkt:99:0 new-enode [43] 100.0% ------------------------------------------------------------------ expression-cost [32] 100.0% [37] 302(1.6%) 0(0.0%) compile ...ie/no-dirty-bits/src/programs.rkt:181:0 hash-ref! [46] 100.0% ------------------------------------------------------------------ match-e [33] 100.0% [38] 5030(26.1%) 1878(9.7%) for-loop ...o-dirty-bits/src/core/ematch.rkt:52:11 for-loop [48] 52.9% loop [51] 7.1% curry* [63] 5.8% cartesian-product [60] 3.2% ------------------------------------------------------------------ for-loop [18] 7.0% ??? [26] 7.1% loop [19] 7.3% ??? [28] 15.5% ??? [34] 63.1% [39] 4062(21.0%) 324(1.7%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ival-mult [49] 55.1% mk-ival [55] 15.5% ->flonum [57] 14.3% sample-multi-bounded [64] 7.1% ------------------------------------------------------------------ for-loop [22] 22.0% merge-egraph-nodes! [35] 78.0% [40] 1644(8.5%) 0(0.0%) update-leader! ...y-bits/src/core/egraph.rkt:213:0 for-loop [52] 78.0% custom-set-union! [59] 22.0% ------------------------------------------------------------------ loop [51] 42.4% merge-egraph-nodes! [35] 57.6% [41] 1294(6.7%) 308(1.6%) loop! ...ie/no-dirty-bits/src/core/enode.rkt:188:2 loop [51] 42.4% custom-set-union [56] 35.6% set [58] 14.1% ------------------------------------------------------------------ for-loop [29] 47.2% merge-egraph-nodes! [35] 52.8% [42] 686(3.6%) 0(0.0%) dedup-children! ...y-bits/src/core/enode.rkt:196:0 loop [53] 100.0% ------------------------------------------------------------------ mk-enode! [36] 100.0% [43] 632(3.3%) 0(0.0%) new-enode ...no-dirty-bits/src/core/enode.rkt:95:0 type-of-enode-expr [54] 100.0% ------------------------------------------------------------------ match-e [33] 100.0% [44] 604(3.1%) 604(3.1%) make-sequence ...ects/racket/private/for.rkt:528:2 ------------------------------------------------------------------ match-e [33] 100.0% [45] 334(1.7%) 0(0.0%) variable? ...rty-bits/src/syntax/syntax.rkt:1159:0 ??? [50] 100.0% ------------------------------------------------------------------ ??? [61] 50.0% compile [37] 50.0% [46] 302(1.6%) 302(1.6%) hash-ref! .../racket/private/more-scheme.rkt:376:2 ??? [61] 50.0% ------------------------------------------------------------------ merge-egraph-nodes! [35] 100.0% [47] 300(1.6%) 0(0.0%) enode-merge! ...irty-bits/src/core/enode.rkt:125:0 adopt-enode! [62] 100.0% ------------------------------------------------------------------ for-loop [38] 100.0% [48] 3146(16.3%) 332(1.7%) for-loop ...o-dirty-bits/src/core/ematch.rkt:58:37 match-e [33] 85.2% ??? [72] 9.5% ------------------------------------------------------------------ ??? [39] 100.0% [49] 2238(11.6%) 0(0.0%) ival-mult ...-dirty-bits/src/biginterval.rkt:105:0 classify-ival [65] 59.6% bf* [67] 40.4% ------------------------------------------------------------------ variable? [45] 21.5% match-e [33] 39.2% loop [19] 39.2% [50] 1550(8.0%) 1252(6.5%) ??? ...contract/private/arrow-val-first.rkt:388:18 ??? [73] 19.2% ------------------------------------------------------------------ for-loop [38] 1.0% loop! [41] 1.8% loop [51] 97.2% [51] 1352(7.0%) 358(1.9%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [51] 97.2% loop! [41] 1.8% ------------------------------------------------------------------ update-leader! [40] 100.0% [52] 1282(6.6%) 0(0.0%) for-loop ...o-dirty-bits/src/core/egraph.rkt:218:6 hash-update! [74] 50.4% for-loop [68] 49.6% ------------------------------------------------------------------ dedup-children! [42] 4.2% loop [53] 95.8% [53] 686(3.6%) 686(3.6%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [53] 95.8% ------------------------------------------------------------------ new-enode [43] 100.0% [54] 632(3.3%) 0(0.0%) type-of-enode-expr ...bits/src/core/enode.rkt:68:0 table-ref [66] 100.0% ------------------------------------------------------------------ ??? [39] 100.0% [55] 630(3.3%) 0(0.0%) mk-ival .../no-dirty-bits/src/biginterval.rkt:59:0 bf [69] 100.0% ------------------------------------------------------------------ loop! [41] 100.0% [56] 622(3.2%) 322(1.7%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [71] 48.2% ------------------------------------------------------------------ ??? [39] 100.0% [57] 582(3.0%) 582(3.0%) ->flonum ...ie/no-dirty-bits/src/programs.rkt:38:0 ------------------------------------------------------------------ loop! [41] 100.0% [58] 364(1.9%) 364(1.9%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------ update-leader! [40] 100.0% [59] 362(1.9%) 0(0.0%) custom-set-union! ...t/private/set-types.rkt:245:0 for-loop [70] 100.0% ------------------------------------------------------------------ for-loop [38] 100.0% [60] 326(1.7%) 326(1.7%) cartesian-product ...ollects/racket/list.rkt:822:0 ------------------------------------------------------------------ hash-ref! [46] 100.0% [61] 302(1.6%) 0(0.0%) ??? ...herbie/no-dirty-bits/src/programs.rkt:189:5 hash-ref! [46] 100.0% ------------------------------------------------------------------ enode-merge! [47] 100.0% [62] 300(1.6%) 300(1.6%) adopt-enode! ...irty-bits/src/core/enode.rkt:103:0 ------------------------------------------------------------------ for-loop [38] 100.0% [63] 292(1.5%) 292(1.5%) curry* ...et-7.0/collects/racket/function.rkt:44:2 ------------------------------------------------------------------ ??? [39] 100.0% [64] 288(1.5%) 288(1.5%) sample-multi-bounded ...y-bits/src/points.rkt:16:0 ------------------------------------------------------------------ ival-mult [49] 100.0% [65] 1334(6.9%) 334(1.7%) classify-ival ...ty-bits/src/biginterval.rkt:310:0 force [75] 50.7% fold-binary-pred [77] 24.3% ------------------------------------------------------------------ for-loop [31] 33.2% type-of-enode-expr [54] 66.8% [66] 946(4.9%) 314(1.6%) table-ref ...bie/no-dirty-bits/src/common.rkt:42:0 for-loop [76] 35.1% assoc-iterate-first [78] 31.7% ------------------------------------------------------------------ ival-mult [49] 100.0% [67] 904(4.7%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [85] 100.0% ------------------------------------------------------------------ for-loop [52] 100.0% [68] 636(3.3%) 0(0.0%) for-loop ...o-dirty-bits/src/core/egraph.rkt:219:8 hash-update! [74] 100.0% ------------------------------------------------------------------ mk-ival [55] 100.0% [69] 630(3.3%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [87] 50.2% ??? [88] 49.8% ------------------------------------------------------------------ custom-set-union! [59] 100.0% [70] 362(1.9%) 362(1.9%) for-loop ...cts/racket/private/set-types.rkt:253:4 ------------------------------------------------------------------ custom-set-union [56] 100.0% [71] 300(1.6%) 300(1.6%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------ for-loop [48] 100.0% [72] 300(1.6%) 300(1.6%) ??? ...rbie/no-dirty-bits/src/core/ematch.rkt:43:5 ------------------------------------------------------------------ ??? [50] 100.0% [73] 298(1.5%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:519:4 ??? [79] 100.0% ------------------------------------------------------------------ for-loop [68] 49.6% for-loop [52] 50.4% [74] 1282(6.6%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [81] 100.0% ------------------------------------------------------------------ classify-ival [65] 100.0% [75] 676(3.5%) 676(3.5%) force ...collects/racket/private/promise.rkt:109:0 ------------------------------------------------------------------ table-ref [66] 100.0% [76] 332(1.7%) 332(1.7%) for-loop ...rbie/no-dirty-bits/src/common.rkt:44:4 ------------------------------------------------------------------ classify-ival [65] 100.0% [77] 324(1.7%) 0(0.0%) fold-binary-pred ...gfloat/bigfloat-mpfr.rkt:117:0 ??? [80] 100.0% ------------------------------------------------------------------ table-ref [66] 100.0% [78] 300(1.6%) 300(1.6%) assoc-iterate-first ...cket/private/dict.rkt:166:0 ------------------------------------------------------------------ ??? [73] 100.0% [79] 298(1.5%) 298(1.5%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ------------------------------------------------------------------ fold-binary-pred [77] 24.0% ??? [34] 76.0% [80] 1348(7.0%) 324(1.7%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [83] 53.4% ival-sub [84] 22.6% ------------------------------------------------------------------ hash-update! [74] 100.0% [81] 1282(6.6%) 0(0.0%) ??? ...ie/no-dirty-bits/src/core/egraph.rkt:221:24 for-loop [82] 100.0% ------------------------------------------------------------------ ??? [81] 100.0% [82] 1282(6.6%) 1282(6.6%) for-loop ...-dirty-bits/src/core/egraph.rkt:222:26 ------------------------------------------------------------------ ??? [80] 100.0% [83] 720(3.7%) 324(1.7%) ival-add ...no-dirty-bits/src/biginterval.rkt:87:0 ??? [85] 55.0% ------------------------------------------------------------------ ??? [80] 100.0% [84] 304(1.6%) 304(1.6%) ival-sub ...no-dirty-bits/src/biginterval.rkt:93:0 ------------------------------------------------------------------ ival-add [83] 30.5% bf* [67] 69.5% [85] 1300(6.7%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [86] 100.0% ------------------------------------------------------------------ ??? [85] 100.0% [86] 1300(6.7%) 0(0.0%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [87] 69.5% ??? [88] 30.5% ------------------------------------------------------------------ bf [69] 25.9% bfmul [86] 74.1% [87] 1220(6.3%) 1220(6.3%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------ bf [69] 44.2% bfmul [86] 55.8% [88] 710(3.7%) 710(3.7%) ??? /opt/racket-7.0/collects/ffi/unsafe.rkt:898:4 ------------------------------------------------------------------