Profiling results ----------------- Total cpu time observed: 27440ms (out of 27948ms) Number of samples taken: 73 (once every 376ms) ==================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ==================================================================== ??? [36] 100.0% [1] 25454(92.8%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [6] 100.0% -------------------------------------------------------------------- ??? [36] 100.0% [2] 12580(45.8%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [7] 81.8% get-final-combination [9] 12.9% setup-alt-simplified [11] 5.2% -------------------------------------------------------------------- ??? [95] 100.0% [3] 10150(37.0%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:105:0 one-iter [8] 96.9% map-enodes [12] 3.1% -------------------------------------------------------------------- ??? [95] 100.0% [4] 978(3.6%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:237:2 pass [10] 100.0% -------------------------------------------------------------------- copying-mergesort [90] 100.0% [5] 310(1.1%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [91] 100.0% -------------------------------------------------------------------- profile-thunk16 [1] 100.0% [6] 25454(92.8%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [36] 100.0% -------------------------------------------------------------------- run-improve50 [2] 100.0% [7] 10292(37.5%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [13] 100.0% -------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [8] 9838(35.9%) 0(0.0%) one-iter ...ie/develop/src/core/simplify.rkt:116:0 for-loop [14] 66.8% for-loop [15] 33.2% -------------------------------------------------------------------- run-improve50 [2] 100.0% [9] 1628(5.9%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 split-table [16] 79.6% extract-alt [19] 20.4% -------------------------------------------------------------------- loop [4] 100.0% [10] 978(3.6%) 0(0.0%) pass ...herbie/develop/src/core/simplify.rkt:227:2 for-loop [17] 100.0% -------------------------------------------------------------------- run-improve50 [2] 100.0% [11] 660(2.4%) 0(0.0%) setup-alt-simplified .../develop/src/glue.rkt:49:0 simplify-alt [18] 100.0% -------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [12] 312(1.1%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:140:0 loop [51] 100.0% -------------------------------------------------------------------- for-loop [7] 100.0% [13] 10292(37.5%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [20] 86.5% finalize-iter! [23] 13.5% -------------------------------------------------------------------- one-iter [8] 100.0% [14] 6570(23.9%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:166:2 for-loop [21] 84.8% match-e [22] 15.2% -------------------------------------------------------------------- for-loop [15] 50.0% one-iter [8] 50.0% [15] 3268(11.9%) 954(3.5%) for-loop ...e/develop/src/core/simplify.rkt:126:12 for-loop [15] 50.0% match-e [22] 35.4% -------------------------------------------------------------------- get-final-combination [9] 100.0% [16] 1296(4.7%) 0(0.0%) split-table ...s/herbie/develop/src/glue.rkt:162:0 f12 [24] 100.0% -------------------------------------------------------------------- pass [10] 100.0% [17] 978(3.6%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:230:29 argmin [25] 35.4% for-loop [26] 33.9% loop [28] 30.7% -------------------------------------------------------------------- setup-alt-simplified [11] 100.0% [18] 660(2.4%) 0(0.0%) simplify-alt ...s/herbie/develop/src/glue.rkt:76:0 ??? [95] 100.0% -------------------------------------------------------------------- get-final-combination [9] 100.0% [19] 332(1.2%) 0(0.0%) extract-alt ...es/herbie/develop/src/glue.rkt:55:0 argmins [27] 100.0% -------------------------------------------------------------------- run-iter! [13] 100.0% [20] 8900(32.4%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [29] 100.0% -------------------------------------------------------------------- for-loop [14] 100.0% [21] 5572(20.3%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:148:10 mk-enode! [37] 40.8% merge-egraph-nodes! [30] 30.4% substitute-e [32] 23.2% loop! [64] 5.6% -------------------------------------------------------------------- for-loop [39] 14.7% for-loop [14] 25.5% for-loop [15] 59.9% [22] 3312(12.1%) 1332(4.9%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [31] 34.7% ??? [52] 20.6% list-cartesian-product [35] 9.8% for-loop [39] 4.7% -------------------------------------------------------------------- run-iter! [13] 100.0% [23] 1392(5.1%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [52] 100.0% -------------------------------------------------------------------- split-table [16] 100.0% [24] 1296(4.7%) 0(0.0%) f12 ...t/collects/racket/match/compiler.rkt:507:40 option-on-expr [56] 50.3% loop [51] 49.7% -------------------------------------------------------------------- for-loop [17] 100.0% [25] 346(1.3%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [33] 100.0% -------------------------------------------------------------------- for-loop [17] 100.0% [26] 332(1.2%) 332(1.2%) for-loop ...e/develop/src/core/simplify.rkt:217:13 -------------------------------------------------------------------- extract-alt [19] 100.0% [27] 332(1.2%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:150:0 composed [34] 100.0% -------------------------------------------------------------------- for-loop [17] 100.0% [28] 300(1.1%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [33] 100.0% -------------------------------------------------------------------- simplify! [20] 100.0% [29] 8900(32.4%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [36] 100.0% -------------------------------------------------------------------- for-loop [21] 100.0% [30] 1694(6.2%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:153:0 for-loop [38] 60.9% update-leader! [40] 39.1% -------------------------------------------------------------------- match-e [22] 100.0% [31] 1322(4.8%) 974(3.5%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [39] 38.0% -------------------------------------------------------------------- for-loop [21] 100.0% [32] 1290(4.7%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 mk-enode! [37] 100.0% -------------------------------------------------------------------- loop [28] 46.4% argmin [25] 53.6% [33] 646(2.4%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:208:2 ??? [95] 100.0% -------------------------------------------------------------------- argmins [27] 100.0% [34] 332(1.2%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [82] 100.0% -------------------------------------------------------------------- match-e [22] 100.0% [35] 324(1.2%) 324(1.2%) list-cartesian-product ...src/core/ematch.rkt:20:0 -------------------------------------------------------------------- for-loop [29] 10.8% run [6] 41.0% [36] 27440(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 41.0% loop [41] 25.0% run-improve50 [2] 17.5% ??? [95] 16.5% -------------------------------------------------------------------- substitute-e [32] 36.2% for-loop [21] 63.8% [37] 3564(13.0%) 646(2.4%) mk-enode! ...bie/develop/src/core/egraph.rkt:102:0 new-enode [42] 81.9% -------------------------------------------------------------------- merge-egraph-nodes! [30] 100.0% [38] 1032(3.8%) 1032(3.8%) for-loop ...rbie/develop/src/core/egraph.rkt:233:6 -------------------------------------------------------------------- match-e [22] 32.3% for-loop [31] 67.7% [39] 972(3.5%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [22] 100.0% -------------------------------------------------------------------- merge-egraph-nodes! [30] 100.0% [40] 662(2.4%) 0(0.0%) update-leader! ...evelop/src/core/egraph.rkt:218:0 for-loop [43] 100.0% -------------------------------------------------------------------- ??? [36] 100.0% [41] 13292(48.4%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:205:2 loop [44] 41.3% loop [47] 36.2% make-exacts* [48] 22.5% -------------------------------------------------------------------- mk-enode! [37] 100.0% [42] 2918(10.6%) 338(1.2%) new-enode ...erbie/develop/src/core/enode.rkt:97:0 type-of-enode-expr [45] 88.4% -------------------------------------------------------------------- update-leader! [40] 100.0% [43] 662(2.4%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:223:6 for-loop [46] 100.0% -------------------------------------------------------------------- loop [41] 100.0% [44] 5484(20.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:158:2 make-exacts* [48] 52.4% loop [47] 47.6% -------------------------------------------------------------------- new-enode [42] 100.0% [45] 2580(9.4%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:68:0 get-sigs [49] 100.0% -------------------------------------------------------------------- for-loop [43] 100.0% [46] 662(2.4%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:224:8 hash-update! [50] 100.0% -------------------------------------------------------------------- loop [44] 35.1% loop [41] 64.9% [47] 7420(27.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 loop [51] 100.0% -------------------------------------------------------------------- loop [44] 49.0% loop [41] 51.0% [48] 5872(21.4%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 loop [51] 87.5% eval-prog [54] 12.5% -------------------------------------------------------------------- type-of-enode-expr [45] 100.0% [49] 2580(9.4%) 0(0.0%) get-sigs .../herbie/develop/src/type-check.rkt:5:0 ??? [53] 75.7% ??? [52] 12.2% ??? [95] 12.0% -------------------------------------------------------------------- for-loop [46] 100.0% [50] 662(2.4%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [55] 100.0% -------------------------------------------------------------------- map-enodes [12] 0.0% make-exacts* [48] 1.1% loop! [64] 1.1% loop [47] 2.0% ??? [72] 2.7% f12 [24] 4.5% loop [51] 88.5% [51] 14218(51.8%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [51] 88.5% option-on-expr [56] 4.5% ??? [91] 3.1% hash-ref! [62] 2.7% loop! [64] 1.1% set-precompute! [65] 0.0% ??? [94] 0.0% -------------------------------------------------------------------- get-sigs [49] 13.2% match-e [22] 28.5% finalize-iter! [23] 58.2% [52] 2390(8.7%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [57] 44.4% hash-has-key? [58] 41.8% atab-add-altns [63] 13.9% -------------------------------------------------------------------- get-sigs [49] 100.0% [53] 1954(7.1%) 0(0.0%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 for-loop [59] 50.2% ??? [60] 49.8% -------------------------------------------------------------------- make-exacts* [48] 100.0% [54] 734(2.7%) 344(1.3%) eval-prog ...herbie/develop/src/programs.rkt:148:0 hash-ref! [62] 53.1% -------------------------------------------------------------------- hash-update! [50] 100.0% [55] 662(2.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:226:24 for-loop [61] 100.0% -------------------------------------------------------------------- loop [51] 49.7% f12 [24] 50.3% [56] 1296(4.7%) 0(0.0%) option-on-expr ...evelop/src/core/regimes.rkt:90:0 err-lsts->split-indices [68] 51.1% sort-context-on-expr [70] 48.9% -------------------------------------------------------------------- ??? [52] 100.0% [57] 1060(3.9%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [66] 100.0% -------------------------------------------------------------------- ??? [52] 100.0% [58] 998(3.6%) 0(0.0%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [102] 100.0% -------------------------------------------------------------------- ??? [53] 100.0% [59] 980(3.6%) 344(1.3%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [69] 64.9% -------------------------------------------------------------------- ??? [53] 100.0% [60] 974(3.5%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [67] 100.0% -------------------------------------------------------------------- ??? [55] 100.0% [61] 662(2.4%) 662(2.4%) for-loop ...bie/develop/src/core/egraph.rkt:227:26 -------------------------------------------------------------------- eval-prog [54] 33.3% loop [51] 66.7% [62] 390(1.4%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [72] 66.7% bigfloat-hash [71] 33.3% -------------------------------------------------------------------- ??? [52] 100.0% [63] 332(1.2%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [66] 100.0% -------------------------------------------------------------------- loop [51] 50.0% for-loop [21] 50.0% [64] 314(1.1%) 0(0.0%) loop! ...s/herbie/develop/src/core/enode.rkt:192:2 loop [51] 50.0% custom-set-union [73] 50.0% -------------------------------------------------------------------- loop [51] 100.0% [65] 312(1.1%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:193:0 make-sequence [74] 100.0% -------------------------------------------------------------------- atab-add-altns [63] 23.9% for-loop [57] 76.1% [66] 1392(5.1%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [75]100.0% -------------------------------------------------------------------- ??? [60] 100.0% [67] 974(3.5%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [76] 100.0% -------------------------------------------------------------------- option-on-expr [56] 100.0% [68] 662(2.4%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:235:0 add-splitpoint [77] 100.0% -------------------------------------------------------------------- for-loop [59] 100.0% [69] 636(2.3%) 0(0.0%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [78] 100.0% -------------------------------------------------------------------- option-on-expr [56] 100.0% [70] 634(2.3%) 0(0.0%) sort-context-on-expr ...velop/src/points.rkt:115:0 for-loop [80] 51.1% ??? [81] 48.9% -------------------------------------------------------------------- hash-ref! [62] 100.0% [71] 390(1.4%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [79] 100.0% -------------------------------------------------------------------- hash-ref! [62] 100.0% [72] 390(1.4%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:192:5 loop [51] 100.0% -------------------------------------------------------------------- loop! [64] 100.0% [73] 314(1.1%) 314(1.1%) custom-set-union ...et/private/set-types.rkt:168:0 -------------------------------------------------------------------- set-precompute! [65] 100.0% [74] 312(1.1%) 312(1.1%) make-sequence ...ects/racket/private/for.rkt:509:2 -------------------------------------------------------------------- atab-add-altn [66] 100.0% [75] 1392(5.1%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [82] 100.0% -------------------------------------------------------------------- ??? [67] 100.0% [76] 974(3.5%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [83] 100.0% -------------------------------------------------------------------- err-lsts->split-indices [68]100.0% [77] 662(2.4%) 0(0.0%) add-splitpoint ...velop/src/core/regimes.rkt:252:2 for-loop [84] 100.0% -------------------------------------------------------------------- ??? [69] 100.0% [78] 636(2.3%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [85] 100.0% -------------------------------------------------------------------- bigfloat-hash [71] 100.0% [79] 390(1.4%) 390(1.4%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 -------------------------------------------------------------------- sort-context-on-expr [70] 100.0% [80] 324(1.2%) 324(1.2%) for-loop ...s/herbie/develop/src/points.rkt:116:19 -------------------------------------------------------------------- sort-context-on-expr [70] 100.0% [81] 310(1.1%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [86] 100.0% -------------------------------------------------------------------- composed [34] 19.3% best-and-tied-at-points [75] 80.7% [82] 1724(6.3%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:241:0 for-loop [87] 100.0% -------------------------------------------------------------------- ??? [76] 100.0% [83] 974(3.5%) 358(1.3%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [88] 63.2% -------------------------------------------------------------------- add-splitpoint [77] 100.0% [84] 662(2.4%) 334(1.2%) for-loop ...bie/develop/src/core/regimes.rkt:254:4 for-loop [89] 49.5% -------------------------------------------------------------------- ??? [78] 100.0% [85] 636(2.3%) 636(2.3%) ??? ...ects/racket/contract/private/guts.rkt:644:8 -------------------------------------------------------------------- ??? [81] 100.0% [86] 310(1.1%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [90] 100.0% -------------------------------------------------------------------- errors [82] 100.0% [87] 1724(6.3%) 332(1.2%) for-loop ...es/herbie/develop/src/points.rkt:244:4 ??? [91] 80.7% -------------------------------------------------------------------- for-loop [83] 100.0% [88] 616(2.2%) 616(2.2%) add-list-context ...ontract/private/list.rkt:752:0 -------------------------------------------------------------------- for-loop [84] 100.0% [89] 328(1.2%) 328(1.2%) for-loop ...bie/develop/src/core/regimes.rkt:258:8 -------------------------------------------------------------------- generic-sort/key [86] 25.0% copying-mergesort [90] 75.0% [90] 310(1.1%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [90] 75.0% jloop [5] 25.0% -------------------------------------------------------------------- jloop [5] 2.2% for-loop [87] 10.0% loop [51] 87.8% [91] 13938(50.8%) 438(1.6%) ??? ...tlies/herbie/develop/src/programs.rkt:154:4 ??? [92] 62.3% ??? [93] 26.9% ??? [94] 7.6% -------------------------------------------------------------------- ??? [91] 100.0% [92] 8684(31.6%) 2090(7.6%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [101] 34.8% bf* [97] 32.8% ??? [98] 4.8% ??? [99] 3.5% -------------------------------------------------------------------- ??? [91] 100.0% [93] 3756(13.7%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [96] 100.0% -------------------------------------------------------------------- loop [51] 23.3% ??? [91] 76.7% [94] 1382(5.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [95] 100.0% -------------------------------------------------------------------- get-sigs [49] 0.8% for-loop [33] 1.7% simplify-alt [18] 2.6% ??? [95] 4.0% ??? [94] 11.0% for-loop [100] 39.2% ??? [36] 40.6% [95] 12510(45.6%) 1024(3.7%) ??? ...llects/racket/private/norm-define.rkt:53:83 iterate-egraph!13 [3] 40.2% for-loop [100] 39.2% ??? [95] 4.0% ??? [103] 3.7% loop [4] 3.0% ??? [102] 1.7% -------------------------------------------------------------------- ??? [93] 100.0% [96] 3756(13.7%) 3368(12.3%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [106] 10.3% -------------------------------------------------------------------- ??? [92] 100.0% [97] 2846(10.4%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [101] 100.0% -------------------------------------------------------------------- ??? [92] 100.0% [98] 418(1.5%) 418(1.5%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 -------------------------------------------------------------------- ??? [92] 100.0% [99] 308(1.1%) 308(1.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 -------------------------------------------------------------------- ??? [95] 100.0% [100] 10130(36.9%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:66:12 ??? [95] 100.0% -------------------------------------------------------------------- bf* [97] 48.5% ??? [92] 51.5% [101] 5868(21.4%) 294(1.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [104] 95.0% -------------------------------------------------------------------- ??? [95] 39.7% hash-has-key? [58] 60.3% [102] 1654(6.0%) 992(3.6%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [105] 40.0% -------------------------------------------------------------------- ??? [95] 100.0% [103] 658(2.4%) 658(2.4%) ??? ...racket/collects/racket/private/kw.rkt:761:9 -------------------------------------------------------------------- ??? [101] 100.0% [104] 5574(20.3%) 3980(14.5%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [106] 28.6% -------------------------------------------------------------------- ??? [102] 100.0% [105] 662(2.4%) 316(1.2%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [107] 52.3% -------------------------------------------------------------------- real->bigfloat [96] 19.6% bfmul [104] 80.4% [106] 1982(7.2%) 1982(7.2%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -------------------------------------------------------------------- for-loop [105] 100.0% [107] 346(1.3%) 346(1.3%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 --------------------------------------------------------------------