Profiling results ----------------- Total cpu time observed: 1979396ms (out of 1996904ms) Number of samples taken: 6297 (once every 314ms) (Hiding functions with self<1.0% and local<2.0%: 37 of 296 hidden) =========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================================== ??? [77] 100.0% [1] 1433374(72.4%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [18] 100.0% ------------------------------------------------------------------------------------------- ??? [77] 100.0% [2] 1433344(72.4%) 0(0.0%) run-improve50 ...f-of-prods/src/mainloop.rkt:234:0 for-loop [19] 98.3% get-final-combination [24] 1.3% setup-alt-simplified [34] 0.2% loop [90] 0.1% ------------------------------------------------------------------------------------------- ??? [191] 100.0% [3] 1136438(57.4%) 0(0.0%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [20] 98.3% debug-print [215] 0.0% ------------------------------------------------------------------------------------------- ??? [191] 100.0% [4] 467464(23.6%) 0(0.0%) loop .../diff-of-prods/src/core/simplify.rkt:215:2 pass [21] 100.0% ------------------------------------------------------------------------------------------- rewriter [87] 100.0% [5] 106682(5.4%) 10408(0.5%) *rules* ...iff-of-prods/src/syntax/rules.rkt:493:0 for-loop [22] 83.3% ormap [43] 2.9% flag-set? [61] 2.9% list-member? [84] 0.8% ------------------------------------------------------------------------------------------- ??? [189] 100.0% [6] 24678(1.2%) 0(0.0%) approximate9 ...-of-prods/src/core/taylor.rkt:12:0 loop [23] 82.1% f66 [149] 15.1% taylor-sqrt [35] 2.8% ------------------------------------------------------------------------------------------- loop [219] 100.0% [7] 18806(1.0%) 4268(0.2%) for-loop ...f-of-prods/src/core/simplify.rkt:173:2 setfindf [27] 46.1% eval-const-expr [32] 25.8% compose [159] 5.4% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [8] 16174(0.8%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:295:23 for-loop [25] 100.0% ------------------------------------------------------------------------------------------- matcher [110] 100.0% [9] 12304(0.6%) 648(0.0%) for-loop ...ff-of-prods/src/core/matcher.rkt:159:6 pattern-match [29] 50.0% pattern-substitute [31] 39.8% foldl [234] 4.9% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [10] 11894(0.6%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:285:26 for-loop [26] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [11] 9764(0.5%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:338:33 for-loop [30] 59.2% hash-ref! [192] 38.3% simplify [200] 2.5% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [12] 3720(0.2%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:392:23 for-loop [33] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [13] 2738(0.1%) 356(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:322:33 for-loop [36] 87.0% ------------------------------------------------------------------------------------------- parse-loop12 [210] 100.0% [14] 2088(0.1%) 0(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:99:13 make-multiplication-node [28] 100.0% ------------------------------------------------------------------------------------------- f66 [149] 100.0% [15] 686(0.0%) 0(0.0%) taylor-invert ...f-prods/src/core/taylor.rkt:312:0 first-nonzero-exp [52] 51.9% simplify [200] 48.1% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [16] 324(0.0%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:483:23 for-loop [37] 100.0% ------------------------------------------------------------------------------------------- f66 [149] 100.0% [17] 164(0.0%) 0(0.0%) exprs-to-branch-on ...ds/src/core/regimes.rkt:55:0 all-critical-subexpressions [38] 100.0% ------------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [18] 1433542(72.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [77] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [19] 1409588(71.2%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:249:10 run-iter! [39] 100.0% ------------------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [20] 1116940(56.4%) 9978(0.5%) one-iter ...f-of-prods/src/core/simplify.rkt:113:0 loop [40] 75.7% for-loop [42] 22.6% apply-match [56] 0.6% filter [211] 0.0% ------------------------------------------------------------------------------------------- loop [4] 100.0% [21] 467464(23.6%) 1640(0.1%) pass .../diff-of-prods/src/core/simplify.rkt:205:2 for-loop [41] 99.4% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [78] 4.2% *rules* [5] 95.4% [22] 93174(4.7%) 32168(1.6%) for-loop ...rbie/diff-of-prods/src/common.rkt:94:9 ormap [43] 49.3% flag-set? [61] 14.4% curried [237] 1.1% update-en-expr [139] 0.7% ------------------------------------------------------------------------------------------- approximate9 [6] 100.0% [23] 20262(1.0%) 0(0.0%) loop ...bie/diff-of-prods/src/core/taylor.rkt:86:4 ??? [189] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [24] 18742(0.9%) 0(0.0%) get-final-combination ...ds/src/mainloop.rkt:264:0 split-table [45] 99.0% ??? [189] 1.0% ------------------------------------------------------------------------------------------- ??? [8] 100.0% [25] 16174(0.8%) 360(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:298:27 hash-ref! [192] 95.9% simplify [200] 3.7% ------------------------------------------------------------------------------------------- ??? [10] 100.0% [26] 11894(0.6%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:285:52 hash-ref! [192] 99.3% ??? [51] 0.7% ------------------------------------------------------------------------------------------- for-loop [7] 100.0% [27] 8664(0.4%) 4430(0.2%) setfindf ...bie/diff-of-prods/src/common.rkt:179:0 for-loop [50] 33.1% ??? [125] 11.9% custom-in-set [258] 3.8% ------------------------------------------------------------------------------------------- simplify [200] 4.6% map [156] 28.7% for-loop [14] 29.0% parse-loop12 [210] 37.8% [28] 7212(0.4%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [46] 100.0% ------------------------------------------------------------------------------------------- for-loop [47] 40.8% for-loop [9] 59.2% [29] 6148(0.3%) 436(0.0%) pattern-match ...f-prods/src/core/matcher.rkt:48:0 for-loop [47] 52.1% ??? [125] 27.0% variable? [44] 13.8% ------------------------------------------------------------------------------------------- ??? [11] 100.0% [30] 5776(0.3%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:341:46 hash-ref! [192] 84.8% ??? [51] 15.2% ------------------------------------------------------------------------------------------- pattern-substitute [31] 39.1% for-loop [9] 60.9% [31] 4900(0.2%) 1762(0.1%) pattern-substitute ...ds/src/core/matcher.rkt:73:0 pattern-substitute [31] 39.1% variable? [44] 13.6% ??? [125] 11.4% ------------------------------------------------------------------------------------------- for-loop [7] 100.0% [32] 4850(0.2%) 1802(0.1%) eval-const-expr ...of-prods/src/programs.rkt:166:0 f66 [149] 25.4% bf* [238] 18.9% ??? [53] 18.5% ------------------------------------------------------------------------------------------- ??? [12] 100.0% [33] 3720(0.2%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:396:33 for-loop [48] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [2] 100.0% [34] 3290(0.2%) 0(0.0%) setup-alt-simplified ...of-prods/src/glue.rkt:49:0 simplify-alt [49] 100.0% ------------------------------------------------------------------------------------------- approximate9 [6] 24.5% f66 [149] 75.5% [35] 2772(0.1%) 0(0.0%) taylor-sqrt ...-of-prods/src/core/taylor.rkt:346:0 hash-ref! [192] 62.2% first-nonzero-exp [52] 24.9% simplify [200] 12.9% ------------------------------------------------------------------------------------------- ??? [13] 100.0% [36] 2382(0.1%) 360(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:324:46 hash-ref! [192] 49.4% simplify [200] 35.5% ------------------------------------------------------------------------------------------- ??? [16] 100.0% [37] 324(0.0%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:487:35 parse-loop12 [210] 100.0% ------------------------------------------------------------------------------------------- exprs-to-branch-on [17] 100.0% [38] 164(0.0%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:71:0 for-loop [54] 100.0% ------------------------------------------------------------------------------------------- for-loop [19] 100.0% [39] 1409588(71.2%) 0(0.0%) run-iter! .../diff-of-prods/src/mainloop.rkt:215:0 simplify! [55] 80.2% gen-rewrites! [58] 12.7% finalize-iter! [60] 5.0% gen-series! [62] 1.9% localize-error [65] 0.2% ------------------------------------------------------------------------------------------- one-iter [20] 100.0% [40] 845296(42.7%) 1558(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [56] 99.8% ------------------------------------------------------------------------------------------- pass [21] 100.0% [41] 464868(23.5%) 4526(0.2%) for-loop ...-of-prods/src/core/simplify.rkt:208:29 argmin [57] 68.9% loop [59] 26.4% for-loop [63] 3.0% make-sequence [248] 0.6% filter [211] 0.2% ------------------------------------------------------------------------------------------- for-loop [42] 49.3% one-iter [20] 50.7% [42] 252796(12.8%) 50158(2.5%) for-loop ...-of-prods/src/core/simplify.rkt:123:12 for-loop [42] 49.3% match-e [71] 39.9% ??? [107] 0.2% ------------------------------------------------------------------------------------------- *rules* [5] 6.3% for-loop [22] 93.7% [43] 49004(2.5%) 9528(0.5%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [61] 74.5% curried [237] 5.4% list-member? [84] 0.7% ------------------------------------------------------------------------------------------- free-variables [180] 1.6% expression->type [103] 3.2% pattern-substitute [31] 3.6% pattern-match [29] 3.9% matcher [110] 5.6% substitute-e [79] 11.5% match-e [71] 70.7% [44] 43188(2.2%) 1040(0.1%) variable? ...-of-prods/src/syntax/syntax.rkt:567:0 ??? [125] 97.6% ------------------------------------------------------------------------------------------- get-final-combination [24] 100.0% [45] 18550(0.9%) 0(0.0%) split-table ...ie/diff-of-prods/src/glue.rkt:162:0 f66 [149] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-node [28] 100.0% [46] 7212(0.4%) 332(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [64] 95.4% ------------------------------------------------------------------------------------------- pattern-match [29] 100.0% [47] 5712(0.3%) 696(0.0%) for-loop ...iff-of-prods/src/core/matcher.rkt:66:9 pattern-match [29] 87.8% ------------------------------------------------------------------------------------------- for-loop [33] 100.0% [48] 3720(0.2%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:398:39 hash-ref! [192] 100.0% ------------------------------------------------------------------------------------------- setup-alt-simplified [34] 100.0% [49] 3290(0.2%) 0(0.0%) simplify-alt ...ie/diff-of-prods/src/glue.rkt:76:0 ??? [191] 100.0% ------------------------------------------------------------------------------------------- setfindf [27] 100.0% [50] 2872(0.1%) 2872(0.1%) for-loop ...bie/diff-of-prods/src/common.rkt:180:2 ------------------------------------------------------------------------------------------- for-loop [26] 21.4% for-loop [30] 78.6% [51] 1120(0.1%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:288:19 hash-ref! [192] 100.0% ------------------------------------------------------------------------------------------- taylor-invert [15] 34.0% taylor-sqrt [35] 66.0% [52] 1046(0.1%) 0(0.0%) first-nonzero-exp ...ods/src/core/taylor.rkt:260:0 hash-ref! [192] 66.0% simplify [200] 34.0% ------------------------------------------------------------------------------------------- eval-const-expr [32] 100.0% [53] 898(0.0%) 356(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [66] 60.4% ------------------------------------------------------------------------------------------- all-critical-subexpressions [38] 100.0% [54] 164(0.0%) 0(0.0%) for-loop ...iff-of-prods/src/core/regimes.rkt:75:2 ??? [67] 100.0% ------------------------------------------------------------------------------------------- run-iter! [39] 100.0% [55] 1130494(57.1%) 0(0.0%) simplify! .../diff-of-prods/src/mainloop.rkt:155:0 for-loop [68] 100.0% ------------------------------------------------------------------------------------------- one-iter [20] 0.8% loop [40] 99.2% [56] 850966(43.0%) 2644(0.1%) apply-match ...f-prods/src/core/simplify.rkt:130:2 for-loop [69] 91.4% match-e [71] 8.0% update-leader! [88] 0.1% ------------------------------------------------------------------------------------------- for-loop [41] 100.0% [57] 320128(16.2%) 1366(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [70] 89.0% expression-cost [73] 10.5% ------------------------------------------------------------------------------------------- run-iter! [39] 100.0% [58] 178794(9.0%) 0(0.0%) gen-rewrites! ...f-of-prods/src/mainloop.rkt:142:0 for-loop [72] 100.0% ------------------------------------------------------------------------------------------- for-loop [41] 100.0% [59] 122548(6.2%) 686(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [70] 85.7% expression-cost [73] 13.7% ------------------------------------------------------------------------------------------- run-iter! [39] 100.0% [60] 70276(3.6%) 0(0.0%) finalize-iter! ...-of-prods/src/mainloop.rkt:169:0 ??? [125] 100.0% ------------------------------------------------------------------------------------------- *rules* [5] 5.7% for-loop [22] 25.4% ormap [43] 68.9% [61] 52968(2.7%) 18942(1.0%) flag-set? ...bie/diff-of-prods/src/config.rkt:32:0 return/no-unsupplied [199] 35.7% ??? [222] 28.5% ------------------------------------------------------------------------------------------- run-iter! [39] 100.0% [62] 26180(1.3%) 0(0.0%) gen-series! ...iff-of-prods/src/mainloop.rkt:129:0 for-loop [74] 100.0% ------------------------------------------------------------------------------------------- for-loop [41] 100.0% [63] 13974(0.7%) 13974(0.7%) for-loop ...-of-prods/src/core/simplify.rkt:195:13 ------------------------------------------------------------------------------------------- make-multiplication-subnode [46] 100.0% [64] 6880(0.3%) 0(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:242:3 mterm->expr [85] 61.9% make-multiplication-subsubsubnode [75] 38.1% ------------------------------------------------------------------------------------------- run-iter! [39] 100.0% [65] 3248(0.2%) 0(0.0%) localize-error ...prods/src/core/localize.rkt:47:0 hash-ref! [192] 89.7% ??? [173] 10.3% ------------------------------------------------------------------------------------------- ??? [53] 100.0% [66] 542(0.0%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [76] 100.0% ------------------------------------------------------------------------------------------- for-loop [54] 100.0% [67] 164(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:346:33 f66 [149] 100.0% ------------------------------------------------------------------------------------------- simplify! [55] 99.6% [68] 1134884(57.3%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:159:6 ??? [77] 100.0% debug-print [215] 0.0% ------------------------------------------------------------------------------------------- apply-match [56] 100.0% [69] 777494(39.3%) 2200(0.1%) for-loop ...-of-prods/src/core/simplify.rkt:145:10 mk-enode! [86] 36.0% merge-egraph-nodes! [78] 29.4% substitute-e [79] 26.3% loop! [102] 6.3% list-member? [84] 1.7% ------------------------------------------------------------------------------------------- loop [59] 26.9% argmin [57] 73.1% [70] 390120(19.7%) 11166(0.6%) for-loop ...e/diff-of-prods/src/programs.rkt:199:2 ??? [191] 68.6% ...prods/src/common.rkt:47:2 [127] 26.3% ??? [126] 2.3% ------------------------------------------------------------------------------------------- apply-match [56] 16.0% for-loop [89] 27.4% for-loop [42] 56.6% [71] 269732(13.6%) 92674(4.7%) match-e .../diff-of-prods/src/core/ematch.rkt:46:0 for-loop [81] 38.5% for-loop [89] 13.5% ??? [125] 6.3% variable? [44] 4.6% loop [219] 3.9% list-cartesian-product [92] 2.7% custom-in-set [258] 1.0% curry* [97] 0.8% filter [211] 0.3% ------------------------------------------------------------------------------------------- gen-rewrites! [58] 100.0% [72] 178794(9.0%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:147:11 ??? [80] 100.0% ------------------------------------------------------------------------------------------- loop [59] 33.3% argmin [57] 66.7% [73] 50504(2.6%) 486(0.0%) expression-cost ...of-prods/src/programs.rkt:198:0 compile [82] 99.0% ------------------------------------------------------------------------------------------- gen-series! [62] 100.0% [74] 26180(1.3%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:135:7 taylor-alt [83] 100.0% ------------------------------------------------------------------------------------------- for-loop [64] 100.0% [75] 2620(0.1%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [85] 100.0% ------------------------------------------------------------------------------------------- unpack245 [66] 100.0% [76] 542(0.0%) 324(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 arrow-higher-order:lnp [225] 40.2% ------------------------------------------------------------------------------------------- for-loop [68] 20.0% run [18] 27.8% [77] 1902404(96.1%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 ??? [191] 43.8% run-improve50 [2] 28.1% profile-thunk16 [1] 27.8% loop [90] 0.4% ------------------------------------------------------------------------------------------- for-loop [94] 3.3% merge-egraph-nodes! [78] 7.5% for-loop [69] 89.1% [78] 228920(11.6%) 10948(0.6%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [88] 63.0% merge-egraph-nodes! [78] 7.5% for-loop [93] 7.3% loop! [102] 7.1% enode-merge! [95] 4.0% for-loop [94] 3.9% for-loop [22] 1.4% make-sequence [248] 0.9% ------------------------------------------------------------------------------------------- substitute-e [79] 5.3% for-loop [69] 94.7% [79] 204344(10.3%) 4838(0.2%) substitute-e ...-of-prods/src/core/ematch.rkt:71:0 mk-enode! [86] 90.4% substitute-e [79] 5.3% ??? [125] 1.9% variable? [44] 0.9% ------------------------------------------------------------------------------------------- for-loop [72] 100.0% [80] 178794(9.0%) 0(0.0%) ??? ...rbie/diff-of-prods/src/alternative.rkt:88:0 rewriter [87] 100.0% ------------------------------------------------------------------------------------------- match-e [71] 100.0% [81] 146590(7.4%) 48218(2.4%) for-loop ...iff-of-prods/src/core/ematch.rkt:59:11 for-loop [89] 55.5% list-cartesian-product [92] 7.7% loop [219] 5.5% curry* [97] 1.2% loop [239] 0.7% filter [211] 0.7% foldl [234] 0.5% curried [237] 0.2% ------------------------------------------------------------------------------------------- expression-cost [73] 100.0% [82] 50018(2.5%) 1536(0.1%) compile ...ie/diff-of-prods/src/programs.rkt:175:0 hash-ref! [192] 96.9% ------------------------------------------------------------------------------------------- for-loop [74] 100.0% [83] 26180(1.3%) 0(0.0%) taylor-alt ...bie/diff-of-prods/src/glue.rkt:134:0 for-loop [91] 100.0% ------------------------------------------------------------------------------------------- ormap [43] 2.3% *rules* [5] 6.3% for-loop [69] 91.5% [84] 14194(0.7%) 1782(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 loop [96] 60.5% member [98] 27.0% ------------------------------------------------------------------------------------------- make-multiplication-subsubsubnode [75] 38.1% for-loop [64] 61.9% [85] 6880(0.3%) 0(0.0%) mterm->expr ...-of-prods/src/core/reduce.rkt:270:0 f66 [149] 79.3% expression->type [103] 15.5% free-variables [180] 5.2% ------------------------------------------------------------------------------------------- mk-egraph [202] 0.3% expr->enode [212] 3.0% substitute-e [79] 38.4% for-loop [69] 58.3% [86] 480842(24.3%) 34536(1.7%) mk-enode! ...ff-of-prods/src/core/egraph.rkt:101:0 new-enode [99] 90.7% hash-has-key? [131] 2.1% ------------------------------------------------------------------------------------------- ??? [80] 13.3% matcher [110] 86.7% [87] 178794(9.0%) 21086(1.1%) rewriter ...ff-of-prods/src/core/matcher.rkt:131:2 for-loop [100] 88.8% *rules* [5] 7.7% expression->type [103] 1.5% f66 [149] 0.4% ------------------------------------------------------------------------------------------- apply-match [56] 0.6% merge-egraph-nodes! [78] 99.4% [88] 164970(8.3%) 14324(0.7%) update-leader! ...-prods/src/core/egraph.rkt:217:0 for-loop [101] 86.4% hash-ref! [192] 1.3% update-en-expr [139] 1.2% make-sequence [248] 1.0% ------------------------------------------------------------------------------------------- match-e [71] 43.8% for-loop [81] 56.2% [89] 144434(7.3%) 8624(0.4%) for-loop ...iff-of-prods/src/core/ematch.rkt:65:37 match-e [71] 93.1% ??? [107] 1.1% ------------------------------------------------------------------------------------------- run-improve50 [2] 5.8% ??? [77] 45.2% pred [186] 49.0% [90] 29854(1.5%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:193:2 loop [104] 63.8% make-exacts* [115] 24.8% loop [116] 11.4% ------------------------------------------------------------------------------------------- taylor-alt [83] 100.0% [91] 26180(1.3%) 0(0.0%) for-loop ...erbie/diff-of-prods/src/glue.rkt:139:6 ??? [189] 100.0% ------------------------------------------------------------------------------------------- list-cartesian-product [92] 24.7% match-e [71] 32.7% for-loop [81] 42.5% [92] 22606(1.1%) 17690(0.9%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [92] 24.7% for-loop [106] 16.8% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [78] 100.0% [93] 16930(0.9%) 12438(0.6%) for-loop ...iff-of-prods/src/core/egraph.rkt:232:6 update-en-expr [139] 26.5% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [78] 100.0% [94] 16706(0.8%) 0(0.0%) for-loop ...ff-of-prods/src/core/egraph.rkt:200:10 merge-egraph-nodes! [78] 91.8% loop! [102] 8.2% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [78] 100.0% [95] 9584(0.5%) 1214(0.1%) enode-merge! ...-of-prods/src/core/enode.rkt:129:0 adopt-enode! [105] 63.3% custom-set-intersect! [108] 24.1% ------------------------------------------------------------------------------------------- list-member? [84] 100.0% [96] 8584(0.4%) 8584(0.4%) loop (unknown source) ------------------------------------------------------------------------------------------- for-loop [81] 45.0% match-e [71] 55.0% [97] 4098(0.2%) 914(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [252] 77.7% ------------------------------------------------------------------------------------------- list-member? [84] 100.0% [98] 3828(0.2%) 3828(0.2%) member (unknown source) ------------------------------------------------------------------------------------------- mk-enode! [86] 100.0% [99] 436180(22.0%) 2500(0.1%) new-enode ...diff-of-prods/src/core/enode.rkt:97:0 type-of-enode-expr [109] 98.9% set [114] 0.2% ------------------------------------------------------------------------------------------- rewriter [87] 100.0% [100] 178794(9.0%) 2634(0.1%) for-loop ...f-of-prods/src/core/matcher.rkt:134:10 matcher [110] 99.8% ------------------------------------------------------------------------------------------- update-leader! [88] 100.0% [101] 142530(7.2%) 2254(0.1%) for-loop ...iff-of-prods/src/core/egraph.rkt:222:6 for-loop [111] 98.3% update-en-expr [139] 0.1% ------------------------------------------------------------------------------------------- for-loop [94] 1.2% merge-egraph-nodes! [78] 21.3% loop [219] 28.4% for-loop [69] 49.2% [102] 70290(3.6%) 15290(0.8%) loop! ...ie/diff-of-prods/src/core/enode.rkt:192:2 custom-set-union [112] 34.2% loop [219] 33.0% set [114] 13.5% update-en-expr [139] 5.9% ------------------------------------------------------------------------------------------- mterm->expr [85] 1.9% f66 [149] 8.2% for-loop [113] 41.3% rewriter [87] 48.7% [103] 20112(1.0%) 718(0.0%) expression->type ...-prods/src/type-check.rkt:45:0 for-loop [113] 93.9% variable? [44] 2.8% ??? [125] 0.9% ------------------------------------------------------------------------------------------- loop [90] 100.0% [104] 19036(1.0%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:151:2 eval-prog [147] 65.9% loop [116] 21.8% make-exacts* [115] 12.3% ------------------------------------------------------------------------------------------- enode-merge! [95] 100.0% [105] 6064(0.3%) 1654(0.1%) adopt-enode! ...-of-prods/src/core/enode.rkt:105:0 custom-set-union [112] 72.7% ------------------------------------------------------------------------------------------- list-cartesian-product [92] 100.0% [106] 4916(0.2%) 4916(0.2%) for-loop ...diff-of-prods/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------- for-loop [42] 39.6% for-loop [89] 60.4% [107] 2636(0.1%) 1390(0.1%) ??? ...rbie/diff-of-prods/src/core/ematch.rkt:50:5 for-loop [117] 47.3% ------------------------------------------------------------------------------------------- enode-merge! [95] 100.0% [108] 2306(0.1%) 1950(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 for-loop [118] 15.4% ------------------------------------------------------------------------------------------- new-enode [99] 100.0% [109] 431582(21.8%) 8636(0.4%) type-of-enode-expr ...rods/src/core/enode.rkt:68:0 get-sigs [119] 97.9% parse-loop12 [210] 0.1% ------------------------------------------------------------------------------------------- for-loop [120] 17.1% matcher [110] 32.8% for-loop [100] 50.1% [110] 178794(9.0%) 9432(0.5%) matcher ...iff-of-prods/src/core/matcher.rkt:167:2 rewriter [87] 49.1% matcher [110] 32.8% for-loop [120] 17.1% for-loop [9] 0.5% variable? [44] 0.1% foldl [234] 0.0% for-loop [124] 0.0% ------------------------------------------------------------------------------------------- for-loop [101] 100.0% [111] 140074(7.1%) 1386(0.1%) for-loop ...iff-of-prods/src/core/egraph.rkt:223:8 hash-update! [121] 99.0% ------------------------------------------------------------------------------------------- adopt-enode! [105] 14.5% loop! [102] 85.5% [112] 30388(1.5%) 11830(0.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [122] 50.6% for-loop [123] 10.5% ------------------------------------------------------------------------------------------- expression->type [103] 100.0% [113] 19752(1.0%) 2586(0.1%) for-loop .../diff-of-prods/src/type-check.rkt:52:5 expression->type [103] 46.4% f66 [149] 38.6% return/no-unsupplied [199] 3.1% ??? [222] 2.3% ------------------------------------------------------------------------------------------- new-enode [99] 4.4% loop! [102] 95.6% [114] 18028(0.9%) 18028(0.9%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------- loop [104] 24.0% loop [90] 76.0% [115] 9754(0.5%) 0(0.0%) make-exacts* ...diff-of-prods/src/points.rkt:138:0 map [156] 54.5% loop [219] 41.8% eval-prog [147] 3.7% ------------------------------------------------------------------------------------------- loop [90] 45.1% loop [104] 54.9% [116] 7548(0.4%) 160(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:141:4 map [156] 97.9% ------------------------------------------------------------------------------------------- ??? [107] 100.0% [117] 1246(0.1%) 1246(0.1%) for-loop ...diff-of-prods/src/core/ematch.rkt:51:7 ------------------------------------------------------------------------------------------- custom-set-intersect! [108] 100.0% [118] 356(0.0%) 356(0.0%) for-loop ...cts/racket/private/set-types.rkt:272:4 ------------------------------------------------------------------------------------------- type-of-enode-expr [109] 100.0% [119] 422338(21.3%) 9116(0.5%) get-sigs ...e/diff-of-prods/src/type-check.rkt:5:0 ??? [126] 39.0% ??? [191] 32.5% ??? [125] 13.6% ...prods/src/common.rkt:47:2 [127] 12.7% ------------------------------------------------------------------------------------------- matcher [110] 100.0% [120] 171022(8.6%) 332(0.0%) for-loop ...f-of-prods/src/core/matcher.rkt:183:21 matcher [110] 99.9% ------------------------------------------------------------------------------------------- for-loop [111] 100.0% [121] 138688(7.0%) 1604(0.1%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [128] 98.8% ------------------------------------------------------------------------------------------- custom-set-union [112] 100.0% [122] 15366(0.8%) 4268(0.2%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [129] 72.2% ------------------------------------------------------------------------------------------- custom-set-union [112] 100.0% [123] 3192(0.2%) 3192(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------- matcher [110] 100.0% [124] 332(0.0%) 0(0.0%) for-loop ...ff-of-prods/src/core/matcher.rkt:151:6 foldl [234] 100.0% ------------------------------------------------------------------------------------------- expression->type [103] 0.3% debug7 [218] 0.3% setfindf [27] 0.5% pattern-substitute [31] 0.7% pattern-match [29] 1.5% ??? [231] 1.5% f66 [149] 3.4% substitute-e [79] 4.3% match-e [71] 14.2% variable? [44] 18.4% get-sigs [119] 25.0% finalize-iter! [60] 29.6% [125] 228712(11.6%) 70892(3.6%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [131] 38.6% for-loop [134] 29.3% ??? [231] 0.4% ------------------------------------------------------------------------------------------- ??? [189] 0.5% f66 [149] 3.0% for-loop [70] 4.9% get-sigs [119] 91.6% [126] 179968(9.1%) 14616(0.7%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [133] 47.6% for-loop [132] 37.8% get/build-late-neg-projection [148] 4.8% ??? [224] 0.7% ??? [253] 0.3% ??? [220] 0.3% ------------------------------------------------------------------------------------------- ??? [189] 1.1% f66 [149] 2.1% get-sigs [119] 33.2% for-loop [70] 63.5% [127] 161522(8.2%) 53240(2.7%) ...prods/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [135] 34.0% ??? [136] 32.5% ------------------------------------------------------------------------------------------- hash-update! [121] 100.0% [128] 137084(6.9%) 3104(0.2%) ??? ...ie/diff-of-prods/src/core/egraph.rkt:225:24 for-loop [130] 97.2% make-sequence [248] 0.5% ------------------------------------------------------------------------------------------- for-loop [122] 100.0% [129] 11098(0.6%) 11098(0.6%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------- ??? [128] 100.0% [130] 133304(6.7%) 113776(5.7%) for-loop ...ff-of-prods/src/core/egraph.rkt:226:26 update-en-expr [139] 14.6% ------------------------------------------------------------------------------------------- mk-enode! [86] 9.8% ??? [125] 90.2% [131] 100534(5.1%) 30878(1.6%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [197] 67.5% ------------------------------------------------------------------------------------------- for-loop [208] 25.6% ??? [126] 74.4% [132] 91492(4.6%) 14620(0.7%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [209] 80.8% ??? [235] 3.2% ------------------------------------------------------------------------------------------- ??? [126] 100.0% [133] 85586(4.3%) 5188(0.3%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [137] 93.9% ------------------------------------------------------------------------------------------- ??? [125] 100.0% [134] 69392(3.5%) 0(0.0%) for-loop ...f-of-prods/src/core/alt-table.rkt:51:2 atab-add-altn [138] 100.0% ------------------------------------------------------------------------------------------- ...prods/src/common.rkt:47:2 [127] 100.0% [135] 54956(2.8%) 20964(1.1%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [222] 34.9% return/no-unsupplied [199] 16.7% assoc-ref [140] 10.3% ------------------------------------------------------------------------------------------- for-loop [223] 6.8% ??? [209] 13.3% ...prods/src/common.rkt:47:2 [127] 79.8% [136] 52416(2.6%) 10736(0.5%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [209] 71.4% ??? [231] 11.5% ??? [224] 5.3% ------------------------------------------------------------------------------------------- ??? [133] 100.0% [137] 80398(4.1%) 3068(0.2%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [141] 96.2% ------------------------------------------------------------------------------------------- for-loop [134] 98.7% [138] 70276(3.6%) 0(0.0%) atab-add-altn ...rods/src/core/alt-table.rkt:208:0 best-and-tied-at-points [142] 98.1% ------------------------------------------------------------------------------------------- for-loop [101] 0.6% for-loop [22] 1.8% update-leader! [88] 5.7% for-loop [93] 12.7% loop! [102] 23.9% for-loop [130] 55.4% [139] 35280(1.8%) 35280(1.8%) update-en-expr ...-prods/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------------------- ??? [135] 100.0% [140] 5646(0.3%) 5646(0.3%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------- ??? [137] 100.0% [141] 77330(3.9%) 4672(0.2%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [143] 94.0% ------------------------------------------------------------------------------------------- atab-add-altn [138] 100.0% [142] 68918(3.5%) 674(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [144] 98.1% ------------------------------------------------------------------------------------------- ??? [141] 100.0% [143] 72658(3.7%) 9894(0.5%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [146] 54.0% get/build-late-neg-projection [148] 32.4% ------------------------------------------------------------------------------------------- option-on-expr [158] 0.6% composed [214] 1.3% pred [186] 1.9% best-and-tied-at-points [142] 94.2% [144] 71714(3.6%) 0(0.0%) errors ...erbie/diff-of-prods/src/points.rkt:218:0 for-loop [145] 70.9% eval-prog [147] 29.1% ------------------------------------------------------------------------------------------- errors [144] 100.0% [145] 50858(2.6%) 512(0.0%) for-loop ...bie/diff-of-prods/src/points.rkt:221:4 ??? [150] 96.0% ??? [189] 1.2% ------------------------------------------------------------------------------------------- for-loop [143] 100.0% [146] 39212(2.0%) 39212(2.0%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------------------- point->alt [175] 0.5% make-exacts* [115] 1.1% loop [104] 37.0% errors [144] 61.5% [147] 33930(1.7%) 3594(0.2%) eval-prog .../diff-of-prods/src/programs.rkt:148:0 f66 [149] 50.6% hash-ref! [192] 34.7% ??? [153] 2.6% go [154] 0.5% ??? [189] 0.5% ------------------------------------------------------------------------------------------- ??? [152] 9.0% ??? [126] 16.9% for-loop [143] 73.3% [148] 32122(1.6%) 6784(0.3%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [151] 69.3% ??? [152] 11.1% ------------------------------------------------------------------------------------------- ??? [67] 0.0% composed [214] 0.2% loop [219] 0.2% simplify-node [166] 0.8% approximate9 [6] 1.0% append-map [172] 1.0% hash-ref! [192] 1.3% eval-const-expr [32] 1.8% parse-loop12 [210] 2.0% mterm->expr [85] 2.3% eval-prog [147] 3.3% map [156] 7.2% rewriter [87] 7.7% simplify [200] 8.6% for-loop [113] 13.7% split-table [45] 23.5% f66 [149] 24.9% [149] 68396(3.5%) 6206(0.3%) f66 ...t/collects/racket/match/compiler.rkt:507:40 f66 [149] 24.9% map [156] 14.1% loop [219] 12.6% option-on-expr [158] 10.8% ??? [125] 8.6% ??? [126] 5.7% ??? [191] 5.0% ??? [189] 3.3% ...prods/src/common.rkt:47:2 [127] 3.1% append-map [172] 2.3% expression->type [103] 1.6% taylor-sqrt [35] 0.8% ??? [222] 0.5% parse-loop12 [210] 0.4% composed [214] 0.2% taylor-invert [15] 0.1% compose [159] 0.1% exprs-to-branch-on [17] 0.0% ------------------------------------------------------------------------------------------- ??? [182] 0.2% map [156] 0.5% jloop [188] 0.7% loop [187] 1.2% loop [219] 23.9% for-loop [145] 73.5% [150] 66486(3.4%) 0(0.0%) ??? ...herbie/diff-of-prods/src/programs.rkt:154:4 ??? [155] 97.3% ??? [189] 2.4% ??? [194] 0.2% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [148] 100.0% [151] 24404(1.2%) 4698(0.2%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [157] 80.7% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [148] 100.0% [152] 6706(0.3%) 686(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [148] 89.8% ------------------------------------------------------------------------------------------- eval-prog [147] 100.0% [153] 872(0.0%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [160] 100.0% ------------------------------------------------------------------------------------------- eval-prog [147] 100.0% [154] 182(0.0%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [161] 100.0% ------------------------------------------------------------------------------------------- ??? [150] 100.0% [155] 64698(3.3%) 40412(2.0%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [164] 12.6% ??? [165] 10.5% bf* [238] 6.5% ??? [245] 5.4% ??? [235] 1.7% parse-loop12 [210] 0.3% ------------------------------------------------------------------------------------------- parse-loop12 [210] 0.2% ??? [167] 1.9% make-exacts* [115] 20.2% loop [116] 28.0% f66 [149] 49.7% [156] 26354(1.3%) 362(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [219] 46.9% f66 [149] 26.3% parse-loop12 [210] 11.3% simplify-node [166] 6.4% ??? [167] 2.8% make-multiplication-node [28] 2.7% ??? [189] 1.9% ??? [150] 1.3% ------------------------------------------------------------------------------------------- contract-struct-name [163] 18.9% ??? [151] 81.1% [157] 19706(1.0%) 12474(0.6%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [163] 50.5% ------------------------------------------------------------------------------------------- f66 [149] 42.7% loop [219] 57.3% [158] 18386(0.9%) 0(0.0%) option-on-expr ...prods/src/core/regimes.rkt:103:0 sindices->spoints [162] 87.0% sort-context-on-expr [168] 7.9% errors [144] 2.5% pick-errors [169] 1.7% err-lsts->split-indices [170] 0.9% ------------------------------------------------------------------------------------------- f66 [149] 26.0% for-loop [7] 74.0% [159] 1384(0.1%) 1384(0.1%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------- ??? [153] 100.0% [160] 872(0.0%) 872(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ------------------------------------------------------------------------------------------- go [154] 6.7% loop [161] 93.3% [161] 182(0.0%) 182(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 loop [161] 93.3% ------------------------------------------------------------------------------------------- option-on-expr [158] 100.0% [162] 16004(0.8%) 0(0.0%) sindices->spoints ...ds/src/core/regimes.rkt:116:0 loop [171] 100.0% ------------------------------------------------------------------------------------------- build-compound-type-name [157] 100.0% [163] 12686(0.6%) 7232(0.4%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [157] 50.9% ------------------------------------------------------------------------------------------- ??? [155] 100.0% [164] 8170(0.4%) 8170(0.4%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------- ??? [155] 100.0% [165] 6806(0.3%) 3246(0.2%) ??? .../diff-of-prods/src/syntax/syntax.rkt:122:17 ??? [222] 27.5% return/no-unsupplied [199] 24.8% ------------------------------------------------------------------------------------------- parse-loop12 [210] 6.5% simplify [200] 31.9% map [156] 61.5% [166] 5406(0.3%) 0(0.0%) simplify-node ...of-prods/src/core/reduce.rkt:50:0 append-map [172] 64.3% f66 [149] 31.3% combine-aterms [174] 4.4% ------------------------------------------------------------------------------------------- map [156] 6.0% loop [219] 94.0% [167] 2552(0.1%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [192] 96.1% map [156] 3.9% ------------------------------------------------------------------------------------------- option-on-expr [158] 100.0% [168] 1450(0.1%) 0(0.0%) sort-context-on-expr ...prods/src/points.rkt:115:0 ??? [173] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [158] 100.0% [169] 314(0.0%) 0(0.0%) pick-errors ...of-prods/src/core/regimes.rkt:184:0 point->alt [175] 52.2% for-loop [177] 47.8% ------------------------------------------------------------------------------------------- option-on-expr [158] 100.0% [170] 158(0.0%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 add-splitpoint [176] 100.0% ------------------------------------------------------------------------------------------- parse-loop12 [210] 0.0% loop [171] 2.0% sindices->spoints [162] 98.0% [171] 16334(0.8%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 sidx->spoint [178] 98.0% loop [171] 2.0% ??? [189] 0.0% ------------------------------------------------------------------------------------------- append-map [172] 14.1% f66 [149] 39.0% simplify-node [166] 46.9% [172] 5548(0.3%) 360(0.0%) append-map ...acket/collects/racket/list.rkt:565:2 parse-loop12 [210] 61.7% f66 [149] 15.1% append-map [172] 14.1% free-variables [180] 2.6% ------------------------------------------------------------------------------------------- localize-error [65] 18.8% sort-context-on-expr [168] 81.2% [173] 1786(0.1%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [179] 82.9% loop [187] 17.1% ------------------------------------------------------------------------------------------- simplify-node [166] 100.0% [174] 238(0.0%) 238(0.0%) combine-aterms ...-prods/src/core/reduce.rkt:183:0 ------------------------------------------------------------------------------------------- pick-errors [169] 100.0% [175] 164(0.0%) 0(0.0%) point->alt ...-of-prods/src/core/regimes.rkt:171:0 eval-prog [147] 100.0% ------------------------------------------------------------------------------------------- err-lsts->split-indices [170] 100.0% [176] 158(0.0%) 0(0.0%) add-splitpoint ...prods/src/core/regimes.rkt:235:2 for-loop [181] 100.0% ------------------------------------------------------------------------------------------- pick-errors [169] 100.0% [177] 150(0.0%) 0(0.0%) for-loop ...ff-of-prods/src/core/regimes.rkt:186:2 ??? [182] 100.0% ------------------------------------------------------------------------------------------- loop [171] 100.0% [178] 16004(0.8%) 0(0.0%) sidx->spoint ...f-prods/src/core/regimes.rkt:126:2 binary-search [183] 85.9% binary-search-floats [184] 14.1% ------------------------------------------------------------------------------------------- ??? [173] 100.0% [179] 1480(0.1%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [185] 65.1% jloop [188] 22.7% loop [187] 12.2% ------------------------------------------------------------------------------------------- mterm->expr [85] 34.3% append-map [172] 65.7% [180] 1044(0.1%) 358(0.0%) free-variables ...-of-prods/src/programs.rkt:100:0 variable? [44] 65.7% ------------------------------------------------------------------------------------------- add-splitpoint [176] 100.0% [181] 158(0.0%) 158(0.0%) for-loop ...ff-of-prods/src/core/regimes.rkt:237:4 ------------------------------------------------------------------------------------------- for-loop [177] 100.0% [182] 150(0.0%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/regimes.rkt:177:2 ??? [150] 100.0% ------------------------------------------------------------------------------------------- sidx->spoint [178] 100.0% [183] 13754(0.7%) 0(0.0%) binary-search ...iff-of-prods/src/common.rkt:221:0 pred [186] 100.0% ------------------------------------------------------------------------------------------- sidx->spoint [178] 100.0% [184] 2250(0.1%) 0(0.0%) binary-search-floats ...prods/src/common.rkt:236:0 pred [186] 100.0% ------------------------------------------------------------------------------------------- generic-sort/key [179] 34.9% copying-mergesort [185] 65.1% [185] 964(0.0%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [185] 65.1% loop [187] 22.8% jloop [188] 12.1% ------------------------------------------------------------------------------------------- binary-search-floats [184] 14.1% binary-search [183] 85.9% [186] 16004(0.8%) 0(0.0%) pred .../diff-of-prods/src/core/regimes.rkt:132:17 loop [90] 91.4% errors [144] 8.6% ------------------------------------------------------------------------------------------- generic-sort/key [179] 18.3% ??? [173] 31.1% copying-mergesort [185] 50.6% [187] 984(0.0%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [150] 81.7% ??? [189] 18.3% ------------------------------------------------------------------------------------------- generic-sort/key [179] 41.9% copying-mergesort [185] 58.1% [188] 802(0.0%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [150] 58.1% errors-score [190] 41.9% ------------------------------------------------------------------------------------------- eval-prog [147] 0.3% loop [187] 0.4% get-final-combination [24] 0.4% loop [219] 0.5% loop [171] 0.7% for-loop [145] 1.4% map [156] 1.5% ??? [150] 3.1% loop [23] 14.6% ??? [191] 21.0% for-loop [91] 21.0% f66 [149] 33.4% [189] 46152(2.3%) 1072(0.1%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [191] 40.9% approximate9 [6] 19.4% hash-ref! [192] 14.6% ??? [231] 13.1% ...prods/src/common.rkt:47:2 [127] 3.7% ??? [126] 1.9% simplify [200] 1.6% best-alt [193] 1.6% ??? [194] 0.8% ------------------------------------------------------------------------------------------- jloop [188] 100.0% [190] 336(0.0%) 0(0.0%) errors-score ...diff-of-prods/src/points.rkt:228:0 loop [195] 100.0% ------------------------------------------------------------------------------------------- simplify-alt [49] 0.1% f66 [149] 0.2% ??? [189] 1.6% get-sigs [119] 2.8% ??? [191] 4.4% for-loop [70] 5.4% for-loop [196] 40.9% ??? [77] 43.8% [191] 1659924(83.9%) 100048(5.1%) ??? ...llects/racket/private/norm-define.rkt:53:83 for-loop [196] 40.9% iterate-egraph!13 [3] 32.9% loop [4] 11.4% ??? [197] 5.9% ??? [191] 4.4% ??? [189] 1.0% mk-egraph [202] 0.5% ??? [222] 0.2% return/no-unsupplied [199] 0.2% ??? [209] 0.1% dict? [246] 0.1% debug-print [215] 0.0% ------------------------------------------------------------------------------------------- ??? [51] 0.2% taylor-sqrt [35] 0.3% for-loop [36] 0.3% for-loop [48] 0.4% ??? [11] 0.5% first-nonzero-exp [52] 0.6% for-loop [30] 0.7% localize-error [65] 0.9% ??? [167] 2.4% update-leader! [88] 2.4% for-loop [26] 3.0% eval-prog [147] 3.8% ??? [201] 4.9% ??? [189] 6.7% for-loop [25] 7.3% loop [219] 9.5% compile [82] 21.5% ??? [198] 33.0% [192] 88984(4.5%) 47190(2.4%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [198] 45.2% ??? [8] 8.0% simplify [200] 7.5% ??? [201] 4.9% parse-loop12 [210] 3.1% ??? [10] 3.1% bigfloat-hash [203] 3.1% ??? [11] 1.5% ??? [13] 0.5% ??? [12] 0.4% f66 [149] 0.2% ??? [16] 0.0% ------------------------------------------------------------------------------------------- ??? [189] 100.0% [193] 928(0.0%) 0(0.0%) best-alt ...herbie/diff-of-prods/src/glue.rkt:71:0 loop [204] 64.2% argmins [206] 35.8% ------------------------------------------------------------------------------------------- ??? [150] 31.4% ??? [189] 68.6% [194] 522(0.0%) 0(0.0%) ??? ...contract/private/../../private/kw.rkt:761:9 integer->bigfloat [205] 68.6% real->bigfloat [207] 31.4% ------------------------------------------------------------------------------------------- errors-score [190] 100.0% [195] 336(0.0%) 336(0.0%) loop ...hare/racket/collects/racket/list.rkt:551:2 ------------------------------------------------------------------------------------------- ??? [191] 100.0% [196] 1480532(74.8%) 356(0.0%) for-loop ...f-of-prods/src/core/simplify.rkt:63:12 ??? [191] 100.0% ------------------------------------------------------------------------------------------- hash-has-key? [131] 19.3% ??? [191] 80.7% [197] 351144(17.7%) 130434(6.6%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [208] 51.1% ??? [220] 9.7% ??? [209] 1.1% ??? [231] 0.4% successfully-got-the-right-kind-of-function [217] 0.4% arrow-higher-order:lnp [225] 0.2% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [198] 54870(2.8%) 6238(0.3%) ??? ...herbie/diff-of-prods/src/programs.rkt:183:5 hash-ref! [192] 75.4% loop [219] 20.3% ------------------------------------------------------------------------------------------- for-loop [113] 3.5% ??? [165] 4.3% ??? [191] 18.9% ??? [135] 23.5% flag-set? [61] 48.5% [199] 38992(2.0%) 26462(1.3%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [211] 32.1% ------------------------------------------------------------------------------------------- ??? [11] 1.0% taylor-invert [15] 1.3% first-nonzero-exp [52] 1.4% taylor-sqrt [35] 1.4% for-loop [25] 2.4% for-loop [36] 4.1% ??? [189] 6.1% hash-ref! [192] 82.2% [200] 24746(1.3%) 0(0.0%) simplify ...diff-of-prods/src/core/reduce.rkt:16:0 f66 [149] 61.8% parse-loop12 [210] 22.1% simplify-node [166] 7.0% debug7 [218] 4.1% debug-print [215] 2.4% make-multiplication-node [28] 1.3% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [201] 18516(0.9%) 0(0.0%) ??? ...bie/diff-of-prods/src/core/taylor.rkt:44:15 hash-ref! [192] 100.0% ------------------------------------------------------------------------------------------- ??? [191] 100.0% [202] 16678(0.8%) 0(0.0%) mk-egraph ...ff-of-prods/src/core/egraph.rkt:123:0 expr->enode [212] 91.9% mk-enode! [86] 8.1% ------------------------------------------------------------------------------------------- hash-ref! [192] 100.0% [203] 9726(0.5%) 334(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [213] 82.3% sig+exp->bigfloat [216] 14.2% ------------------------------------------------------------------------------------------- best-alt [193] 100.0% [204] 596(0.0%) 0(0.0%) loop .../herbie/diff-of-prods/src/common.rkt:146:2 composed [214] 100.0% ------------------------------------------------------------------------------------------- ??? [194] 100.0% [205] 358(0.0%) 358(0.0%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ------------------------------------------------------------------------------------------- best-alt [193] 100.0% [206] 332(0.0%) 0(0.0%) argmins ...rbie/diff-of-prods/src/common.rkt:145:0 composed [214] 100.0% ------------------------------------------------------------------------------------------- ??? [194] 100.0% [207] 164(0.0%) 0(0.0%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [259] 100.0% ------------------------------------------------------------------------------------------- ??? [197] 100.0% [208] 179382(9.1%) 110548(5.6%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [220] 21.8% for-loop [132] 13.0% ??? [224] 3.2% arrow-higher-order:lnp [225] 0.4% ------------------------------------------------------------------------------------------- ??? [197] 2.9% ??? [191] 3.4% ??? [136] 36.8% for-loop [132] 56.6% [209] 130576(6.6%) 31588(1.6%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [221] 54.2% ??? [136] 10.7% for-loop [223] 9.5% ??? [235] 1.4% ------------------------------------------------------------------------------------------- ??? [155] 1.0% for-loop [37] 1.8% loop [219] 2.4% f66 [149] 2.8% type-of-enode-expr [109] 3.4% parse-loop12 [210] 15.4% hash-ref! [192] 16.4% append-map [172] 18.6% map [156] 19.0% simplify [200] 19.2% [210] 17718(0.9%) 8034(0.4%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [219] 23.2% parse-loop12 [210] 15.4% make-multiplication-node [28] 12.8% for-loop [14] 5.2% f66 [149] 5.2% map [156] 2.0% gather-additive-terms6 [230] 2.0% simplify-node [166] 1.0% loop [171] 0.6% ------------------------------------------------------------------------------------------- one-iter [20] 1.3% for-loop [41] 4.6% match-e [71] 6.1% for-loop [81] 7.7% return/no-unsupplied [199] 80.3% [211] 15602(0.8%) 15602(0.8%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------- mk-egraph [202] 28.9% expr->enode [212] 71.1% [212] 15330(0.8%) 328(0.0%) expr->enode ...-of-prods/src/core/egraph.rkt:124:2 expr->enode [212] 71.1% mk-enode! [86] 28.2% curried [237] 0.2% ------------------------------------------------------------------------------------------- bigfloat-hash [203] 100.0% [213] 8008(0.4%) 7502(0.4%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [229] 6.3% ------------------------------------------------------------------------------------------- argmins [206] 16.8% loop [204] 30.2% f66 [149] 53.0% [214] 1974(0.1%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 f66 [149] 53.0% errors [144] 47.0% ------------------------------------------------------------------------------------------- for-loop [68] 17.1% iterate-egraph!13 [3] 22.0% ??? [191] 24.0% simplify [200] 36.8% [215] 1624(0.1%) 986(0.0%) debug-print ...e/diff-of-prods/src/debug.rkt:107:0 for-loop [228] 39.3% ------------------------------------------------------------------------------------------- bigfloat-hash [203] 100.0% [216] 1384(0.1%) 356(0.0%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [227] 61.8% ??? [259] 12.4% ------------------------------------------------------------------------------------------- ??? [197] 100.0% [217] 1266(0.1%) 220(0.0%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [226] 82.6% ------------------------------------------------------------------------------------------- simplify [200] 100.0% [218] 1008(0.1%) 0(0.0%) debug7 ...herbie/diff-of-prods/src/debug.rkt:102:0 ??? [125] 67.7% ??? [222] 32.3% ------------------------------------------------------------------------------------------- make-exacts* [115] 0.2% map [156] 0.9% parse-loop12 [210] 2.6% for-loop [81] 4.2% f66 [149] 5.8% match-e [71] 7.1% ??? [198] 8.4% loop! [102] 14.4% loop [219] 55.7% [219] 121672(6.1%) 12224(0.6%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [219] 55.7% loop! [102] 13.6% hash-ref! [192] 8.4% option-on-expr [158] 5.8% foldl [234] 3.7% loop [239] 2.4% parse-loop12 [210] 1.3% curried [237] 1.0% ??? [150] 1.0% for-loop [7] 0.8% ??? [167] 0.7% f66 [149] 0.6% bf* [238] 0.0% ??? [245] 0.0% set-precompute! [242] 0.0% ??? [189] 0.0% ------------------------------------------------------------------------------------------- ??? [126] 0.7% ??? [197] 46.3% for-loop [208] 53.0% [220] 73802(3.7%) 37112(1.9%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [232] 49.7% ------------------------------------------------------------------------------------------- ??? [209] 100.0% [221] 70736(3.6%) 6286(0.3%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [231] 84.8% ??? [235] 6.3% ------------------------------------------------------------------------------------------- debug7 [218] 0.7% f66 [149] 0.8% for-loop [113] 2.2% ??? [165] 3.9% ??? [191] 20.6% flag-set? [61] 31.5% ??? [135] 40.0% [222] 47936(2.4%) 9976(0.5%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [233] 59.8% ??? [231] 19.4% ------------------------------------------------------------------------------------------- ??? [209] 100.0% [223] 12396(0.6%) 5228(0.3%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [136] 57.8% ------------------------------------------------------------------------------------------- ??? [126] 13.0% ??? [136] 28.6% for-loop [208] 58.4% [224] 9748(0.5%) 3366(0.2%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [236] 65.5% ------------------------------------------------------------------------------------------- maybe-cons-kwd [76] 13.9% for-loop [208] 40.5% ??? [197] 45.6% [225] 1566(0.1%) 848(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [240] 45.8% ------------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [217]100.0% [226] 1046(0.1%) 358(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [241] 65.8% ------------------------------------------------------------------------------------------- sig+exp->bigfloat [216] 100.0% [227] 856(0.0%) 856(0.0%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ------------------------------------------------------------------------------------------- debug-print [215] 100.0% [228] 638(0.0%) 638(0.0%) for-loop ...rbie/diff-of-prods/src/debug.rkt:113:2 ------------------------------------------------------------------------------------------- bfcanonicalize [213] 100.0% [229] 506(0.0%) 182(0.0%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 mpz->integer [243] 34.8% size+limbs->integer [244] 29.2% ------------------------------------------------------------------------------------------- parse-loop12 [210] 100.0% [230] 356(0.0%) 356(0.0%) gather-additive-terms6 ...src/core/reduce.rkt:72:0 ------------------------------------------------------------------------------------------- ??? [125] 1.1% ??? [197] 1.5% ??? [189] 6.8% ??? [222] 10.4% ??? [136] 13.4% ??? [221] 66.9% [231] 89706(4.5%) 69162(3.5%) ??? ...ects/racket/contract/private/guts.rkt:644:8 contract? [247] 10.4% ??? [125] 6.8% dict? [246] 5.7% ------------------------------------------------------------------------------------------- ??? [220] 100.0% [232] 36690(1.9%) 36690(1.9%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------- ??? [222] 100.0% [233] 28656(1.4%) 27398(1.4%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [253] 4.4% ------------------------------------------------------------------------------------------- for-loop [124] 3.0% for-loop [9] 5.5% matcher [110] 5.9% for-loop [81] 8.1% loop [219] 77.4% [234] 11076(0.6%) 4320(0.2%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [249] 55.1% merge-2-bindings [254] 5.9% ------------------------------------------------------------------------------------------- ??? [155] 10.4% ??? [209] 18.1% for-loop [132] 28.3% ??? [221] 43.2% [235] 10380(0.5%) 5990(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [250] 42.3% ------------------------------------------------------------------------------------------- ??? [224] 100.0% [236] 6382(0.3%) 2620(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [251] 58.9% ------------------------------------------------------------------------------------------- for-loop [81] 3.7% expr->enode [212] 5.8% for-loop [22] 16.6% loop [219] 30.4% ormap [43] 43.5% [237] 6122(0.3%) 6122(0.3%) curried ...cket/collects/racket/function.rkt:71:18 ------------------------------------------------------------------------------------------- loop [219] 11.4% eval-const-expr [32] 16.0% ??? [155] 72.6% [238] 5750(0.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [245] 100.0% ------------------------------------------------------------------------------------------- for-loop [81] 24.8% loop [219] 75.2% [239] 4242(0.2%) 4242(0.2%) loop ...e/racket/collects/racket/function.rkt:53:6 ------------------------------------------------------------------------------------------- arrow-higher-order:lnp [225] 100.0% [240] 718(0.0%) 364(0.0%) ??? ...et/contract/private/arity-checking.rkt:19:2 procedure-arity [252] 49.3% ------------------------------------------------------------------------------------------- arity-checking-wrapper [226] 100.0% [241] 688(0.0%) 688(0.0%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ------------------------------------------------------------------------------------------- loop [219] 100.0% [242] 334(0.0%) 0(0.0%) set-precompute! ...ods/src/core/simplify.rkt:172:0 make-sequence [248] 100.0% ------------------------------------------------------------------------------------------- bigfloat->sig+exp [229] 100.0% [243] 176(0.0%) 176(0.0%) mpz->integer ...ath/private/bigfloat/gmp.rkt:115:0 ------------------------------------------------------------------------------------------- bigfloat->sig+exp [229] 100.0% [244] 148(0.0%) 148(0.0%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 ------------------------------------------------------------------------------------------- loop [219] 3.4% ??? [155] 36.5% bf* [238] 60.1% [245] 9566(0.5%) 1240(0.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [255] 87.0% ------------------------------------------------------------------------------------------- ??? [191] 45.8% ??? [231] 54.2% [246] 9486(0.5%) 9486(0.5%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------------------- ??? [231] 100.0% [247] 9348(0.5%) 9348(0.5%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------------------- set-precompute! [242] 4.4% ??? [128] 8.8% update-leader! [88] 20.7% merge-egraph-nodes! [78] 27.3% for-loop [41] 38.8% [248] 7678(0.4%) 6180(0.3%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [257] 19.5% ------------------------------------------------------------------------------------------- foldl [234] 100.0% [249] 6100(0.3%) 6100(0.3%) merge2 ...e/diff-of-prods/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------------------- ??? [235] 100.0% [250] 4390(0.2%) 2050(0.1%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [256] 53.3% ------------------------------------------------------------------------------------------- check-hash/c [236] 100.0% [251] 3762(0.2%) 3762(0.2%) flat-contract? .../contract/private/guts.rkt:111:0 ------------------------------------------------------------------------------------------- ??? [240] 10.0% curry* [97] 90.0% [252] 3538(0.2%) 3538(0.2%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------------------- ??? [126] 30.8% ??? [233] 69.2% [253] 1818(0.1%) 1818(0.1%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ------------------------------------------------------------------------------------------- foldl [234] 100.0% [254] 656(0.0%) 656(0.0%) merge-2-bindings ...rods/src/core/matcher.rkt:28:0 ------------------------------------------------------------------------------------------- ??? [245] 100.0% [255] 8326(0.4%) 5734(0.3%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [259] 31.1% ------------------------------------------------------------------------------------------- ??? [250] 100.0% [256] 2340(0.1%) 2340(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------------------- make-sequence [248] 100.0% [257] 1498(0.1%) 300(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [258] 80.0% ------------------------------------------------------------------------------------------- setfindf [27] 7.5% ??? [257] 26.9% match-e [71] 65.6% [258] 4448(0.2%) 4448(0.2%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------------------- real->bigfloat [207] 5.6% sig+exp->bigfloat [216] 5.9% bfmul [255] 88.5% [259] 2928(0.1%) 2928(0.1%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 -------------------------------------------------------------------------------------------