Profiling results ----------------- Total cpu time observed: 130332ms (out of 130956ms) Number of samples taken: 378 (once every 345ms) (Hiding functions with self<1.0% and local<2.0%: 10 of 198 hidden) ========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ========================================================================================== ??? [14] 100.0% [1] 115544(88.7%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [8] 100.0% ------------------------------------------------------------------------------------------ location-do [53] 100.0% [2] 4402(3.4%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:210:2 pass [9] 100.0% ------------------------------------------------------------------------------------------ loop [87] 8.0% hash-ref! [139] 92.0% [3] 2938(2.3%) 0(0.0%) simplify ...erbie/develop/src/core/reduce.rkt:15:0 parse-loop12 [150] 81.2% f6 [62] 10.8% simplify* [13] 8.0% ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [4] 2386(1.8%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:291:23 for-loop [10] 100.0% ------------------------------------------------------------------------------------------ copying-mergesort [140] 100.0% [5] 1736(1.3%) 358(0.3%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [159] 58.6% ->flonum [166] 20.7% ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [6] 1314(1.0%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:334:33 hash-ref! [139] 58.8% for-loop [11] 41.2% ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [7] 704(0.5%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:281:26 for-loop [12] 100.0% ------------------------------------------------------------------------------------------ profile-thunk16 [1] 99.2% [8] 116522(89.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [14] 100.0% ------------------------------------------------------------------------------------------ loop [2] 100.0% [9] 4402(3.4%) 0(0.0%) pass ...herbie/develop/src/core/simplify.rkt:200:2 for-loop [15] 100.0% ------------------------------------------------------------------------------------------ ??? [4] 100.0% [10] 2386(1.8%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:294:27 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ ??? [6] 100.0% [11] 714(0.5%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:337:46 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ ??? [7] 100.0% [12] 704(0.5%) 0(0.0%) for-loop ...bie/develop/src/core/taylor.rkt:281:52 ??? [16] 51.1% hash-ref! [139] 48.9% ------------------------------------------------------------------------------------------ simplify [3] 100.0% [13] 234(0.2%) 0(0.0%) simplify* ...rbie/develop/src/core/reduce.rkt:20:0 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ for-loop [37] 9.8% run [8] 42.8% [14] 123332(94.6%) 312(0.2%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 42.0% run-improve50 [17] 41.9% location-do [53] 11.9% loop [21] 4.1% ------------------------------------------------------------------------------------------ pass [9] 100.0% [15] 4402(3.4%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:203:29 argmin [18] 100.0% ------------------------------------------------------------------------------------------ for-loop [12] 100.0% [16] 360(0.3%) 0(0.0%) ??? ...s/herbie/develop/src/core/taylor.rkt:284:19 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ ??? [14] 100.0% [17] 110178(84.5%) 0(0.0%) run-improve50 ...ie/develop/src/mainloop.rkt:234:0 for-loop [19] 55.7% get-final-combination [20] 43.7% loop [21] 0.6% ------------------------------------------------------------------------------------------ for-loop [15] 100.0% [18] 4402(3.4%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [22] 100.0% ------------------------------------------------------------------------------------------ run-improve50 [17] 100.0% [19] 61318(47.0%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:249:10 run-iter! [23] 100.0% ------------------------------------------------------------------------------------------ run-improve50 [17] 100.0% [20] 48160(37.0%) 0(0.0%) get-final-combination ...op/src/mainloop.rkt:264:0 split-table [24] 99.3% extract-alt [26] 0.7% ------------------------------------------------------------------------------------------ run-improve50 [17] 6.4% ??? [14] 93.6% [21] 10860(8.3%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:193:2 loop [25] 56.9% make-exacts* [30] 36.9% loop [31] 3.2% for-loop [27] 3.0% ------------------------------------------------------------------------------------------ argmin [18] 100.0% [22] 4402(3.4%) 0(0.0%) for-loop .../herbie/develop/src/programs.rkt:200:2 location-do [53] 77.3% ...velop/src/common.rkt:47:2 [55] 22.7% ------------------------------------------------------------------------------------------ for-loop [19] 100.0% [23] 61318(47.0%) 0(0.0%) run-iter! ...herbie/develop/src/mainloop.rkt:215:0 simplify! [28] 59.5% finalize-iter! [29] 29.6% gen-series! [32] 5.4% choose-best-alt! [33] 3.2% localize-error [34] 1.9% gen-rewrites! [36] 0.5% ------------------------------------------------------------------------------------------ get-final-combination [20] 100.0% [24] 47830(36.7%) 0(0.0%) split-table ...s/herbie/develop/src/glue.rkt:162:0 f6 [62] 100.0% ------------------------------------------------------------------------------------------ loop [21] 100.0% [25] 6184(4.7%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:151:2 loop [31] 61.0% make-exacts* [30] 33.3% eval-prog [126] 5.7% ------------------------------------------------------------------------------------------ get-final-combination [20] 100.0% [26] 330(0.3%) 0(0.0%) extract-alt ...es/herbie/develop/src/glue.rkt:54:0 loop [67] 100.0% ------------------------------------------------------------------------------------------ loop [21] 100.0% [27] 326(0.3%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:200:24 for-loop [35] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [28] 36454(28.0%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:155:0 for-loop [37] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [29] 18154(13.9%) 0(0.0%) finalize-iter! ...e/develop/src/mainloop.rkt:169:0 ??? [42] 100.0% ------------------------------------------------------------------------------------------ loop [25] 34.0% loop [21] 66.0% [30] 6060(4.6%) 0(0.0%) make-exacts* ...erbie/develop/src/points.rkt:138:0 map [77] 60.2% loop [87] 39.8% ------------------------------------------------------------------------------------------ loop [21] 8.4% loop [25] 91.6% [31] 4122(3.2%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:141:4 map [77] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [32] 3288(2.5%) 0(0.0%) gen-series! ...rbie/develop/src/mainloop.rkt:129:0 for-loop [38] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [33] 1936(1.5%) 0(0.0%) choose-best-alt! ...develop/src/mainloop.rkt:115:0 ??? [42] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [34] 1166(0.9%) 0(0.0%) localize-error ...velop/src/core/localize.rkt:47:0 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ for-loop [27] 100.0% [35] 326(0.3%) 0(0.0%) for-loop ...s/herbie/develop/src/points.rkt:201:26 ??? [50] 100.0% ------------------------------------------------------------------------------------------ run-iter! [23] 100.0% [36] 320(0.2%) 0(0.0%) gen-rewrites! ...ie/develop/src/mainloop.rkt:142:0 for-loop [39] 100.0% ------------------------------------------------------------------------------------------ simplify! [28] 100.0% [37] 36454(28.0%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:159:6 ??? [14] 99.1% ------------------------------------------------------------------------------------------ gen-series! [32] 100.0% [38] 3288(2.5%) 0(0.0%) for-loop .../herbie/develop/src/mainloop.rkt:135:7 taylor-alt [40] 100.0% ------------------------------------------------------------------------------------------ gen-rewrites! [36] 100.0% [39] 320(0.2%) 0(0.0%) for-loop ...herbie/develop/src/mainloop.rkt:147:11 ??? [41] 100.0% ------------------------------------------------------------------------------------------ for-loop [38] 100.0% [40] 3288(2.5%) 0(0.0%) taylor-alt ...es/herbie/develop/src/glue.rkt:139:0 for-loop [43] 100.0% ------------------------------------------------------------------------------------------ for-loop [39] 100.0% [41] 320(0.2%) 0(0.0%) ??? ...ies/herbie/develop/src/alternative.rkt:88:0 rewriter [44] 100.0% ------------------------------------------------------------------------------------------ reduce-to-single! [115] 1.1% for-loop [111] 1.2% variable? [122] 4.5% choose-best-alt! [33] 6.3% match-e [105] 8.8% ??? [182] 18.2% finalize-iter! [29] 58.8% [42] 30546(23.4%) 3064(2.4%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [45] 56.7% hash-has-key? [46] 23.7% ??? [47] 6.3% atab-add-altns [48] 2.2% ------------------------------------------------------------------------------------------ taylor-alt [40] 100.0% [43] 3288(2.5%) 0(0.0%) for-loop ...lies/herbie/develop/src/glue.rkt:141:2 ??? [50] 100.0% ------------------------------------------------------------------------------------------ matcher [52] 50.0% ??? [41] 50.0% [44] 320(0.2%) 0(0.0%) rewriter ...bie/develop/src/core/matcher.rkt:127:2 for-loop [49] 100.0% ------------------------------------------------------------------------------------------ ??? [42] 100.0% [45] 17492(13.4%) 0(0.0%) for-loop ...ie/develop/src/core/alt-table.rkt:51:2 atab-add-altn [51] 100.0% ------------------------------------------------------------------------------------------ ??? [42] 100.0% [46] 7426(5.7%) 2106(1.6%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [65] 71.6% ------------------------------------------------------------------------------------------ ??? [42] 100.0% [47] 1936(1.5%) 0(0.0%) ??? .../herbie/develop/src/core/alt-table.rkt:54:0 ??? [50] 100.0% ------------------------------------------------------------------------------------------ ??? [42] 100.0% [48] 662(0.5%) 0(0.0%) atab-add-altns ...elop/src/core/alt-table.rkt:50:0 atab-add-altn [51] 100.0% ------------------------------------------------------------------------------------------ rewriter [44] 100.0% [49] 320(0.2%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:130:10 matcher [52] 100.0% ------------------------------------------------------------------------------------------ for-loop [35] 1.3% eval-prog [126] 1.4% location-do [53] 6.7% for-loop [43] 6.7% ??? [47] 7.2% f6 [62] 76.6% [50] 24482(18.8%) 1382(1.1%) ??? ...tract/private/arrow-higher-order.rkt:342:33 location-do [53] 30.9% ??? [182] 23.4% ...velop/src/common.rkt:47:2 [55] 13.9% ??? [57] 9.5% best-alt [58] 7.2% approximate9 [56] 6.7% ->flonum [166] 1.5% ------------------------------------------------------------------------------------------ atab-add-altns [48] 3.6% for-loop [45] 96.4% [51] 18154(13.9%) 0(0.0%) atab-add-altn ...elop/src/core/alt-table.rkt:208:0 best-and-tied-at-points [54] 90.5% override-at-pnts [59] 7.6% ------------------------------------------------------------------------------------------ for-loop [61] 50.0% for-loop [49] 50.0% [52] 320(0.2%) 0(0.0%) matcher ...rbie/develop/src/core/matcher.rkt:163:2 for-loop [61] 50.0% rewriter [44] 25.0% for-loop [60] 25.0% ------------------------------------------------------------------------------------------ for-loop [22] 2.4% ??? [50] 15.8% for-loop [64] 16.0% location-do [53] 26.0% ??? [14] 39.8% [53] 48192(37.0%) 1052(0.8%) location-do ...acket/private/norm-define.rkt:53:83 iterate-egraph!13 [63] 34.9% location-do [53] 26.0% for-loop [64] 16.0% ??? [65] 11.0% loop [2] 3.4% ??? [50] 3.1% ??? [79] 1.7% *simplify-rules* [70] 1.5% return/no-unsupplied [180] 0.6% ------------------------------------------------------------------------------------------ atab-add-altn [51] 100.0% [54] 16438(12.6%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [103] 98.0% for-loop [73] 2.0% ------------------------------------------------------------------------------------------ for-loop [22] 22.8% ??? [50] 77.2% [55] 4392(3.4%) 2384(1.8%) ...velop/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [68] 29.4% ??? [71] 16.3% ------------------------------------------------------------------------------------------ ??? [50] 100.0% [56] 3288(2.5%) 0(0.0%) approximate9 ...e/develop/src/core/taylor.rkt:12:0 loop [66] 82.2% f6 [62] 17.8% ------------------------------------------------------------------------------------------ ??? [50] 100.0% [57] 2322(1.8%) 1004(0.8%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 get/build-late-neg-projection [72] 28.3% ??? [90] 14.4% ??? [74] 14.0% ------------------------------------------------------------------------------------------ ??? [50] 100.0% [58] 1936(1.5%) 0(0.0%) best-alt ...tlies/herbie/develop/src/glue.rkt:76:0 loop [67] 52.6% argmins [69] 47.4% ------------------------------------------------------------------------------------------ atab-add-altn [51] 100.0% [59] 1386(1.1%) 0(0.0%) override-at-pnts ...p/src/core/alt-table.rkt:145:0 errors [103] 100.0% ------------------------------------------------------------------------------------------ matcher [52] 100.0% [60] 320(0.2%) 0(0.0%) for-loop ...bie/develop/src/core/matcher.rkt:155:6 pattern-match [75] 100.0% ------------------------------------------------------------------------------------------ matcher [52] 100.0% [61] 320(0.2%) 0(0.0%) for-loop ...ie/develop/src/core/matcher.rkt:179:21 matcher [52] 100.0% ------------------------------------------------------------------------------------------ simplify [3] 0.1% ??? [99] 0.2% approximate9 [56] 0.4% hash-ref! [139] 0.4% map [77] 0.5% eval-prog [126] 10.3% f6 [62] 19.4% split-table [24] 68.7% [62] 51352(39.4%) 700(0.5%) f6 ...et/collects/racket/match/compiler.rkt:507:40 loop [87] 61.5% f6 [62] 19.4% ??? [50] 9.8% option-on-expr [95] 7.3% map [77] 1.1% combine-mterms [86] 0.1% ------------------------------------------------------------------------------------------ location-do [53] 100.0% [63] 33686(25.8%) 0(0.0%) iterate-egraph!13 ...p/src/core/simplify.rkt:102:0 one-iter [76] 96.1% map-enodes [81] 3.9% ------------------------------------------------------------------------------------------ location-do [53] 100.0% [64] 15860(12.2%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:63:12 location-do [53] 100.0% ------------------------------------------------------------------------------------------ hash-has-key? [46] 42.9% location-do [53] 57.1% [65] 12402(9.5%) 4042(3.1%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [78] 43.3% ??? [90] 16.1% successfully-got-the-right-kind-of-function [169] 5.5% ??? [182] 2.5% ------------------------------------------------------------------------------------------ approximate9 [56] 100.0% [66] 2704(2.1%) 0(0.0%) loop ...es/herbie/develop/src/core/taylor.rkt:83:4 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ extract-alt [26] 24.5% best-alt [58] 75.5% [67] 1348(1.0%) 0(0.0%) loop ...htlies/herbie/develop/src/common.rkt:142:2 composed [80] 100.0% ------------------------------------------------------------------------------------------ for-loop [93] 12.9% ??? [79] 24.5% ...velop/src/common.rkt:47:2 [55] 62.6% [68] 1290(1.0%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [79] 62.6% ??? [182] 37.4% ------------------------------------------------------------------------------------------ best-alt [58] 100.0% [69] 918(0.7%) 0(0.0%) argmins ...ies/herbie/develop/src/common.rkt:141:0 composed [80] 100.0% ------------------------------------------------------------------------------------------ location-do [53] 100.0% [70] 722(0.6%) 0(0.0%) *simplify-rules* ...lop/src/syntax/rules.rkt:449:0 for-loop [132] 100.0% ------------------------------------------------------------------------------------------ ...velop/src/common.rkt:47:2 [55] 100.0% [71] 718(0.6%) 0(0.0%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [179] 50.1% assoc-ref [83] 49.9% ------------------------------------------------------------------------------------------ unconstrained-domain->-projection [82] 24.6% ??? [57] 75.4% [72] 658(0.5%) 0(0.0%) get/build-late-neg-projection ...te/guts.rkt:691:0 unconstrained-domain->-projection [82] 75.4% ??? [84] 24.6% ------------------------------------------------------------------------------------------ best-and-tied-at-points [54] 100.0% [73] 334(0.3%) 334(0.3%) for-loop .../develop/src/core/alt-table.rkt:124:16 ------------------------------------------------------------------------------------------ ??? [57] 100.0% [74] 326(0.3%) 326(0.3%) ??? ...private/unconstrained-domain-arrow.rkt:69:2 ------------------------------------------------------------------------------------------ for-loop [60] 100.0% [75] 320(0.2%) 0(0.0%) pattern-match ...develop/src/core/matcher.rkt:47:0 for-loop [85] 100.0% ------------------------------------------------------------------------------------------ iterate-egraph!13 [63] 100.0% [76] 32358(24.8%) 1670(1.3%) one-iter ...ie/develop/src/core/simplify.rkt:113:0 for-loop [88] 69.0% loop [89] 17.4% apply-match [96] 6.4% loop [91] 2.1% ------------------------------------------------------------------------------------------ parse-loop12 [150] 3.1% f6 [62] 9.7% make-exacts* [30] 40.9% loop [31] 46.3% [77] 8912(6.8%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [87] 91.4% ??? [99] 3.9% f6 [62] 3.6% loop [161] 1.1% ------------------------------------------------------------------------------------------ ??? [65] 100.0% [78] 5370(4.1%) 3018(2.3%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [90] 31.4% for-loop [92] 12.4% ------------------------------------------------------------------------------------------ location-do [53] 44.9% ??? [68] 55.1% [79] 2342(1.8%) 1376(1.1%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [68] 27.0% for-loop [93] 14.3% ------------------------------------------------------------------------------------------ argmins [69] 40.5% loop [67] 59.5% [80] 2266(1.7%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 errors [103] 100.0% ------------------------------------------------------------------------------------------ iterate-egraph!13 [63] 100.0% [81] 1328(1.0%) 0(0.0%) map-enodes ...ie/develop/src/core/egraph.rkt:139:0 loop [87] 74.8% for-loop [98] 25.2% ------------------------------------------------------------------------------------------ get/build-late-neg-projection [72] 100.0% [82] 658(0.5%) 334(0.3%) unconstrained-domain->-projection ...rrow.rkt:60:0 get/build-late-neg-projection [72] 49.2% ------------------------------------------------------------------------------------------ ??? [71] 100.0% [83] 358(0.3%) 358(0.3%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------ get/build-late-neg-projection [72] 100.0% [84] 324(0.2%) 324(0.2%) ??? ...cts/racket/contract/private/prop.rkt:314:12 ------------------------------------------------------------------------------------------ pattern-match [75] 100.0% [85] 320(0.2%) 320(0.2%) for-loop ...rbie/develop/src/core/matcher.rkt:65:9 ------------------------------------------------------------------------------------------ f6 [62] 100.0% [86] 318(0.2%) 0(0.0%) combine-mterms ...evelop/src/core/reduce.rkt:180:0 for-loop [94] 100.0% ------------------------------------------------------------------------------------------ make-exacts* [30] 0.0% map-enodes [81] 0.2% map [77] 0.6% loop! [124] 0.8% ??? [155] 1.2% parse-loop12 [150] 1.7% option-on-expr [95] 4.8% loop [87] 42.5% f6 [62] 47.9% [87] 59936(46.0%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:25:19 option-on-expr [95] 47.9% loop [87] 42.5% errors [103] 4.8% ??? [99] 1.2% hash-ref! [139] 1.2% parse-loop12 [150] 1.0% loop! [124] 0.8% simplify [3] 0.4% for-loop [98] 0.2% ??? [159] 0.1% ??? [178] 0.0% ??? [102] 0.0% ->flonum [166] 0.0% ------------------------------------------------------------------------------------------ for-loop [88] 48.5% one-iter [76] 51.5% [88] 22338(17.1%) 5880(4.5%) for-loop ...e/develop/src/core/simplify.rkt:123:12 for-loop [88] 48.5% match-e [105] 35.3% ??? [100] 1.6% ------------------------------------------------------------------------------------------ one-iter [76] 100.0% [89] 5618(4.3%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [96] 100.0% ------------------------------------------------------------------------------------------ ??? [57] 8.3% for-loop [78] 41.9% ??? [65] 49.8% [90] 4018(3.1%) 1354(1.0%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [97] 66.3% ------------------------------------------------------------------------------------------ one-iter [76] 100.0% [91] 672(0.5%) 672(0.5%) loop ...ket/collects/racket/private/list.rkt:264:4 ------------------------------------------------------------------------------------------ for-loop [78] 100.0% [92] 668(0.5%) 308(0.2%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [101] 53.9% ------------------------------------------------------------------------------------------ ??? [79] 100.0% [93] 334(0.3%) 0(0.0%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [68] 100.0% ------------------------------------------------------------------------------------------ combine-mterms [86] 100.0% [94] 318(0.2%) 318(0.2%) for-loop ...rbie/develop/src/core/reduce.rkt:184:5 ------------------------------------------------------------------------------------------ f6 [62] 8.8% loop [87] 91.2% [95] 47830(36.7%) 0(0.0%) option-on-expr ...evelop/src/core/regimes.rkt:92:0 pick-errors [104] 62.5% loop [87] 18.5% sort-context-on-expr [106] 12.2% errors [103] 4.3% err-lsts->split-indices [107] 2.6% ------------------------------------------------------------------------------------------ one-iter [76] 26.8% loop [89] 73.2% [96] 7678(5.9%) 346(0.3%) apply-match ...develop/src/core/simplify.rkt:129:2 merge-egraph-nodes! [121] 35.7% match-e [105] 18.7% for-loop [108] 9.3% mk-enode! [109] 9.1% loop! [124] 9.1% update-leader! [129] 4.7% substitute-e [112] 4.7% reduce-to-single! [115] 4.2% ------------------------------------------------------------------------------------------ ??? [90] 100.0% [97] 2664(2.0%) 2664(2.0%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------ map-enodes [81] 25.2% loop [87] 74.8% [98] 1328(1.0%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:168:2 compose [110] 52.3% eval-const-expr [113] 25.2% setfindf [116] 22.6% ------------------------------------------------------------------------------------------ map [77] 30.5% loop [87] 69.5% [99] 1146(0.9%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [139] 69.5% f6 [62] 30.5% ------------------------------------------------------------------------------------------ for-loop [88] 100.0% [100] 698(0.5%) 336(0.3%) ??? ...ies/herbie/develop/src/core/ematch.rkt:50:5 for-loop [111] 51.9% ------------------------------------------------------------------------------------------ for-loop [92] 100.0% [101] 360(0.3%) 360(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ------------------------------------------------------------------------------------------ loop [87] 100.0% [102] 330(0.3%) 0(0.0%) ??? ...erbie/develop/src/core/alt-table.rkt:199:30 loop [114] 100.0% ------------------------------------------------------------------------------------------ override-at-pnts [59] 4.5% option-on-expr [95] 6.7% composed [80] 7.4% loop [87] 28.8% best-and-tied-at-points [54] 52.6% [103] 30626(23.5%) 360(0.3%) errors ...lies/herbie/develop/src/points.rkt:218:0 for-loop [118] 76.5% eval-prog [126] 21.6% *bit-width* [125] 0.7% ------------------------------------------------------------------------------------------ option-on-expr [95] 100.0% [104] 29902(22.9%) 0(0.0%) pick-errors .../develop/src/core/regimes.rkt:160:0 for-loop [117] 100.0% ------------------------------------------------------------------------------------------ apply-match [96] 5.2% for-loop [127] 22.6% for-loop [88] 72.2% [105] 17198(13.2%) 8968(6.9%) match-e ...herbie/develop/src/core/ematch.rkt:46:0 for-loop [119] 32.1% ??? [42] 9.3% for-loop [127] 8.5% variable? [122] 3.4% list-cartesian-product [130] 1.0% ------------------------------------------------------------------------------------------ option-on-expr [95] 100.0% [106] 5828(4.5%) 0(0.0%) sort-context-on-expr ...velop/src/points.rkt:115:0 ??? [120] 93.8% eval-prog [126] 6.2% ------------------------------------------------------------------------------------------ option-on-expr [95] 100.0% [107] 1230(0.9%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:214:0 add-splitpoint [123] 100.0% ------------------------------------------------------------------------------------------ apply-match [96] 100.0% [108] 714(0.5%) 0(0.0%) for-loop ...e/develop/src/core/simplify.rkt:143:10 loop! [124] 51.5% merge-egraph-nodes! [121] 48.5% ------------------------------------------------------------------------------------------ apply-match [96] 100.0% [109] 700(0.5%) 700(0.5%) mk-enode! ...bie/develop/src/core/egraph.rkt:101:0 ------------------------------------------------------------------------------------------ for-loop [98] 100.0% [110] 694(0.5%) 694(0.5%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------ ??? [100] 100.0% [111] 362(0.3%) 0(0.0%) for-loop ...erbie/develop/src/core/ematch.rkt:51:7 ??? [42] 100.0% ------------------------------------------------------------------------------------------ substitute-e [112] 50.0% apply-match [96] 50.0% [112] 358(0.3%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:71:0 substitute-e [112] 50.0% variable? [122] 50.0% ------------------------------------------------------------------------------------------ for-loop [98] 100.0% [113] 334(0.3%) 0(0.0%) eval-const-expr .../develop/src/programs.rkt:167:0 ??? [142] 100.0% ------------------------------------------------------------------------------------------ ??? [102] 100.0% [114] 330(0.3%) 330(0.3%) loop ...ket/collects/racket/private/list.rkt:82:16 ------------------------------------------------------------------------------------------ apply-match [96] 100.0% [115] 324(0.2%) 0(0.0%) reduce-to-single! ...lop/src/core/egraph.rkt:324:0 ??? [42] 100.0% ------------------------------------------------------------------------------------------ for-loop [98] 100.0% [116] 300(0.2%) 300(0.2%) setfindf ...es/herbie/develop/src/common.rkt:175:0 ------------------------------------------------------------------------------------------ pick-errors [104] 97.8% [117] 30570(23.5%) 0(0.0%) for-loop ...bie/develop/src/core/regimes.rkt:163:6 eval-prog [126] 95.7% ??? [159] 4.3% ------------------------------------------------------------------------------------------ errors [103] 100.0% [118] 23430(18.0%) 986(0.8%) for-loop ...es/herbie/develop/src/points.rkt:221:4 ??? [159] 88.5% ulp-difference [135] 3.0% ->flonum [166] 2.8% ------------------------------------------------------------------------------------------ match-e [105] 100.0% [119] 7254(5.6%) 1742(1.3%) for-loop ...rbie/develop/src/core/ematch.rkt:59:11 for-loop [127] 61.5% list-cartesian-product [130] 9.4% curried [138] 4.9% foldl [136] 2.5% ------------------------------------------------------------------------------------------ sort-context-on-expr [106] 100.0% [120] 5466(4.2%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [128] 86.9% loop [149] 13.1% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [121] 5.4% for-loop [108] 11.2% apply-match [96] 83.4% [121] 3086(2.4%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:152:0 update-leader! [129] 54.6% enode-merge! [133] 22.9% for-loop [137] 11.7% merge-egraph-nodes! [121] 5.4% for-loop [132] 5.4% ------------------------------------------------------------------------------------------ substitute-e [112] 20.6% match-e [105] 79.4% [122] 1742(1.3%) 358(0.3%) variable? ...e/develop/src/syntax/syntax.rkt:529:0 ??? [42] 79.4% ------------------------------------------------------------------------------------------ err-lsts->split-indices [107] 100.0% [123] 1230(0.9%) 0(0.0%) add-splitpoint ...velop/src/core/regimes.rkt:227:2 for-loop [131] 100.0% ------------------------------------------------------------------------------------------ for-loop [108] 17.3% apply-match [96] 27.1% loop [87] 55.7% [124] 1066(0.8%) 362(0.3%) loop! ...s/herbie/develop/src/core/enode.rkt:163:2 loop [87] 55.7% set [134] 33.0% ------------------------------------------------------------------------------------------ errors [103] 100.0% [125] 224(0.2%) 0(0.0%) *bit-width* ...s/herbie/develop/src/float.rkt:22:0 ??? [179] 100.0% ------------------------------------------------------------------------------------------ loop [25] 1.0% sort-context-on-expr [106] 1.0% errors [103] 18.1% for-loop [117] 80.0% [126] 36588(28.1%) 13174(10.1%) eval-prog ...herbie/develop/src/programs.rkt:149:0 f6 [62] 53.7% ??? [142] 1.9% hash-ref! [139] 1.9% go [145] 1.9% ??? [50] 1.0% parse-app [146] 0.8% ------------------------------------------------------------------------------------------ match-e [105] 36.8% for-loop [119] 63.2% [127] 7622(5.8%) 310(0.2%) for-loop ...rbie/develop/src/core/ematch.rkt:65:37 match-e [105] 95.9% ------------------------------------------------------------------------------------------ ??? [120] 100.0% [128] 4748(3.6%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [140] 66.4% loop [149] 33.6% ------------------------------------------------------------------------------------------ apply-match [96] 17.6% merge-egraph-nodes! [121] 82.4% [129] 2044(1.6%) 334(0.3%) update-leader! ...evelop/src/core/egraph.rkt:217:0 for-loop [141] 66.0% update-en-expr [181] 17.6% ------------------------------------------------------------------------------------------ list-cartesian-product [130] 12.8% match-e [105] 12.8% for-loop [119] 74.5% [130] 1378(1.1%) 1044(0.8%) list-cartesian-product ...src/core/ematch.rkt:20:0 for-loop [148] 24.2% list-cartesian-product [130] 12.8% ------------------------------------------------------------------------------------------ add-splitpoint [123] 100.0% [131] 1230(0.9%) 300(0.2%) for-loop ...bie/develop/src/core/regimes.rkt:229:4 for-loop [143] 75.6% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [121] 31.5% *simplify-rules* [70] 68.5% [132] 1054(0.8%) 332(0.3%) for-loop ...ies/herbie/develop/src/common.rkt:94:9 ormap [147] 34.3% flag-set? [170] 34.2% ------------------------------------------------------------------------------------------ merge-egraph-nodes! [121] 100.0% [133] 708(0.5%) 0(0.0%) enode-merge! ...e/develop/src/core/enode.rkt:100:0 adopt-enode! [144] 100.0% ------------------------------------------------------------------------------------------ loop! [124] 100.0% [134] 704(0.5%) 704(0.5%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------ for-loop [118] 100.0% [135] 700(0.5%) 700(0.5%) ulp-difference ...erbie/develop/src/float.rkt:19:0 ------------------------------------------------------------------------------------------ for-loop [119] 100.0% [136] 366(0.3%) 366(0.3%) foldl ...et/collects/racket/private/list.rkt:229:4 ------------------------------------------------------------------------------------------ merge-egraph-nodes! [121] 100.0% [137] 362(0.3%) 362(0.3%) for-loop ...rbie/develop/src/core/egraph.rkt:232:6 ------------------------------------------------------------------------------------------ for-loop [119] 100.0% [138] 356(0.3%) 356(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------------------------ for-loop [12] 1.2% ??? [16] 1.9% for-loop [11] 3.1% ??? [6] 4.3% eval-prog [126] 4.8% simplify* [13] 4.9% loop [87] 9.6% ??? [99] 11.1% for-loop [10] 13.1% localize-error [34] 13.2% ??? [151] 16.4% loop [66] 16.4% [139] 4794(3.7%) 690(0.5%) hash-ref! ...racket/private/more-scheme.rkt:373:13 parse-loop12 [150] 23.3% ??? [151] 16.4% simplify [3] 16.4% ??? [4] 13.1% ??? [155] 9.6% ??? [6] 7.5% make-evaluator [158] 4.9% ??? [7] 3.1% f6 [62] 1.0% ------------------------------------------------------------------------------------------ copying-mergesort [140] 48.9% generic-sort/key [128] 51.1% [140] 3152(2.4%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [140] 48.9% loop [149] 37.3% jloop [5] 13.8% ------------------------------------------------------------------------------------------ update-leader! [129] 100.0% [141] 1350(1.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:222:6 for-loop [152] 100.0% ------------------------------------------------------------------------------------------ eval-const-expr [113] 32.5% eval-prog [126] 67.5% [142] 1028(0.8%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack242 [153] 100.0% ------------------------------------------------------------------------------------------ for-loop [131] 100.0% [143] 930(0.7%) 930(0.7%) for-loop ...bie/develop/src/core/regimes.rkt:233:8 ------------------------------------------------------------------------------------------ enode-merge! [133] 100.0% [144] 708(0.5%) 0(0.0%) adopt-enode! ...ie/develop/src/core/enode.rkt:76:0 custom-set-union [154] 100.0% ------------------------------------------------------------------------------------------ eval-prog [126] 100.0% [145] 678(0.5%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [156] 100.0% ------------------------------------------------------------------------------------------ eval-prog [126] 47.7% [146] 646(0.5%) 338(0.3%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [157] 47.7% ------------------------------------------------------------------------------------------ for-loop [132] 100.0% [147] 362(0.3%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [170] 100.0% ------------------------------------------------------------------------------------------ list-cartesian-product [130] 100.0% [148] 334(0.3%) 334(0.3%) for-loop ...erbie/develop/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------ ??? [120] 19.2% copying-mergesort [140] 38.0% generic-sort/key [128] 42.8% [149] 3730(2.9%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [159] 81.4% ->flonum [166] 18.6% ------------------------------------------------------------------------------------------ loop [87] 7.2% parse-loop12 [150] 20.0% hash-ref! [139] 32.8% simplify [3] 40.0% [150] 3552(2.7%) 2386(1.8%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [87] 20.9% parse-loop12 [150] 20.0% loop [161] 16.5% map [77] 2.6% ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [151] 2704(2.1%) 0(0.0%) ??? ...es/herbie/develop/src/core/taylor.rkt:43:15 hash-ref! [139] 100.0% ------------------------------------------------------------------------------------------ for-loop [141] 100.0% [152] 1350(1.0%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:223:8 hash-update! [160] 100.0% ------------------------------------------------------------------------------------------ ??? [142] 100.0% [153] 1028(0.8%) 360(0.3%) unpack242 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [162] 65.0% ------------------------------------------------------------------------------------------ adopt-enode! [144] 100.0% [154] 708(0.5%) 362(0.3%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [163] 48.9% ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [155] 690(0.5%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:184:5 loop [87] 100.0% ------------------------------------------------------------------------------------------ go [145] 18.8% loop [156] 81.2% [156] 678(0.5%) 678(0.5%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [156] 81.2% ------------------------------------------------------------------------------------------ parse-app [146] 100.0% [157] 308(0.2%) 308(0.2%) loop .../collects/racket/private/stxcase.rkt:112:7 ------------------------------------------------------------------------------------------ hash-ref! [139] 100.0% [158] 234(0.2%) 0(0.0%) make-evaluator ...rc/function-definitions.rkt:51:0 *rules* [164] 100.0% ------------------------------------------------------------------------------------------ jloop [5] 2.8% for-loop [117] 3.6% loop [149] 8.5% loop [87] 27.4% for-loop [118] 57.7% [159] 35948(27.6%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:155:4 ??? [165] 89.7% ->flonum [166] 6.6% ??? [168] 3.7% ------------------------------------------------------------------------------------------ for-loop [152] 100.0% [160] 1350(1.0%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [167] 100.0% ------------------------------------------------------------------------------------------ map [77] 0.2% parse-loop12 [150] 9.3% loop [161] 90.5% [161] 1066(0.8%) 262(0.2%) loop ...cket/collects/racket/private/map.rkt:36:19 loop [161] 90.5% ->flonum [166] 1.1% ------------------------------------------------------------------------------------------ unpack242 [153] 100.0% [162] 668(0.5%) 334(0.3%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [169] 50.0% ------------------------------------------------------------------------------------------ custom-set-union [154] 100.0% [163] 346(0.3%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [171] 100.0% ------------------------------------------------------------------------------------------ make-evaluator [158] 100.0% [164] 234(0.2%) 0(0.0%) *rules* ...rbie/develop/src/syntax/rules.rkt:445:0 flag-set? [170] 100.0% ------------------------------------------------------------------------------------------ ??? [159] 100.0% [165] 32244(24.7%) 14308(11.0%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [172] 24.2% ??? [178] 16.9% ??? [173] 10.5% bf* [176] 4.1% ------------------------------------------------------------------------------------------ loop [87] 6.1% jloop [5] 6.4% ??? [50] 6.4% for-loop [118] 11.8% loop [149] 12.4% loop [161] 12.6% ??? [159] 42.4% [166] 5594(4.3%) 2792(2.1%) ->flonum ...s/herbie/develop/src/programs.rkt:37:0 return/no-unsupplied [180] 25.9% ??? [179] 24.2% ------------------------------------------------------------------------------------------ hash-update! [160] 100.0% [167] 1350(1.0%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:225:24 for-loop [174] 100.0% ------------------------------------------------------------------------------------------ ??? [159] 100.0% [168] 1332(1.0%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [175] 100.0% ------------------------------------------------------------------------------------------ maybe-cons-kwd [162] 32.9% ??? [65] 67.1% [169] 1016(0.8%) 690(0.5%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [177] 32.1% ------------------------------------------------------------------------------------------ *rules* [164] 24.5% for-loop [132] 37.7% ormap [147] 37.9% [170] 956(0.7%) 362(0.3%) flag-set? ...es/herbie/develop/src/config.rkt:32:0 ??? [179] 37.7% return/no-unsupplied [180] 24.5% ------------------------------------------------------------------------------------------ for-loop [163] 100.0% [171] 346(0.3%) 346(0.3%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------ ??? [165] 100.0% [172] 7794(6.0%) 3054(2.3%) ??? ...herbie/develop/src/syntax/syntax.rkt:118:17 ??? [179] 34.4% return/no-unsupplied [180] 26.4% ------------------------------------------------------------------------------------------ ??? [165] 100.0% [173] 3370(2.6%) 3370(2.6%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------ ??? [167] 100.0% [174] 1350(1.0%) 340(0.3%) for-loop ...bie/develop/src/core/egraph.rkt:226:26 update-en-expr [181] 74.8% ------------------------------------------------------------------------------------------ ??? [168] 100.0% [175] 1332(1.0%) 980(0.8%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [187] 26.4% ------------------------------------------------------------------------------------------ ??? [165] 100.0% [176] 1328(1.0%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [178] 100.0% ------------------------------------------------------------------------------------------ successfully-got-the-right-kind-of-function [169]100.0% [177] 326(0.3%) 326(0.3%) arity-checking-wrapper ...w-higher-order.rkt:402:0 ------------------------------------------------------------------------------------------ loop [87] 1.5% bf* [176] 19.3% ??? [165] 79.2% [178] 6872(5.3%) 3478(2.7%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfdiv [184] 44.9% bftan [186] 4.5% ------------------------------------------------------------------------------------------ *bit-width* [125] 4.5% flag-set? [170] 7.2% ??? [71] 7.2% ->flonum [166] 27.2% ??? [172] 53.9% [179] 4982(3.8%) 1022(0.8%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [183] 75.0% ??? [182] 4.5% ------------------------------------------------------------------------------------------ flag-set? [170] 5.8% location-do [53] 7.7% ->flonum [166] 35.8% ??? [172] 50.8% [180] 4048(3.1%) 2720(2.1%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [185] 32.8% ------------------------------------------------------------------------------------------ update-leader! [129] 26.3% for-loop [174] 73.7% [181] 1370(1.1%) 1370(1.1%) update-en-expr ...evelop/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------------------ ??? [65] 2.2% ??? [179] 3.2% ??? [68] 14.0% ??? [50] 80.6% [182] 6916(5.3%) 838(0.6%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [42] 80.6% contract? [188] 9.5% ------------------------------------------------------------------------------------------ ??? [179] 100.0% [183] 3736(2.9%) 3736(2.9%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ------------------------------------------------------------------------------------------ ??? [178] 100.0% [184] 3088(2.4%) 2022(1.6%) bfdiv ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [187] 34.5% ------------------------------------------------------------------------------------------ return/no-unsupplied [180] 100.0% [185] 1328(1.0%) 1328(1.0%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------ ??? [178] 100.0% [186] 306(0.2%) 306(0.2%) bftan ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ------------------------------------------------------------------------------------------ real->bigfloat [175] 24.8% bfdiv [184] 75.2% [187] 1418(1.1%) 1418(1.1%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------------------ ??? [182] 100.0% [188] 660(0.5%) 660(0.5%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------------------