Profiling results ----------------- Total cpu time observed: 117010ms (out of 121052ms) Number of samples taken: 267 (once every 438ms) (Hiding functions with self<1.0% and local<2.0%: 1 of 102 hidden) =========================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================== run [10] 49.7% [1] 115740(98.9%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [5] 49.7% loop [11] 44.2% run-improve50 [6] 6.1% --------------------------------------------------------------------------- ??? [54] 100.0% [2] 6994(6.0%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:102:0 one-iter [7] 100.0% --------------------------------------------------------------------------- ??? [54] 100.0% [3] 1266(1.1%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:215:2 pass [9] 100.0% --------------------------------------------------------------------------- parse-loop12 [57] 2.0% loop [4] 98.0% [4] 736(0.6%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [4] 98.0% ??? [8] 2.0% --------------------------------------------------------------------------- ??? [1] 100.0% [5] 115146(98.4%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [10] 100.0% --------------------------------------------------------------------------- ??? [1] 100.0% [6] 13464(11.5%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 setup-alt-simplified [12] 51.8% loop [11] 27.3% for-loop [15] 16.1% get-final-combination [18] 2.7% ??? [58] 2.2% --------------------------------------------------------------------------- iterate-egraph!13 [2] 100.0% [7] 6994(6.0%) 0(0.0%) one-iter ...ie/develop/src/core/simplify.rkt:113:0 for-loop [13] 57.3% loop [14] 42.7% --------------------------------------------------------------------------- get-final-combination [18] 9.8% f137 [41] 19.6% loop [61] 20.1% loop [4] 20.2% map [45] 30.2% [8] 3644(3.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [54] 80.4% ??? [17] 11.2% ...velop/src/common.rkt:47:2 [19] 8.5% --------------------------------------------------------------------------- loop [3] 100.0% [9] 1266(1.1%) 0(0.0%) pass ...herbie/develop/src/core/simplify.rkt:205:2 for-loop [16] 100.0% --------------------------------------------------------------------------- profile-thunk16 [5] 100.0% [10] 115146(98.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [1] 100.0% --------------------------------------------------------------------------- run-improve50 [6] 3.5% ??? [1] 96.5% [11] 105948(90.5%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:205:2 loop [20] 36.2% make-exacts* [30] 32.7% loop [31] 31.1% --------------------------------------------------------------------------- run-improve50 [6] 100.0% [12] 6968(6.0%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [21] 100.0% --------------------------------------------------------------------------- for-loop [13] 45.5% one-iter [7] 54.5% [13] 4010(3.4%) 358(0.3%) for-loop ...e/develop/src/core/simplify.rkt:123:12 for-loop [13] 45.5% rule-valid-at-type? [22] 41.8% match-e [29] 3.7% --------------------------------------------------------------------------- one-iter [7] 100.0% [14] 2984(2.6%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [23] 100.0% --------------------------------------------------------------------------- run-improve50 [6] 100.0% [15] 2168(1.9%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [24] 100.0% --------------------------------------------------------------------------- pass [9] 100.0% [16] 1266(1.1%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:208:29 argmin [25] 75.7% loop [28] 24.3% --------------------------------------------------------------------------- ??? [8] 100.0% [17] 408(0.3%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 integer->bigfloat [26] 100.0% --------------------------------------------------------------------------- run-improve50 [6] 100.0% [18] 358(0.3%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 ??? [8] 100.0% --------------------------------------------------------------------------- ??? [8] 100.0% [19] 308(0.3%) 0(0.0%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [27] 100.0% --------------------------------------------------------------------------- loop [11] 100.0% [20] 38354(32.8%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [30] 52.6% loop [31] 47.4% --------------------------------------------------------------------------- setup-alt-simplified [12] 100.0% [21] 6968(6.0%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [54] 100.0% --------------------------------------------------------------------------- for-loop [13] 100.0% [22] 3356(2.9%) 978(0.8%) rule-valid-at-type? .../src/syntax/rules.rkt:489:0 for-loop [33] 70.9% --------------------------------------------------------------------------- loop [14] 100.0% [23] 2984(2.6%) 0(0.0%) apply-match ...develop/src/core/simplify.rkt:130:2 for-loop [32] 87.9% update-leader! [43] 12.1% --------------------------------------------------------------------------- for-loop [15] 100.0% [24] 2168(1.9%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 localize-error [34] 100.0% --------------------------------------------------------------------------- for-loop [16] 100.0% [25] 958(0.8%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [35] 100.0% --------------------------------------------------------------------------- ??? [17] 100.0% [26] 408(0.3%) 408(0.3%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 --------------------------------------------------------------------------- ...velop/src/common.rkt:47:2 [19] 100.0% [27] 308(0.3%) 0(0.0%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [64] 100.0% --------------------------------------------------------------------------- for-loop [16] 100.0% [28] 308(0.3%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [35] 100.0% --------------------------------------------------------------------------- for-loop [13] 100.0% [29] 296(0.3%) 0(0.0%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 list-cartesian-product [36] 100.0% --------------------------------------------------------------------------- loop [20] 36.8% loop [11] 63.2% [30] 54758(46.8%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [61] 90.6% eval-prog [37] 9.4% --------------------------------------------------------------------------- loop [20] 35.5% loop [11] 64.5% [31] 51190(43.7%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [61] 100.0% --------------------------------------------------------------------------- apply-match [23] 100.0% [32] 2622(2.2%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:145:10 substitute-e [38] 50.2% merge-egraph-nodes! [39] 36.2% mk-enode! [42] 13.6% --------------------------------------------------------------------------- rule-valid-at-type? [22] 100.0% [33] 2378(2.0%) 2378(2.0%) for-loop ...ies/herbie/develop/src/common.rkt:99:9 --------------------------------------------------------------------------- run-iter! [24] 100.0% [34] 2168(1.9%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [51] 100.0% --------------------------------------------------------------------------- loop [28] 24.3% argmin [25] 75.7% [35] 1266(1.1%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:199:2 ??? [54] 100.0% --------------------------------------------------------------------------- list-cartesian-product [36] 50.0% match-e [29] 50.0% [36] 296(0.3%) 0(0.0%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [36] 50.0% for-loop [40] 50.0% --------------------------------------------------------------------------- make-exacts* [30] 100.0% [37] 5122(4.4%) 0(0.0%) eval-prog ...herbie/develop/src/programs.rkt:148:0 hash-ref! [51] 86.0% f137 [41] 14.0% --------------------------------------------------------------------------- substitute-e [38] 12.4% for-loop [32] 87.6% [38] 1316(1.1%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [42] 87.6% substitute-e [38] 12.4% --------------------------------------------------------------------------- merge-egraph-nodes! [39] 34.3% for-loop [32] 65.7% [39] 950(0.8%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:152:0 merge-egraph-nodes! [39] 34.3% update-leader! [43] 34.3% for-loop [44] 31.4% --------------------------------------------------------------------------- list-cartesian-product [36] 100.0% [40] 296(0.3%) 296(0.3%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 --------------------------------------------------------------------------- eval-prog [37] 2.2% f137 [41] 22.6% hash-ref! [51] 75.2% [41] 2884(2.5%) 0(0.0%) f137 .../collects/racket/match/compiler.rkt:507:40 map [45] 75.2% f137 [41] 22.6% ??? [8] 2.2% --------------------------------------------------------------------------- for-loop [32] 21.3% substitute-e [38] 78.7% [42] 1672(1.4%) 0(0.0%) mk-enode! ...bie/develop/src/core/egraph.rkt:101:0 new-enode [46] 100.0% --------------------------------------------------------------------------- apply-match [23] 35.7% merge-egraph-nodes! [39] 64.3% [43] 1014(0.9%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:217:0 for-loop [47] 100.0% --------------------------------------------------------------------------- merge-egraph-nodes! [39] 100.0% [44] 298(0.3%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:232:6 update-en-expr [73] 100.0% --------------------------------------------------------------------------- ??? [48] 25.4% f137 [41] 74.6% [45] 2168(1.9%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 ??? [48] 74.6% ??? [8] 25.4% --------------------------------------------------------------------------- mk-enode! [42] 100.0% [46] 1672(1.4%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [49] 100.0% --------------------------------------------------------------------------- update-leader! [43] 100.0% [47] 1014(0.9%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:222:6 for-loop [50] 100.0% --------------------------------------------------------------------------- map [45] 19.3% loop [61] 80.7% [48] 2168(1.9%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [51] 87.8% map [45] 12.2% --------------------------------------------------------------------------- new-enode [46] 100.0% [49] 1672(1.4%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [52] 100.0% --------------------------------------------------------------------------- for-loop [47] 100.0% [50] 1014(0.9%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:223:8 hash-update! [53] 100.0% --------------------------------------------------------------------------- localize-error [34] 6.0% eval-prog [37] 8.8% ??? [48] 26.9% loop [61] 58.2% [51] 6574(5.6%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [56] 58.2% parse-loop12 [57] 26.9% bigfloat-hash [55] 8.8% f137 [41] 6.0% --------------------------------------------------------------------------- type-of-enode-expr [49] 100.0% [52] 1672(1.4%) 0(0.0%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [58] 43.1% ??? [54] 37.4% ??? [60] 19.5% --------------------------------------------------------------------------- for-loop [50] 100.0% [53] 1014(0.9%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [59] 100.0% --------------------------------------------------------------------------- get-sigs [52] 1.9% for-loop [35] 3.9% ??? [8] 25.4% simplify-alt [21] 30.7% ??? [54] 35.2% [54] 10830(9.3%) 1764(1.5%) ??? ...llects/racket/private/norm-define.rkt:53:83 ??? [54] 35.2% iterate-egraph!13 [2] 31.3% ??? [64] 13.2% loop [3] 3.9% ??? [67] 3.1% ??? [70] 2.9% --------------------------------------------------------------------------- hash-ref! [51] 100.0% [55] 4406(3.8%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [62] 58.2% sig+exp->bigfloat [63] 41.8% --------------------------------------------------------------------------- hash-ref! [51] 100.0% [56] 4406(3.8%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:183:5 loop [61] 100.0% --------------------------------------------------------------------------- hash-ref! [51] 100.0% [57] 2168(1.9%) 0(0.0%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [61] 94.3% loop [4] 5.7% --------------------------------------------------------------------------- run-improve50 [6] 29.3% get-sigs [52] 70.7% [58] 1018(0.9%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [66] 70.7% atab-add-altns [69] 29.3% --------------------------------------------------------------------------- hash-update! [53] 100.0% [59] 1014(0.9%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:225:24 for-loop [65] 100.0% --------------------------------------------------------------------------- get-sigs [52] 100.0% [60] 326(0.3%) 0(0.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [68] 100.0% --------------------------------------------------------------------------- make-exacts* [30] 0.3% loop [31] 0.4% parse-loop12 [57] 1.0% ??? [56] 4.1% loop [61] 94.2% [61] 107736(92.1%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [61] 94.2% hash-ref! [51] 4.1% ??? [48] 1.0% ??? [87] 0.7% bf-complex-mult [91] 0.0% ??? [8] 0.0% --------------------------------------------------------------------------- bigfloat-hash [55] 100.0% [62] 2566(2.2%) 2192(1.9%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [74] 14.6% --------------------------------------------------------------------------- bigfloat-hash [55] 100.0% [63] 1840(1.6%) 1150(1.0%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [72] 37.5% --------------------------------------------------------------------------- ??? [27] 17.7% ??? [54] 82.3% [64] 1742(1.5%) 988(0.8%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [71] 43.3% --------------------------------------------------------------------------- ??? [59] 100.0% [65] 1014(0.9%) 690(0.6%) for-loop ...bie/develop/src/core/egraph.rkt:226:26 update-en-expr [73] 32.0% --------------------------------------------------------------------------- ??? [58] 100.0% [66] 720(0.6%) 0(0.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [70] 100.0% --------------------------------------------------------------------------- ??? [54] 100.0% [67] 336(0.3%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [101] 100.0% --------------------------------------------------------------------------- ??? [60] 100.0% [68] 326(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [75] 100.0% --------------------------------------------------------------------------- ??? [58] 100.0% [69] 298(0.3%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [76] 100.0% --------------------------------------------------------------------------- hash-has-key? [66] 43.7% ??? [54] 56.3% [70] 1648(1.4%) 1040(0.9%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [77] 36.9% --------------------------------------------------------------------------- ??? [64] 100.0% [71] 754(0.6%) 754(0.6%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 --------------------------------------------------------------------------- sig+exp->bigfloat [63] 100.0% [72] 690(0.6%) 690(0.6%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 --------------------------------------------------------------------------- for-loop [44] 47.9% for-loop [65] 52.1% [73] 622(0.5%) 622(0.5%) update-en-expr ...evelop/src/core/egraph.rkt:211:0 --------------------------------------------------------------------------- bfcanonicalize [62] 100.0% [74] 374(0.3%) 0(0.0%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 size+limbs->integer [78] 100.0% --------------------------------------------------------------------------- ??? [68] 100.0% [75] 326(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [79] 100.0% --------------------------------------------------------------------------- atab-add-altns [69] 100.0% [76] 298(0.3%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [80] 100.0% --------------------------------------------------------------------------- ??? [70] 100.0% [77] 608(0.5%) 0(0.0%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [81] 100.0% --------------------------------------------------------------------------- bigfloat->sig+exp [74] 100.0% [78] 374(0.3%) 374(0.3%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 --------------------------------------------------------------------------- ??? [75] 100.0% [79] 326(0.3%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [82] 100.0% --------------------------------------------------------------------------- atab-add-altn [76] 100.0% [80] 298(0.3%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [83] 100.0% --------------------------------------------------------------------------- for-loop [77] 100.0% [81] 608(0.5%) 308(0.3%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [85] 49.3% --------------------------------------------------------------------------- ??? [79] 100.0% [82] 326(0.3%) 0(0.0%) for-loop ...racket/contract/private/list.rkt:680:9 get/build-late-neg-projection [84]100.0% --------------------------------------------------------------------------- best-and-tied-at-points [80] 100.0% [83] 298(0.3%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:241:0 for-loop [86] 100.0% --------------------------------------------------------------------------- for-loop [82] 100.0% [84] 326(0.3%) 0(0.0%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [88] 100.0% --------------------------------------------------------------------------- ??? [81] 100.0% [85] 300(0.3%) 300(0.3%) make-keyword-procedure ...ket/private/kw.rkt:260:4 --------------------------------------------------------------------------- errors [83] 100.0% [86] 298(0.3%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:244:4 ??? [87] 100.0% --------------------------------------------------------------------------- for-loop [86] 0.3% loop [61] 99.7% [87] 100726(86.1%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:154:4 ??? [89] 100.0% --------------------------------------------------------------------------- get/build-late-neg-projection [84]100.0% [88] 326(0.3%) 0(0.0%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [90] 100.0% --------------------------------------------------------------------------- ??? [87] 100.0% [89] 100726(86.1%) 10156(8.7%) ??? ...acket/collects/racket/private/kw.rkt:444:14 bf-complex-mult [91] 80.0% bf-complex-add [92] 9.0% --------------------------------------------------------------------------- ??? [88] 100.0% [90] 326(0.3%) 0(0.0%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [93] 100.0% --------------------------------------------------------------------------- loop [61] 0.4% ??? [89] 99.6% [91] 80918(69.2%) 2922(2.5%) bf-complex-mult ...develop/src/bigcomplex.rkt:33:0 bf* [94] 56.3% ??? [96] 33.6% ...higher-order.rkt:346:33 [95] 6.5% --------------------------------------------------------------------------- ??? [89] 100.0% [92] 9018(7.7%) 0(0.0%) bf-complex-add .../develop/src/bigcomplex.rkt:22:0 ??? [96] 100.0% --------------------------------------------------------------------------- build-compound-type-name [90] 100.0% [93] 326(0.3%) 326(0.3%) contract-struct-name ...ract/private/prop.rkt:89:0 --------------------------------------------------------------------------- bf-complex-mult [91] 100.0% [94] 45542(38.9%) 320(0.3%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [96] 99.3% --------------------------------------------------------------------------- bf-complex-mult [91] 100.0% [95] 5238(4.5%) 3764(3.2%) ...higher-order.rkt:346:33 (unknown source) ??? [97] 28.1% --------------------------------------------------------------------------- bf-complex-add [92] 11.1% bf-complex-mult [91] 33.4% bf* [94] 55.5% [96] 81456(69.6%) 4622(4.0%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [98] 82.8% bfneg [99] 11.5% --------------------------------------------------------------------------- ...higher-order.rkt:346:33 [95] 100.0% [97] 1474(1.3%) 1112(1.0%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [100] 24.6% --------------------------------------------------------------------------- ??? [96] 100.0% [98] 67472(57.7%) 48572(41.5%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [101] 28.0% --------------------------------------------------------------------------- ??? [96] 100.0% [99] 9362(8.0%) 8178(7.0%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [101] 12.6% --------------------------------------------------------------------------- ??? [97] 100.0% [100] 362(0.3%) 362(0.3%) ??? ...ects/racket/contract/private/guts.rkt:644:8 --------------------------------------------------------------------------- ??? [67] 1.6% bfneg [99] 5.8% bfmul [98] 92.6% [101] 20420(17.5%) 20420(17.5%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ---------------------------------------------------------------------------