Profiling results ----------------- Total cpu time observed: 78774ms (out of 79216ms) Number of samples taken: 349 (once every 226ms) (Hiding functions with self<1.0% and local<2.0%: 6 of 112 hidden) =================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =================================================================== ??? [8] 100.0% [1] 78774(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [4] 100.0% ------------------------------------------------------------------- match-e [53] 100.0% [2] 34062(43.2%) 3264(4.1%) for-loop ...ional-posits/src/core/ematch.rkt:52:11 for-loop [5] 89.7% foldl [7] 0.5% ------------------------------------------------------------------- ??? [8] 100.0% [3] 1566(2.0%) 0(0.0%) errors ...bie/optional-posits/src/points.rkt:223:0 for-loop [6] 100.0% ------------------------------------------------------------------- profile-thunk16 [1] 100.0% [4] 78774(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [8] 100.0% ------------------------------------------------------------------- for-loop [2] 100.0% [5] 31270(39.7%) 216(0.3%) for-loop ...ional-posits/src/core/ematch.rkt:58:37 match-e [53] 91.6% ??? [48] 7.7% ------------------------------------------------------------------- errors [3] 100.0% [6] 1566(2.0%) 0(0.0%) for-loop ...e/optional-posits/src/points.rkt:225:2 ??? [8] 100.0% ------------------------------------------------------------------- for-loop [2] 100.0% [7] 186(0.2%) 0(0.0%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [9] 100.0% ------------------------------------------------------------------- for-loop [6] 0.7% run [4] 49.7% [8] 78774(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 49.7% run-improve43 [10] 46.0% prepare-points [11] 1.6% errors [3] 0.7% eval-errors [28] 0.6% oracle-error [12] 0.5% ??? [43] 0.2% ??? [36] 0.2% ulp-difference [80] 0.2% baseline-error [13] 0.2% errors-score [14] 0.2% ------------------------------------------------------------------- foldl [7] 100.0% [9] 186(0.2%) 186(0.2%) merge2 ...optional-posits/src/core/ematch.rkt:24:0 ------------------------------------------------------------------- ??? [8] 100.0% [10] 72452(92.0%) 0(0.0%) run-improve43 ...nal-posits/src/mainloop.rkt:340:0 simplify! [15] 99.6% for-loop [18] 0.4% ------------------------------------------------------------------- ??? [8] 100.0% [11] 2528(3.2%) 0(0.0%) prepare-points ...onal-posits/src/points.rkt:166:0 loop [16] 100.0% ------------------------------------------------------------------- ??? [8] 100.0% [12] 742(0.9%) 0(0.0%) oracle-error ...tional-posits/src/points.rkt:207:0 for-loop [17] 100.0% ------------------------------------------------------------------- ??? [8] 100.0% [13] 248(0.3%) 0(0.0%) baseline-error ...onal-posits/src/points.rkt:211:0 argmin [19] 100.0% ------------------------------------------------------------------- ??? [8] 100.0% [14] 244(0.3%) 0(0.0%) errors-score ...tional-posits/src/points.rkt:215:0 loop [20] 100.0% ------------------------------------------------------------------- run-improve43 [10] 100.0% [15] 72164(91.6%) 0(0.0%) simplify! ...ptional-posits/src/mainloop.rkt:217:0 ??? [21] 100.0% ------------------------------------------------------------------- prepare-points [11] 100.0% [16] 2528(3.2%) 334(0.4%) loop ...erbie/optional-posits/src/points.rkt:143:4 loop [22] 63.1% ??? [24] 11.9% ordinary-value? [23] 11.8% ------------------------------------------------------------------- oracle-error [12] 100.0% [17] 742(0.9%) 0(0.0%) for-loop ...e/optional-posits/src/points.rkt:208:2 map [51] 66.8% loop [70] 33.2% ------------------------------------------------------------------- run-improve43 [10] 100.0% [18] 288(0.4%) 0(0.0%) for-loop ...optional-posits/src/mainloop.rkt:355:4 run-iter! [25] 100.0% ------------------------------------------------------------------- baseline-error [13] 100.0% [19] 248(0.3%) 0(0.0%) argmin ...acket-7.0/collects/racket/list.rkt:765:0 ??? [26] 100.0% ------------------------------------------------------------------- errors-score [14] 100.0% [20] 244(0.3%) 0(0.0%) loop .../racket-7.0/collects/racket/list.rkt:559:2 ordinary-value? [23] 100.0% ------------------------------------------------------------------- simplify! [15] 100.0% [21] 72164(91.6%) 0(0.0%) ??? .../optional-posits/src/core/simplify.rkt:26:0 for-loop [27] 100.0% ------------------------------------------------------------------- loop [16] 100.0% [22] 1596(2.0%) 0(0.0%) loop ...erbie/optional-posits/src/points.rkt:102:2 ??? [36] 100.0% ------------------------------------------------------------------- loop [20] 45.0% loop [16] 55.0% [23] 542(0.7%) 0(0.0%) ordinary-value? ...ional-posits/src/float.rkt:80:0 special-value? [29] 100.0% ------------------------------------------------------------------- loop [16] 100.0% [24] 300(0.4%) 300(0.4%) ??? ...herbie/optional-posits/src/points.rkt:127:2 ------------------------------------------------------------------- for-loop [18] 100.0% [25] 288(0.4%) 0(0.0%) run-iter! ...ptional-posits/src/mainloop.rkt:321:0 localize! [30] 100.0% ------------------------------------------------------------------- argmin [19] 100.0% [26] 248(0.3%) 0(0.0%) ??? ...erbie/optional-posits/src/points.rkt:212:27 eval-errors [28] 100.0% ------------------------------------------------------------------- ??? [21] 100.0% [27] 72164(91.6%) 0(0.0%) for-loop ...onal-posits/src/core/simplify.rkt:33:2 one-iter [31] 99.8% ------------------------------------------------------------------- ??? [26] 20.0% ??? [8] 80.0% [28] 1242(1.6%) 0(0.0%) eval-errors ...ptional-posits/src/points.rkt:198:0 for-loop [32] 100.0% ------------------------------------------------------------------- ordinary-value? [23] 100.0% [29] 542(0.7%) 0(0.0%) special-value? ...tional-posits/src/float.rkt:76:0 for-loop [97] 100.0% ------------------------------------------------------------------- run-iter! [25] 100.0% [30] 288(0.4%) 0(0.0%) localize! ...ptional-posits/src/mainloop.rkt:120:0 localize-error [33] 100.0% ------------------------------------------------------------------- for-loop [27] 100.0% [31] 72008(91.4%) 208(0.3%) one-iter ...onal-posits/src/core/simplify.rkt:85:0 find-matches [34] 49.9% for-loop [35] 47.1% for-loop [37] 2.6% ------------------------------------------------------------------- eval-errors [28] 100.0% [32] 1242(1.6%) 0(0.0%) for-loop ...e/optional-posits/src/points.rkt:200:2 ulp-difference [80] 59.7% ??? [81] 20.3% ??? [36] 20.0% ------------------------------------------------------------------- localize! [30] 100.0% [33] 288(0.4%) 0(0.0%) localize-error ...osits/src/core/localize.rkt:57:0 hash-ref! [38] 100.0% ------------------------------------------------------------------- one-iter [31] 100.0% [34] 35948(45.6%) 0(0.0%) find-matches ...-posits/src/core/simplify.rkt:55:0 for-loop [39] 100.0% ------------------------------------------------------------------- one-iter [31] 100.0% [35] 33950(43.1%) 0(0.0%) for-loop ...onal-posits/src/core/simplify.rkt:94:2 loop [40] 99.2% reduce-to-single! [46] 0.8% ------------------------------------------------------------------- for-loop [32] 10.4% ??? [8] 22.5% loop [22] 67.1% [36] 2378(3.0%) 248(0.3%) ??? ...erbie/optional-posits/src/programs.rkt:99:2 ??? [42] 40.5% ??? [81] 37.6% ??? [43] 11.4% ------------------------------------------------------------------- one-iter [31] 100.0% [37] 1902(2.4%) 0(0.0%) for-loop ...nal-posits/src/core/simplify.rkt:110:2 set-precompute! [41] 100.0% ------------------------------------------------------------------- map [51] 50.0% localize-error [33] 50.0% [38] 288(0.4%) 0(0.0%) hash-ref! .../racket/private/more-scheme.rkt:376:2 parse-loop30 [45] 50.0% ??? [44] 50.0% ------------------------------------------------------------------- for-loop [39] 49.5% find-matches [34] 50.5% [39] 35948(45.6%) 2606(3.3%) for-loop ...onal-posits/src/core/simplify.rkt:57:8 for-loop [39] 49.5% match-e [53] 45.8% ??? [48] 0.5% ------------------------------------------------------------------- loop [40] 0.4% for-loop [35] 99.6% [40] 33690(42.8%) 0(0.0%) loop ...optional-posits/src/core/simplify.rkt:99:4 apply-match [47] 99.6% loop [40] 0.4% ------------------------------------------------------------------- for-loop [37] 100.0% [41] 1902(2.4%) 0(0.0%) set-precompute! ...its/src/core/simplify.rkt:116:0 for-loop [49] 100.0% ------------------------------------------------------------------- ??? [36] 100.0% [42] 964(1.2%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [50] 100.0% ------------------------------------------------------------------- ??? [36] 33.7% ??? [8] 66.3% [43] 808(1.0%) 0(0.0%) ??? ...ects/racket/contract/private/guts.rkt:746:8 for-loop [95] 100.0% ------------------------------------------------------------------- hash-ref! [38] 100.0% [44] 288(0.4%) 0(0.0%) ??? ...optional-posits/src/core/localize.rkt:23:13 loop [70] 100.0% ------------------------------------------------------------------- hash-ref! [38] 100.0% [45] 288(0.4%) 0(0.0%) parse-loop30 ...s/racket/match/compiler.rkt:418:15 map [51] 100.0% ------------------------------------------------------------------- for-loop [35] 100.0% [46] 260(0.3%) 0(0.0%) reduce-to-single! ...its/src/core/egraph.rkt:318:0 for-loop [52] 100.0% ------------------------------------------------------------------- loop [40] 100.0% [47] 33690(42.8%) 0(0.0%) apply-match ...l-posits/src/core/simplify.rkt:64:0 for-loop [54] 69.4% match-e [53] 29.4% set [73] 1.3% ------------------------------------------------------------------- for-loop [39] 14.0% for-loop [5] 86.0% [48] 2802(3.6%) 334(0.4%) ??? ...ie/optional-posits/src/core/ematch.rkt:43:5 for-loop [55] 88.1% ------------------------------------------------------------------- set-precompute! [41] 100.0% [49] 1902(2.4%) 0(0.0%) for-loop ...nal-posits/src/core/simplify.rkt:118:2 setfindf [56] 100.0% ------------------------------------------------------------------- ??? [42] 100.0% [50] 964(1.2%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [57] 100.0% ------------------------------------------------------------------- parse-loop30 [45] 36.7% for-loop [17] 63.3% [51] 784(1.0%) 0(0.0%) map ...t-7.0/collects/racket/private/map.rkt:35:13 ??? [58] 63.3% hash-ref! [38] 36.7% ------------------------------------------------------------------- reduce-to-single! [46] 100.0% [52] 260(0.3%) 0(0.0%) for-loop ...ional-posits/src/core/egraph.rkt:319:8 constant? [63] 100.0% ------------------------------------------------------------------- apply-match [47] 9.3% for-loop [5] 38.5% for-loop [39] 52.1% [53] 42840(54.4%) 3534(4.5%) match-e ...ptional-posits/src/core/ematch.rkt:39:0 for-loop [2] 52.9% constant? [63] 30.2% variable? [65] 9.0% ??? [74] 1.2% ------------------------------------------------------------------- apply-match [47] 100.0% [54] 23378(29.7%) 200(0.3%) for-loop ...onal-posits/src/core/simplify.rkt:77:2 merge-egraph-nodes! [59] 59.6% dedup-children! [66] 23.1% substitute-e [60] 12.8% mk-enode! [75] 3.6% ------------------------------------------------------------------- ??? [48] 100.0% [55] 2468(3.1%) 324(0.4%) for-loop ...tional-posits/src/core/ematch.rkt:44:7 constant? [63] 86.9% ------------------------------------------------------------------- for-loop [49] 100.0% [56] 1902(2.4%) 0(0.0%) setfindf ...e/optional-posits/src/common.rkt:138:0 for-loop [61] 100.0% ------------------------------------------------------------------- ??? [50] 100.0% [57] 964(1.2%) 0(0.0%) ival-add ...tional-posits/src/biginterval.rkt:94:0 bfadd [62] 100.0% ------------------------------------------------------------------- map [51] 100.0% [58] 496(0.6%) 0(0.0%) ??? ...erbie/optional-posits/src/points.rkt:209:26 ulp-difference [80] 100.0% ------------------------------------------------------------------- merge-egraph-nodes! [59] 6.6% for-loop [54] 92.4% [59] 13928(17.7%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:143:0 loop! [64] 79.4% update-leader! [68] 7.5% merge-egraph-nodes! [59] 6.6% dedup-children! [66] 4.3% enode-merge! [69] 1.3% ------------------------------------------------------------------- for-loop [67] 40.8% for-loop [54] 59.2% [60] 2992(3.8%) 0(0.0%) substitute-e ...al-posits/src/core/ematch.rkt:64:0 for-loop [67] 64.6% constant? [63] 25.2% variable? [65] 6.7% ??? [74] 3.5% ------------------------------------------------------------------- setfindf [56] 100.0% [61] 1902(2.4%) 0(0.0%) for-loop ...e/optional-posits/src/common.rkt:139:2 constant? [63] 100.0% ------------------------------------------------------------------- ival-add [57] 100.0% [62] 964(1.2%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [103] 100.0% ------------------------------------------------------------------- for-loop [52] 1.0% substitute-e [60] 5.9% for-loop [61] 7.0% for-loop [55] 7.9% match-e [53] 78.2% [63] 27064(34.4%) 1344(1.7%) constant? ...al-posits/src/syntax/syntax.rkt:721:0 for-loop [95] 53.5% value? [96] 41.5% ------------------------------------------------------------------- loop [70] 25.1% merge-egraph-nodes! [59] 74.9% [64] 12112(15.4%) 1514(1.9%) loop! .../optional-posits/src/core/enode.rkt:190:2 custom-set-union [72] 41.8% loop [70] 32.1% set [73] 13.4% update-en-expr [76] 5.8% ------------------------------------------------------------------- substitute-e [60] 4.7% match-e [53] 95.3% [65] 10312(13.1%) 716(0.9%) variable? ...al-posits/src/syntax/syntax.rkt:724:0 value? [96] 44.2% for-loop [95] 41.0% ??? [74] 7.8% ------------------------------------------------------------------- merge-egraph-nodes! [59] 9.9% for-loop [54] 90.1% [66] 6004(7.6%) 0(0.0%) dedup-children! ...posits/src/core/enode.rkt:198:0 loop [71] 100.0% ------------------------------------------------------------------- substitute-e [60] 100.0% [67] 2828(3.6%) 0(0.0%) for-loop ...ional-posits/src/core/ematch.rkt:73:24 substitute-e [60] 74.8% mk-enode! [75] 25.2% ------------------------------------------------------------------- merge-egraph-nodes! [59] 100.0% [68] 1040(1.3%) 0(0.0%) update-leader! ...posits/src/core/egraph.rkt:211:0 for-loop [77] 100.0% ------------------------------------------------------------------- merge-egraph-nodes! [59] 100.0% [69] 184(0.2%) 0(0.0%) enode-merge! ...al-posits/src/core/enode.rkt:127:0 custom-set-intersect! [78]100.0% ------------------------------------------------------------------- ??? [44] 0.4% for-loop [17] 3.4% loop! [64] 10.7% loop [70] 85.5% [70] 7248(9.2%) 848(1.1%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [70] 85.5% loop! [64] 9.6% ulp-difference [80] 3.4% ??? [81] 0.4% ------------------------------------------------------------------- dedup-children! [66] 13.0% loop [71] 87.0% [71] 6004(7.6%) 6004(7.6%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [71] 87.0% ------------------------------------------------------------------- loop! [64] 100.0% [72] 5170(6.6%) 1464(1.9%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [79] 57.1% for-loop [82] 14.6% ------------------------------------------------------------------- apply-match [47] 12.0% loop! [64] 88.0% [73] 3512(4.5%) 3090(3.9%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [86] 12.0% ------------------------------------------------------------------- substitute-e [60] 9.4% variable? [65] 36.2% match-e [53] 54.4% [74] 2220(2.8%) 2220(2.8%) ??? ...contract/private/arrow-val-first.rkt:388:18 ------------------------------------------------------------------- for-loop [67] 45.7% for-loop [54] 54.3% [75] 1558(2.0%) 446(0.6%) mk-enode! ...ional-posits/src/core/egraph.rkt:97:0 new-enode [83] 42.2% hash-has-key? [85] 29.1% ------------------------------------------------------------------- loop! [64] 100.0% [76] 1490(1.9%) 1490(1.9%) update-en-expr ...posits/src/core/egraph.rkt:205:0 ------------------------------------------------------------------- update-leader! [68] 100.0% [77] 1040(1.3%) 0(0.0%) for-loop ...ional-posits/src/core/egraph.rkt:216:6 hash-update! [90] 54.8% for-loop [84] 45.2% ------------------------------------------------------------------- enode-merge! [69] 100.0% [78] 184(0.2%) 0(0.0%) custom-set-intersect! ...ivate/set-types.rkt:269:0 for-loop [87] 100.0% ------------------------------------------------------------------- custom-set-union [72] 100.0% [79] 2952(3.7%) 814(1.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [88] 72.4% ------------------------------------------------------------------- loop [70] 12.4% ??? [8] 25.1% ??? [58] 25.1% for-loop [32] 37.5% [80] 1980(2.5%) 0(0.0%) ulp-difference ...tional-posits/src/float.rkt:46:0 infer-representation [89] 100.0% ------------------------------------------------------------------- for-loop [32] 17.6% loop [70] 20.1% ??? [36] 62.3% [81] 1434(1.8%) 300(0.4%) ??? ...tract/private/arrow-higher-order.rkt:357:33 ->flonum [91] 35.8% mk-ival [93] 23.2% ->bf [94] 20.1% ------------------------------------------------------------------- custom-set-union [72] 100.0% [82] 754(1.0%) 754(1.0%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------- mk-enode! [75] 100.0% [83] 658(0.8%) 204(0.3%) new-enode ...tional-posits/src/core/enode.rkt:95:0 type-of-enode-expr [92] 69.0% ------------------------------------------------------------------- for-loop [77] 100.0% [84] 470(0.6%) 0(0.0%) for-loop ...ional-posits/src/core/egraph.rkt:217:8 hash-update! [90] 100.0% ------------------------------------------------------------------- mk-enode! [75] 100.0% [85] 454(0.6%) 454(0.6%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 ------------------------------------------------------------------- set [73] 100.0% [86] 422(0.5%) 422(0.5%) for-loop ...cts/racket/private/set-types.rkt:937:4 ------------------------------------------------------------------- custom-set-intersect! [78]100.0% [87] 184(0.2%) 184(0.2%) for-loop ...cts/racket/private/set-types.rkt:282:4 ------------------------------------------------------------------- for-loop [79] 100.0% [88] 2138(2.7%) 2138(2.7%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------- ulp-difference [80] 100.0% [89] 1980(2.5%) 986(1.3%) infer-representation ...-posits/src/float.rkt:15:0 for-loop [97] 37.7% keyword-apply [102] 12.5% ------------------------------------------------------------------- for-loop [84] 45.2% for-loop [77] 54.8% [90] 1040(1.3%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [98] 100.0% ------------------------------------------------------------------- ??? [81] 100.0% [91] 514(0.7%) 0(0.0%) ->flonum ...ie/optional-posits/src/float.rkt:149:0 ??? [99] 100.0% ------------------------------------------------------------------- new-enode [83] 100.0% [92] 454(0.6%) 0(0.0%) type-of-enode-expr ...sits/src/core/enode.rkt:67:0 for-loop [95] 50.2% value? [96] 49.8% ------------------------------------------------------------------- ??? [81] 100.0% [93] 332(0.4%) 0(0.0%) mk-ival ...ptional-posits/src/biginterval.rkt:57:0 bf [100] 100.0% ------------------------------------------------------------------- ??? [81] 100.0% [94] 288(0.4%) 0(0.0%) ->bf ...herbie/optional-posits/src/float.rkt:170:0 for-loop [97] 100.0% ------------------------------------------------------------------- type-of-enode-expr [92] 1.2% ??? [43] 4.1% variable? [65] 21.4% constant? [63] 73.3% [95] 19756(25.1%) 14934(19.0%) for-loop ...onal-posits/src/syntax/types.rkt:18:19 ??? [101] 17.1% keyword-apply [102] 7.3% ------------------------------------------------------------------- type-of-enode-expr [92] 1.4% variable? [65] 28.5% constant? [63] 70.1% [96] 16018(20.3%) 13018(16.5%) value? ...ptional-posits/src/syntax/types.rkt:18:0 ??? [101] 11.5% keyword-apply [102] 7.2% ------------------------------------------------------------------- ->bf [94] 18.3% special-value? [29] 34.4% infer-representation [89] 47.3% [97] 1576(2.0%) 1332(1.7%) for-loop ...bie/optional-posits/src/float.rkt:17:3 ??? [101] 15.5% ------------------------------------------------------------------- hash-update! [90] 100.0% [98] 1040(1.3%) 0(0.0%) ??? .../optional-posits/src/core/egraph.rkt:219:24 for-loop [104] 100.0% ------------------------------------------------------------------- ->flonum [91] 100.0% [99] 514(0.7%) 0(0.0%) ??? ...s/herbie/optional-posits/src/float.rkt:23:2 for-loop [105] 100.0% ------------------------------------------------------------------- mk-ival [93] 100.0% [100] 332(0.4%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [103] 100.0% ------------------------------------------------------------------- for-loop [97] 4.5% value? [96] 33.8% for-loop [95] 61.7% [101] 5462(6.9%) 5462(6.9%) ??? ...-7.0/collects/racket/lazy-require.rkt:106:6 ------------------------------------------------------------------- infer-representation [89] 8.7% value? [96] 40.5% for-loop [95] 50.8% [102] 2852(3.6%) 2852(3.6%) keyword-apply ...lects/racket/private/kw.rkt:421:2 ------------------------------------------------------------------- bf [100] 25.6% bfadd [62] 74.4% [103] 1296(1.6%) 1296(1.6%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 ------------------------------------------------------------------- ??? [98] 100.0% [104] 1040(1.3%) 1040(1.3%) for-loop ...onal-posits/src/core/egraph.rkt:220:26 ------------------------------------------------------------------- ??? [99] 100.0% [105] 514(0.7%) 252(0.3%) for-loop ...bie/optional-posits/src/float.rkt:24:5 return/no-unsupplied [106] 51.0% ------------------------------------------------------------------- for-loop [105] 100.0% [106] 262(0.3%) 262(0.3%) return/no-unsupplied ...ct/private/arr-i.rkt:534:0 -------------------------------------------------------------------