Profiling results ----------------- Total cpu time observed: 490160ms (out of 498996ms) Number of samples taken: 2131 (once every 230ms) (Hiding functions with self<1.0% and local<2.0%: 25 of 299 hidden) =========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================================== ??? [28] 100.0% [1] 428284(87.4%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [16] 100.0% ------------------------------------------------------------------------------------------- ??? [218] 100.0% [2] 239746(48.9%) 696(0.1%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [17] 97.5% map-enodes [24] 1.9% debug-print [39] 0.2% debug7 [161] 0.1% ------------------------------------------------------------------------------------------- ??? [210] 100.0% [3] 54688(11.2%) 0(0.0%) approximate9 ...-of-prods/src/core/taylor.rkt:12:0 loop [18] 95.7% f6 [52] 3.3% taylor-sqrt [160] 1.0% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [4] 48826(10.0%) 0(0.0%) ??? ...bie/diff-of-prods/src/core/taylor.rkt:44:15 ??? [31] 93.0% hash-ref! [212] 4.4% simplify [30] 2.6% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [5] 44674(9.1%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:285:26 for-loop [19] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [6] 41862(8.5%) 296(0.1%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:295:23 for-loop [20] 99.3% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [7] 36164(7.4%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:322:33 for-loop [21] 100.0% ------------------------------------------------------------------------------------------- ??? [218] 100.0% [8] 30522(6.2%) 0(0.0%) loop .../diff-of-prods/src/core/simplify.rkt:215:2 pass [22] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [9] 20234(4.1%) 0(0.0%) ??? ...bie/diff-of-prods/src/core/taylor.rkt:67:15 ??? [210] 92.5% hash-ref! [212] 7.5% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [10] 20058(4.1%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:392:23 for-loop [23] 100.0% ------------------------------------------------------------------------------------------- rewriter [78] 100.0% [11] 1466(0.3%) 0(0.0%) *rules* ...iff-of-prods/src/syntax/rules.rkt:493:0 for-loop [25] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [12] 1206(0.2%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:338:33 for-loop [27] 69.8% hash-ref! [212] 30.2% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [13] 1070(0.2%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:483:23 for-loop [26] 100.0% ------------------------------------------------------------------------------------------- f6 [52] 100.0% [14] 890(0.2%) 0(0.0%) taylor-quotient ...prods/src/core/taylor.rkt:328:0 first-nonzero-exp [168] 66.7% simplify [30] 33.3% ------------------------------------------------------------------------------------------- copying-mergesort [106] 100.0% [15] 364(0.1%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [208] 100.0% ------------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [16] 428412(87.4%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [28] 100.0% ------------------------------------------------------------------------------------------- iterate-egraph!13 [2] 100.0% [17] 233802(47.7%) 3822(0.8%) one-iter ...f-of-prods/src/core/simplify.rkt:113:0 loop [57] 64.3% for-loop [29] 30.0% apply-match [65] 3.7% ------------------------------------------------------------------------------------------- approximate9 [3] 100.0% [18] 52354(10.7%) 0(0.0%) loop ...bie/diff-of-prods/src/core/taylor.rkt:86:4 ??? [210] 61.4% hash-ref! [212] 38.6% ------------------------------------------------------------------------------------------- ??? [5] 100.0% [19] 44674(9.1%) 358(0.1%) for-loop ...ff-of-prods/src/core/taylor.rkt:285:52 ??? [31] 64.6% hash-ref! [212] 30.1% simplify [30] 5.3% ------------------------------------------------------------------------------------------- ??? [6] 100.0% [20] 41566(8.5%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:298:27 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- ??? [7] 100.0% [21] 36164(7.4%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:324:46 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- loop [8] 100.0% [22] 30522(6.2%) 0(0.0%) pass .../diff-of-prods/src/core/simplify.rkt:205:2 for-loop [32] 100.0% ------------------------------------------------------------------------------------------- ??? [10] 100.0% [23] 20058(4.1%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:396:33 for-loop [33] 100.0% ------------------------------------------------------------------------------------------- iterate-egraph!13 [2] 100.0% [24] 4466(0.9%) 0(0.0%) map-enodes ...f-of-prods/src/core/egraph.rkt:139:0 loop [226] 93.2% for-loop [239] 6.8% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [87] 16.9% *rules* [11] 83.1% [25] 1764(0.4%) 582(0.1%) for-loop ...rbie/diff-of-prods/src/common.rkt:94:9 ormap [34] 67.0% ------------------------------------------------------------------------------------------- ??? [13] 100.0% [26] 1070(0.2%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:487:35 parse-loop12 [166] 100.0% ------------------------------------------------------------------------------------------- ??? [12] 100.0% [27] 842(0.2%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:341:46 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- for-loop [56] 16.3% run [16] 37.0% [28] 482620(98.5%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 37.0% run-improve50 [35] 36.6% ??? [218] 25.6% loop [120] 0.8% ------------------------------------------------------------------------------------------- for-loop [29] 49.5% one-iter [17] 50.5% [29] 70080(14.3%) 17896(3.7%) for-loop ...-of-prods/src/core/simplify.rkt:123:12 for-loop [29] 49.5% match-e [76] 37.1% ??? [116] 0.1% ------------------------------------------------------------------------------------------- taylor-quotient [14] 0.6% taylor-sqrt [160] 0.7% parse-loop12 [166] 0.7% ??? [4] 2.5% for-loop [19] 6.3% hash-ref! [212] 86.8% [30] 52354(10.7%) 0(0.0%) simplify ...diff-of-prods/src/core/reduce.rkt:16:0 f6 [52] 65.0% parse-loop12 [166] 28.7% simplify-node [149] 2.6% debug-print [39] 2.0% simplify* [171] 1.3% debug7 [161] 0.4% ------------------------------------------------------------------------------------------- ??? [4] 40.2% for-loop [19] 59.8% [31] 46486(9.5%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:288:19 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- pass [22] 100.0% [32] 30522(6.2%) 246(0.1%) for-loop ...-of-prods/src/core/simplify.rkt:208:29 argmin [36] 73.9% loop [37] 14.8% for-loop [38] 7.5% make-sequence [114] 2.9% ------------------------------------------------------------------------------------------- for-loop [23] 100.0% [33] 20058(4.1%) 356(0.1%) for-loop ...ff-of-prods/src/core/taylor.rkt:398:39 hash-ref! [212] 98.2% ------------------------------------------------------------------------------------------- for-loop [25] 100.0% [34] 1182(0.2%) 0(0.0%) ormap ...et/collects/racket/private/map.rkt:105:13 flag-set? [40] 100.0% ------------------------------------------------------------------------------------------- ??? [28] 100.0% [35] 422912(86.3%) 0(0.0%) run-improve50 ...f-of-prods/src/mainloop.rkt:234:0 for-loop [41] 67.5% get-final-combination [42] 31.9% loop [120] 0.5% setup-alt-simplified [45] 0.2% ------------------------------------------------------------------------------------------- for-loop [32] 100.0% [36] 22558(4.6%) 582(0.1%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [43] 89.6% expression-cost [44] 7.8% ------------------------------------------------------------------------------------------- for-loop [32] 100.0% [37] 4528(0.9%) 360(0.1%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [43] 79.8% expression-cost [44] 12.3% ------------------------------------------------------------------------------------------- for-loop [32] 100.0% [38] 2304(0.5%) 2304(0.5%) for-loop ...-of-prods/src/core/simplify.rkt:195:13 ------------------------------------------------------------------------------------------- iterate-egraph!13 [2] 36.2% simplify [30] 63.8% [39] 1640(0.3%) 952(0.2%) debug-print ...e/diff-of-prods/src/debug.rkt:107:0 for-loop [46] 42.0% ------------------------------------------------------------------------------------------- ormap [34] 100.0% [40] 1182(0.2%) 822(0.2%) flag-set? ...bie/diff-of-prods/src/config.rkt:32:0 ??? [229] 30.5% ------------------------------------------------------------------------------------------- run-improve50 [35] 100.0% [41] 285568(58.3%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:249:10 run-iter! [47] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [35] 100.0% [42] 134704(27.5%) 0(0.0%) get-final-combination ...ds/src/mainloop.rkt:264:0 split-table [48] 100.0% ------------------------------------------------------------------------------------------- loop [37] 15.2% argmin [36] 84.8% [43] 23830(4.9%) 550(0.1%) for-loop ...e/diff-of-prods/src/programs.rkt:199:2 ??? [218] 71.7% ...prods/src/common.rkt:47:2 [133] 22.2% ??? [132] 3.8% ------------------------------------------------------------------------------------------- loop [37] 24.0% argmin [36] 76.0% [44] 2314(0.5%) 0(0.0%) expression-cost ...of-prods/src/programs.rkt:198:0 compile [49] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [35] 100.0% [45] 716(0.1%) 0(0.0%) setup-alt-simplified ...of-prods/src/glue.rkt:49:0 simplify-alt [50] 100.0% ------------------------------------------------------------------------------------------- debug-print [39] 100.0% [46] 688(0.1%) 688(0.1%) for-loop ...rbie/diff-of-prods/src/debug.rkt:113:2 ------------------------------------------------------------------------------------------- for-loop [41] 100.0% [47] 285568(58.3%) 0(0.0%) run-iter! .../diff-of-prods/src/mainloop.rkt:215:0 simplify! [51] 75.3% gen-series! [53] 19.2% finalize-iter! [54] 4.1% gen-rewrites! [55] 0.9% ------------------------------------------------------------------------------------------- get-final-combination [42] 100.0% [48] 134704(27.5%) 0(0.0%) split-table ...ie/diff-of-prods/src/glue.rkt:162:0 f6 [52] 100.0% ------------------------------------------------------------------------------------------- expression-cost [44] 100.0% [49] 2314(0.5%) 0(0.0%) compile ...ie/diff-of-prods/src/programs.rkt:175:0 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- setup-alt-simplified [45] 100.0% [50] 716(0.1%) 0(0.0%) simplify-alt ...ie/diff-of-prods/src/glue.rkt:76:0 ??? [218] 100.0% ------------------------------------------------------------------------------------------- run-iter! [47] 100.0% [51] 214934(43.8%) 188(0.0%) simplify! .../diff-of-prods/src/mainloop.rkt:155:0 for-loop [56] 99.9% ------------------------------------------------------------------------------------------- ??? [151] 0.0% loop [57] 0.1% composed [231] 0.1% rewriter [78] 0.1% simplify-node [149] 0.2% mterm->expr [192] 0.3% approximate9 [3] 0.4% for-loop [197] 0.4% append-map [159] 0.6% hash-ref! [212] 0.6% eval-const-expr [251] 0.6% loop [226] 0.9% eval-prog [140] 1.3% f6 [52] 3.6% parse-loop12 [166] 3.6% map [141] 6.9% simplify [30] 7.0% split-table [48] 73.2% [52] 179578(36.6%) 8244(1.7%) f6 ...et/collects/racket/match/compiler.rkt:507:40 loop [226] 64.7% map [141] 16.5% option-on-expr [58] 8.4% f6 [52] 3.6% ??? [210] 1.3% append-map [159] 0.8% parse-app [265] 0.4% ??? [132] 0.4% ??? [218] 0.3% ??? [63] 0.3% combine-mterms [62] 0.3% loop [61] 0.3% ...prods/src/common.rkt:47:2 [133] 0.2% composed [231] 0.1% expression->type [193] 0.1% parse-loop12 [166] 0.1% exprs-to-branch-on [64] 0.1% loop [57] 0.1% ??? [198] 0.1% taylor-quotient [14] 0.1% taylor-sqrt [160] 0.1% taylor [152] 0.0% ------------------------------------------------------------------------------------------- run-iter! [47] 100.0% [53] 54688(11.2%) 0(0.0%) gen-series! ...iff-of-prods/src/mainloop.rkt:129:0 for-loop [59] 100.0% ------------------------------------------------------------------------------------------- run-iter! [47] 100.0% [54] 11700(2.4%) 0(0.0%) finalize-iter! ...-of-prods/src/mainloop.rkt:169:0 ??? [198] 100.0% ------------------------------------------------------------------------------------------- run-iter! [47] 100.0% [55] 2444(0.5%) 0(0.0%) gen-rewrites! ...f-of-prods/src/mainloop.rkt:142:0 for-loop [60] 100.0% ------------------------------------------------------------------------------------------- simplify! [51] 96.8% [56] 221772(45.2%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:159:6 ??? [28] 100.0% ------------------------------------------------------------------------------------------- f6 [52] 0.5% one-iter [17] 99.5% [57] 150908(30.8%) 336(0.1%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [65] 99.3% f6 [52] 0.5% ------------------------------------------------------------------------------------------- f6 [52] 11.6% loop [226] 88.4% [58] 134520(27.4%) 110(0.0%) option-on-expr ...prods/src/core/regimes.rkt:103:0 sindices->spoints [66] 94.3% sort-context-on-expr [69] 1.8% err-lsts->split-indices [70] 1.7% loop [226] 1.4% pick-errors [72] 0.4% errors [205] 0.4% ------------------------------------------------------------------------------------------- gen-series! [53] 100.0% [59] 54688(11.2%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:135:7 taylor-alt [67] 100.0% ------------------------------------------------------------------------------------------- gen-rewrites! [55] 100.0% [60] 2444(0.5%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:147:11 ??? [68] 100.0% ------------------------------------------------------------------------------------------- f6 [52] 100.0% [61] 2346(0.5%) 360(0.1%) loop ...bie/diff-of-prods/src/core/reduce.rkt:18:2 expression->type [193] 84.7% ------------------------------------------------------------------------------------------- f6 [52] 100.0% [62] 1376(0.3%) 714(0.1%) combine-mterms ...-prods/src/core/reduce.rkt:191:0 for-loop [71] 48.1% ------------------------------------------------------------------------------------------- f6 [52] 100.0% [63] 588(0.1%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:336:46 ??? [263] 100.0% ------------------------------------------------------------------------------------------- f6 [52] 100.0% [64] 184(0.0%) 0(0.0%) exprs-to-branch-on ...ds/src/core/regimes.rkt:55:0 for-loop [73] 100.0% ------------------------------------------------------------------------------------------- one-iter [17] 5.4% loop [57] 94.6% [65] 158428(32.3%) 546(0.1%) apply-match ...f-prods/src/core/simplify.rkt:130:2 for-loop [74] 88.9% match-e [76] 9.1% update-leader! [98] 1.0% reduce-to-single! [81] 0.6% ------------------------------------------------------------------------------------------- option-on-expr [58] 100.0% [66] 126790(25.9%) 0(0.0%) sindices->spoints ...ds/src/core/regimes.rkt:116:0 loop [75] 100.0% ------------------------------------------------------------------------------------------- for-loop [59] 100.0% [67] 54688(11.2%) 0(0.0%) taylor-alt ...bie/diff-of-prods/src/glue.rkt:134:0 for-loop [77] 100.0% ------------------------------------------------------------------------------------------- for-loop [60] 100.0% [68] 2444(0.5%) 0(0.0%) ??? ...rbie/diff-of-prods/src/alternative.rkt:88:0 rewriter [78] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [58] 100.0% [69] 2404(0.5%) 0(0.0%) sort-context-on-expr ...prods/src/points.rkt:115:0 ??? [79] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [58] 100.0% [70] 2238(0.5%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 add-splitpoint [80] 100.0% ------------------------------------------------------------------------------------------- combine-mterms [62] 100.0% [71] 662(0.1%) 662(0.1%) for-loop ...iff-of-prods/src/core/reduce.rkt:195:5 ------------------------------------------------------------------------------------------- option-on-expr [58] 100.0% [72] 536(0.1%) 118(0.0%) pick-errors ...of-prods/src/core/regimes.rkt:184:0 for-loop [82] 58.6% point->alt [84] 19.4% ------------------------------------------------------------------------------------------- exprs-to-branch-on [64] 100.0% [73] 184(0.0%) 0(0.0%) for-loop ...ff-of-prods/src/core/regimes.rkt:57:27 all-critical-subexpressions [83] 100.0% ------------------------------------------------------------------------------------------- apply-match [65] 100.0% [74] 140888(28.7%) 352(0.1%) for-loop ...-of-prods/src/core/simplify.rkt:145:10 mk-enode! [95] 30.1% merge-egraph-nodes! [87] 24.4% substitute-e [88] 21.3% loop! [110] 20.1% list-member? [89] 3.9% ------------------------------------------------------------------------------------------- parse-loop12 [166] 0.0% map [141] 0.0% loop [75] 28.7% sindices->spoints [66] 71.3% [75] 127450(26.0%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 sidx->spoint [85] 71.3% loop [75] 28.7% ??? [210] 0.0% ------------------------------------------------------------------------------------------- apply-match [65] 13.5% for-loop [97] 25.1% for-loop [29] 61.4% [76] 66468(13.6%) 22016(4.5%) match-e .../diff-of-prods/src/core/ematch.rkt:46:0 for-loop [86] 48.1% for-loop [97] 8.8% ??? [198] 6.8% variable? [196] 4.3% loop [226] 3.2% list-cartesian-product [99] 1.2% custom-in-set [266] 1.1% ------------------------------------------------------------------------------------------- taylor-alt [67] 100.0% [77] 54688(11.2%) 0(0.0%) for-loop ...erbie/diff-of-prods/src/glue.rkt:139:6 ??? [210] 100.0% ------------------------------------------------------------------------------------------- ??? [68] 20.8% matcher [104] 79.2% [78] 2444(0.5%) 358(0.1%) rewriter ...ff-of-prods/src/core/matcher.rkt:131:2 for-loop [90] 82.9% *rules* [11] 12.0% f6 [52] 2.7% ------------------------------------------------------------------------------------------- sort-context-on-expr [69] 100.0% [79] 2404(0.5%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [92] 66.2% loop [113] 33.8% ------------------------------------------------------------------------------------------- err-lsts->split-indices [70] 100.0% [80] 2238(0.5%) 0(0.0%) add-splitpoint ...prods/src/core/regimes.rkt:235:2 for-loop [91] 100.0% ------------------------------------------------------------------------------------------- apply-match [65] 100.0% [81] 896(0.2%) 248(0.1%) reduce-to-single! ...ods/src/core/egraph.rkt:324:0 make-sequence [114] 72.3% ------------------------------------------------------------------------------------------- pick-errors [72] 100.0% [82] 314(0.1%) 0(0.0%) for-loop ...ff-of-prods/src/core/regimes.rkt:186:2 ??? [93] 100.0% ------------------------------------------------------------------------------------------- for-loop [73] 100.0% [83] 184(0.0%) 0(0.0%) all-critical-subexpressions ...re/regimes.rkt:71:0 ??? [210] 100.0% ------------------------------------------------------------------------------------------- pick-errors [72] 100.0% [84] 104(0.0%) 0(0.0%) point->alt ...-of-prods/src/core/regimes.rkt:171:0 eval-prog [140] 100.0% ------------------------------------------------------------------------------------------- loop [75] 100.0% [85] 126790(25.9%) 0(0.0%) sidx->spoint ...f-prods/src/core/regimes.rkt:126:2 binary-search [94] 59.2% binary-search-floats [96] 40.8% ------------------------------------------------------------------------------------------- match-e [76] 100.0% [86] 41738(8.5%) 14414(2.9%) for-loop ...iff-of-prods/src/core/ematch.rkt:59:11 for-loop [97] 54.7% list-cartesian-product [99] 10.7% loop [226] 3.9% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [87] 2.5% for-loop [102] 3.6% for-loop [74] 93.9% [87] 34358(7.0%) 1190(0.2%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [98] 48.9% loop! [110] 19.4% for-loop [101] 12.2% enode-merge! [103] 7.7% for-loop [102] 5.6% merge-egraph-nodes! [87] 2.5% for-loop [25] 0.4% ------------------------------------------------------------------------------------------- substitute-e [88] 6.4% for-loop [74] 93.6% [88] 29980(6.1%) 244(0.0%) substitute-e ...-of-prods/src/core/ematch.rkt:71:0 mk-enode! [95] 88.9% substitute-e [88] 6.4% variable? [196] 2.9% ??? [198] 1.5% ------------------------------------------------------------------------------------------- for-loop [74] 100.0% [89] 5456(1.1%) 190(0.0%) list-member? ...llects/racket/private/set.rkt:24:0 loop [100] 91.8% member [107] 4.8% ------------------------------------------------------------------------------------------- rewriter [78] 100.0% [90] 2444(0.5%) 0(0.0%) for-loop ...f-of-prods/src/core/matcher.rkt:134:10 matcher [104] 100.0% ------------------------------------------------------------------------------------------- add-splitpoint [80] 100.0% [91] 2238(0.5%) 764(0.2%) for-loop ...ff-of-prods/src/core/regimes.rkt:237:4 for-loop [105] 65.9% ------------------------------------------------------------------------------------------- ??? [79] 100.0% [92] 1592(0.3%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [106] 75.3% loop [113] 24.7% ------------------------------------------------------------------------------------------- for-loop [82] 100.0% [93] 314(0.1%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/regimes.rkt:177:2 ??? [208] 100.0% ------------------------------------------------------------------------------------------- sidx->spoint [85] 100.0% [94] 75018(15.3%) 0(0.0%) binary-search ...iff-of-prods/src/common.rkt:221:0 pred [108] 100.0% ------------------------------------------------------------------------------------------- expr->enode [246] 0.9% substitute-e [88] 38.3% for-loop [74] 60.9% [95] 69632(14.2%) 5486(1.1%) mk-enode! ...ff-of-prods/src/core/egraph.rkt:101:0 new-enode [109] 92.1% ------------------------------------------------------------------------------------------- sidx->spoint [85] 100.0% [96] 51772(10.6%) 0(0.0%) binary-search-floats ...prods/src/common.rkt:236:0 pred [108] 100.0% ------------------------------------------------------------------------------------------- match-e [76] 30.9% for-loop [86] 69.1% [97] 33108(6.8%) 1732(0.4%) for-loop ...iff-of-prods/src/core/ematch.rkt:65:37 match-e [76] 90.7% ??? [116] 4.3% ------------------------------------------------------------------------------------------- apply-match [65] 8.5% merge-egraph-nodes! [87] 91.5% [98] 19256(3.9%) 3330(0.7%) update-leader! ...-prods/src/core/egraph.rkt:217:0 for-loop [111] 78.0% mutable-set [119] 3.1% make-sequence [114] 1.6% ------------------------------------------------------------------------------------------- match-e [76] 10.2% list-cartesian-product [99] 14.5% for-loop [86] 75.3% [99] 6072(1.2%) 4536(0.9%) list-cartesian-product ...src/core/ematch.rkt:20:0 for-loop [117] 20.8% list-cartesian-product [99] 14.5% ------------------------------------------------------------------------------------------- list-member? [89] 100.0% [100] 5006(1.0%) 5006(1.0%) loop (unknown source) ------------------------------------------------------------------------------------------- merge-egraph-nodes! [87] 100.0% [101] 4180(0.9%) 3226(0.7%) for-loop ...iff-of-prods/src/core/egraph.rkt:232:6 update-en-expr [150] 22.8% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [87] 100.0% [102] 3170(0.6%) 0(0.0%) for-loop ...ff-of-prods/src/core/egraph.rkt:200:10 merge-egraph-nodes! [87] 77.7% loop! [110] 22.3% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [87] 100.0% [103] 2662(0.5%) 300(0.1%) enode-merge! ...-of-prods/src/core/enode.rkt:129:0 adopt-enode! [115] 65.0% custom-set-intersect! [118] 23.7% ------------------------------------------------------------------------------------------- for-loop [112] 21.9% matcher [104] 27.0% for-loop [90] 51.0% [104] 2444(0.5%) 0(0.0%) matcher ...iff-of-prods/src/core/matcher.rkt:167:2 rewriter [78] 49.0% matcher [104] 27.0% for-loop [112] 21.9% variable? [196] 2.1% ------------------------------------------------------------------------------------------- for-loop [91] 100.0% [105] 1474(0.3%) 1474(0.3%) for-loop ...ff-of-prods/src/core/regimes.rkt:241:8 ------------------------------------------------------------------------------------------- copying-mergesort [106] 48.4% generic-sort/key [92] 51.6% [106] 1198(0.2%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [106] 48.4% loop [113] 44.0% jloop [15] 7.6% ------------------------------------------------------------------------------------------- list-member? [89] 100.0% [107] 260(0.1%) 260(0.1%) member (unknown source) ------------------------------------------------------------------------------------------- binary-search-floats [96] 40.8% binary-search [94] 59.2% [108] 126790(25.9%) 0(0.0%) pred .../diff-of-prods/src/core/regimes.rkt:132:17 loop [120] 97.6% errors [205] 2.4% ------------------------------------------------------------------------------------------- mk-enode! [95] 100.0% [109] 64146(13.1%) 540(0.1%) new-enode ...diff-of-prods/src/core/enode.rkt:97:0 type-of-enode-expr [121] 97.3% set [124] 1.3% ------------------------------------------------------------------------------------------- for-loop [102] 1.5% merge-egraph-nodes! [87] 14.4% loop [226] 27.0% for-loop [74] 57.2% [110] 36746(7.5%) 6520(1.3%) loop! ...ie/diff-of-prods/src/core/enode.rkt:192:2 custom-set-union [122] 41.8% loop [226] 32.3% set [124] 11.8% update-en-expr [150] 3.7% ------------------------------------------------------------------------------------------- update-leader! [98] 100.0% [111] 15014(3.1%) 898(0.2%) for-loop ...iff-of-prods/src/core/egraph.rkt:222:6 for-loop [123] 94.0% ------------------------------------------------------------------------------------------- matcher [104] 100.0% [112] 2170(0.4%) 0(0.0%) for-loop ...f-of-prods/src/core/matcher.rkt:183:21 matcher [104] 100.0% ------------------------------------------------------------------------------------------- generic-sort/key [92] 19.3% ??? [79] 39.8% copying-mergesort [106] 40.9% [113] 2040(0.4%) 0(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [208] 83.4% ??? [210] 16.6% ------------------------------------------------------------------------------------------- update-leader! [98] 17.1% reduce-to-single! [81] 35.0% for-loop [32] 47.9% [114] 1850(0.4%) 1554(0.3%) make-sequence ...ects/racket/private/for.rkt:509:2 ??? [125] 16.0% ------------------------------------------------------------------------------------------- enode-merge! [103] 100.0% [115] 1730(0.4%) 0(0.0%) adopt-enode! ...-of-prods/src/core/enode.rkt:105:0 custom-set-union [122] 100.0% ------------------------------------------------------------------------------------------- for-loop [29] 11.3% for-loop [97] 88.7% [116] 1610(0.3%) 1448(0.3%) ??? ...rbie/diff-of-prods/src/core/ematch.rkt:50:5 custom-in-set [266] 10.1% ------------------------------------------------------------------------------------------- list-cartesian-product [99] 100.0% [117] 1536(0.3%) 1536(0.3%) for-loop ...diff-of-prods/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------- enode-merge! [103] 100.0% [118] 632(0.1%) 632(0.1%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ------------------------------------------------------------------------------------------- update-leader! [98] 100.0% [119] 596(0.1%) 596(0.1%) mutable-set .../racket/private/set-types.rkt:999:0 ------------------------------------------------------------------------------------------- run-improve50 [35] 1.4% ??? [28] 5.9% pred [108] 92.7% [120] 133462(27.2%) 172(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:193:2 loop [126] 91.2% loop [135] 6.1% make-exacts* [137] 1.9% for-loop [131] 0.7% ------------------------------------------------------------------------------------------- new-enode [109] 100.0% [121] 62406(12.7%) 732(0.1%) type-of-enode-expr ...rods/src/core/enode.rkt:68:0 get-sigs [127] 98.8% ------------------------------------------------------------------------------------------- adopt-enode! [115] 9.4% loop! [110] 90.6% [122] 18322(3.7%) 7820(1.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [129] 50.4% for-loop [130] 6.9% ------------------------------------------------------------------------------------------- for-loop [111] 100.0% [123] 14116(2.9%) 0(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:223:8 hash-update! [128] 100.0% ------------------------------------------------------------------------------------------- new-enode [109] 9.0% loop! [110] 91.0% [124] 9624(2.0%) 9624(2.0%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------- make-sequence [114] 100.0% [125] 296(0.1%) 0(0.0%) ??? ...acket/collects/racket/private/for.rkt:429:7 custom-in-set [266] 100.0% ------------------------------------------------------------------------------------------- loop [120] 100.0% [126] 121676(24.8%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:151:2 eval-prog [140] 96.6% loop [135] 2.1% make-exacts* [137] 1.4% ------------------------------------------------------------------------------------------- type-of-enode-expr [121] 100.0% [127] 61674(12.6%) 1996(0.4%) get-sigs ...e/diff-of-prods/src/type-check.rkt:5:0 ??? [132] 35.8% ??? [218] 33.0% ...prods/src/common.rkt:47:2 [133] 15.3% ??? [198] 12.7% ------------------------------------------------------------------------------------------- for-loop [123] 100.0% [128] 14116(2.9%) 600(0.1%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [134] 95.7% ------------------------------------------------------------------------------------------- custom-set-union [122] 100.0% [129] 9240(1.9%) 4288(0.9%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [136] 53.6% ------------------------------------------------------------------------------------------- custom-set-union [122] 100.0% [130] 1262(0.3%) 1262(0.3%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------- loop [120] 100.0% [131] 978(0.2%) 0(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:200:24 for-loop [138] 81.6% ??? [139] 18.4% ------------------------------------------------------------------------------------------- ??? [210] 2.9% for-loop [43] 3.4% f6 [52] 9.5% get-sigs [127] 84.1% [132] 26236(5.4%) 1200(0.2%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [142] 56.1% for-loop [144] 28.8% get/build-late-neg-projection [172] 6.5% ??? [249] 1.5% ??? [147] 0.7% ------------------------------------------------------------------------------------------- f6 [52] 1.9% ??? [210] 3.6% for-loop [43] 33.6% get-sigs [127] 59.8% [133] 15784(3.2%) 6922(1.4%) ...prods/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [145] 33.6% ??? [146] 22.5% ------------------------------------------------------------------------------------------- hash-update! [128] 100.0% [134] 13516(2.8%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/egraph.rkt:225:24 for-loop [143] 100.0% ------------------------------------------------------------------------------------------- loop [126] 23.6% loop [120] 76.4% [135] 10608(2.2%) 468(0.1%) loop .../herbie/diff-of-prods/src/points.rkt:141:4 map [141] 95.6% ------------------------------------------------------------------------------------------- for-loop [129] 100.0% [136] 4952(1.0%) 4952(1.0%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------- loop [126] 39.4% loop [120] 60.6% [137] 4186(0.9%) 0(0.0%) make-exacts* ...diff-of-prods/src/points.rkt:138:0 map [141] 44.1% loop [226] 38.6% eval-prog [140] 17.4% ------------------------------------------------------------------------------------------- for-loop [131] 100.0% [138] 798(0.2%) 314(0.1%) for-loop ...ie/diff-of-prods/src/points.rkt:201:26 ??? [210] 60.7% ------------------------------------------------------------------------------------------- for-loop [131] 100.0% [139] 180(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ??? [238] 100.0% ------------------------------------------------------------------------------------------- point->alt [84] 0.1% make-exacts* [137] 0.6% errors [205] 4.0% loop [126] 95.3% [140] 123284(25.2%) 4652(0.9%) eval-prog .../diff-of-prods/src/programs.rkt:148:0 hash-ref! [212] 89.6% f6 [52] 5.4% ??? [210] 0.7% ??? [154] 0.2% go [156] 0.1% ??? [157] 0.1% ------------------------------------------------------------------------------------------- make-exacts* [137] 3.7% parse-loop12 [166] 5.7% loop [135] 20.3% f6 [52] 70.0% [141] 50068(10.2%) 816(0.2%) map ...acket/collects/racket/private/map.rkt:20:13 f6 [52] 30.7% parse-loop12 [166] 30.6% loop [226] 18.5% ??? [208] 5.6% simplify-node [149] 5.3% simplify* [171] 2.4% make-multiplication-node [175] 2.3% ??? [151] 2.3% loop [75] 0.6% taylor [152] 0.4% ------------------------------------------------------------------------------------------- ??? [132] 100.0% [142] 14718(3.0%) 1512(0.3%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [148] 89.7% ------------------------------------------------------------------------------------------- ??? [134] 100.0% [143] 13516(2.8%) 12002(2.4%) for-loop ...ff-of-prods/src/core/egraph.rkt:226:26 update-en-expr [150] 11.2% ------------------------------------------------------------------------------------------- for-loop [237] 24.5% ??? [132] 75.5% [144] 10000(2.0%) 2172(0.4%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [238] 78.3% ------------------------------------------------------------------------------------------- ...prods/src/common.rkt:47:2 [133] 100.0% [145] 5310(1.1%) 1254(0.3%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [229] 46.0% return/no-unsupplied [232] 22.0% assoc-ref [153] 8.4% ------------------------------------------------------------------------------------------- ??? [238] 20.7% ...prods/src/common.rkt:47:2 [133] 79.3% [146] 3552(0.7%) 1538(0.3%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [238] 55.5% ??? [263] 8.5% ??? [258] 5.0% ------------------------------------------------------------------------------------------- ??? [132] 100.0% [147] 184(0.0%) 0(0.0%) ??? ...private/unconstrained-domain-arrow.rkt:69:2 get-blame-party-info [155] 100.0% ------------------------------------------------------------------------------------------- ??? [142] 100.0% [148] 13206(2.7%) 302(0.1%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [158] 97.7% ------------------------------------------------------------------------------------------- simplify [30] 20.9% map [141] 79.1% [149] 6416(1.3%) 356(0.1%) simplify-node ...of-prods/src/core/reduce.rkt:50:0 append-map [159] 57.1% f6 [52] 37.3% ------------------------------------------------------------------------------------------- for-loop [101] 18.7% for-loop [143] 29.7% loop! [110] 51.7% [150] 5106(1.0%) 5106(1.0%) update-en-expr ...-prods/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------------------- loop [226] 45.4% map [141] 54.6% [151] 2028(0.4%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [212] 50.1% taylor-sqrt [160] 35.1% f6 [52] 14.8% ------------------------------------------------------------------------------------------- hash-ref! [212] 30.1% f6 [52] 34.1% map [141] 35.9% [152] 998(0.2%) 658(0.1%) taylor .../diff-of-prods/src/core/taylor.rkt:163:0 debug7 [161] 34.1% ------------------------------------------------------------------------------------------- ??? [145] 100.0% [153] 448(0.1%) 448(0.1%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------- eval-prog [140] 100.0% [154] 186(0.0%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [162] 100.0% ------------------------------------------------------------------------------------------- ??? [147] 100.0% [155] 184(0.0%) 0(0.0%) get-blame-party-info ...ate/arrow-common.rkt:136:0 show-blame-positive [163] 100.0% ------------------------------------------------------------------------------------------- eval-prog [140] 100.0% [156] 170(0.0%) 0(0.0%) go .../collects/racket/private/qq-and-or.rkt:50:20 loop [164] 100.0% ------------------------------------------------------------------------------------------- eval-prog [140] 100.0% [157] 122(0.0%) 0(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [165] 100.0% ------------------------------------------------------------------------------------------- ??? [148] 100.0% [158] 12904(2.6%) 420(0.1%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [167] 96.7% ------------------------------------------------------------------------------------------- parse-loop12 [166] 2.8% f6 [52] 44.7% simplify-node [149] 52.5% [159] 6304(1.3%) 672(0.1%) append-map ...acket/collects/racket/list.rkt:565:2 parse-loop12 [166] 56.0% f6 [52] 33.2% free-variables [194] 2.9% ------------------------------------------------------------------------------------------- f6 [52] 12.9% approximate9 [3] 37.7% ??? [151] 49.4% [160] 1442(0.3%) 0(0.0%) taylor-sqrt ...-of-prods/src/core/taylor.rkt:346:0 first-nonzero-exp [168] 50.6% simplify [30] 24.7% hash-ref! [212] 24.7% ------------------------------------------------------------------------------------------- simplify [30] 26.1% iterate-egraph!13 [2] 26.3% taylor [152] 47.6% [161] 714(0.1%) 340(0.1%) debug7 ...herbie/diff-of-prods/src/debug.rkt:102:0 ??? [198] 26.3% ??? [229] 26.1% ------------------------------------------------------------------------------------------- ??? [154] 100.0% [162] 186(0.0%) 0(0.0%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [169] 100.0% ------------------------------------------------------------------------------------------- get-blame-party-info [155] 100.0% [163] 184(0.0%) 184(0.0%) show-blame-positive ...act/private/blame.rkt:150:0 ------------------------------------------------------------------------------------------- go [156] 100.0% [164] 170(0.0%) 170(0.0%) loop ...llects/racket/private/qq-and-or.rkt:101:61 ------------------------------------------------------------------------------------------- ??? [157] 100.0% [165] 122(0.0%) 122(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ------------------------------------------------------------------------------------------- f6 [52] 1.5% hash-ref! [212] 2.6% for-loop [26] 2.8% loop [226] 3.2% append-map [159] 9.1% simplify [30] 19.0% parse-loop12 [166] 20.0% map [141] 41.7% [166] 38756(7.9%) 17612(3.6%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 f6 [52] 20.9% parse-loop12 [166] 20.0% loop [226] 11.3% map [141] 5.7% for-loop [173] 4.0% make-multiplication-node [175] 3.7% parse-app [265] 3.2% simplify* [171] 2.6% simplify [30] 0.9% ??? [174] 0.4% loop [75] 0.2% append-map [159] 0.2% ------------------------------------------------------------------------------------------- ??? [158] 100.0% [167] 12484(2.5%) 3242(0.7%) for-loop ...racket/contract/private/list.rkt:680:9 add-list-context [170] 52.1% get/build-late-neg-projection [172] 21.9% ------------------------------------------------------------------------------------------- taylor-quotient [14] 44.9% taylor-sqrt [160] 55.1% [168] 1324(0.3%) 0(0.0%) first-nonzero-exp ...ods/src/core/taylor.rkt:260:0 hash-ref! [212] 100.0% ------------------------------------------------------------------------------------------- unpack245 [162] 100.0% [169] 186(0.0%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [245]100.0% ------------------------------------------------------------------------------------------- for-loop [167] 100.0% [170] 6508(1.3%) 6508(1.3%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------------------- simplify [30] 10.6% parse-loop12 [166] 21.7% map [141] 67.8% [171] 6482(1.3%) 3522(0.7%) simplify* ...iff-of-prods/src/core/reduce.rkt:31:0 hash-ref! [212] 27.1% ??? [178] 18.6% ------------------------------------------------------------------------------------------- unconstrained-domain->-projection [181] 2.0% listof-late-neg-projection [179] 2.7% ??? [177] 13.8% ??? [132] 20.1% for-loop [167] 61.4% [172] 4452(0.9%) 946(0.2%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [176] 61.3% ??? [177] 18.0% listof-late-neg-projection [179] 2.7% unconstrained-domain->-projection [181] 2.0% ------------------------------------------------------------------------------------------- parse-loop12 [166] 100.0% [173] 2894(0.6%) 326(0.1%) for-loop ...iff-of-prods/src/core/reduce.rkt:99:13 make-multiplication-node [175] 88.7% ------------------------------------------------------------------------------------------- parse-loop12 [166] 100.0% [174] 336(0.1%) 0(0.0%) ??? ...rbie/diff-of-prods/src/core/reduce.rkt:61:5 for-loop [180] 100.0% ------------------------------------------------------------------------------------------- parse-loop12 [166] 26.4% for-loop [173] 32.7% map [141] 40.9% [175] 7844(1.6%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [182] 100.0% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [172] 100.0% [176] 3318(0.7%) 700(0.1%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [183] 78.9% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [172] 100.0% [177] 1536(0.3%) 188(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 get/build-late-neg-projection [172] 87.8% ------------------------------------------------------------------------------------------- simplify* [171] 100.0% [178] 1206(0.2%) 184(0.0%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [240] 84.7% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [172] 100.0% [179] 354(0.1%) 0(0.0%) listof-late-neg-projection ...ivate/list.rkt:162:0 get/build-late-neg-projection [172] 100.0% ------------------------------------------------------------------------------------------- ??? [174] 100.0% [180] 336(0.1%) 0(0.0%) for-loop ...diff-of-prods/src/core/reduce.rkt:62:7 pattern-match [184] 100.0% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [172] 100.0% [181] 182(0.0%) 0(0.0%) unconstrained-domain->-projection ...rrow.rkt:60:0 get/build-late-neg-projection [172] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-node [175] 100.0% [182] 7844(1.6%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [185] 66.4% group-by68 [186] 25.2% compose [255] 8.4% ------------------------------------------------------------------------------------------- contract-struct-name [187] 16.1% ??? [176] 83.9% [183] 2618(0.5%) 1416(0.3%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [187] 56.2% ------------------------------------------------------------------------------------------- for-loop [188] 50.0% for-loop [180] 50.0% [184] 336(0.1%) 0(0.0%) pattern-match ...f-prods/src/core/matcher.rkt:48:0 for-loop [188] 50.0% ??? [198] 50.0% ------------------------------------------------------------------------------------------- make-multiplication-subnode [182] 100.0% [185] 5208(1.1%) 496(0.1%) for-loop ...iff-of-prods/src/core/reduce.rkt:242:3 make-multiplication-subsubsubnode [189] 58.5% mterm->expr [192] 25.1% partition [190] 6.9% ------------------------------------------------------------------------------------------- make-multiplication-subnode [182] 100.0% [186] 1980(0.4%) 1626(0.3%) group-by68 ...acket/collects/racket/list.rkt:749:0 hash-update [191] 17.9% ------------------------------------------------------------------------------------------- build-compound-type-name [183] 100.0% [187] 1742(0.4%) 1202(0.2%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [183] 39.7% ------------------------------------------------------------------------------------------- pattern-match [184] 100.0% [188] 336(0.1%) 0(0.0%) for-loop ...iff-of-prods/src/core/matcher.rkt:66:9 pattern-match [184] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-subsubsubnode [189] 5.6% for-loop [185] 94.4% [189] 3048(0.6%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [192] 94.4% make-multiplication-subsubsubnode [189] 5.6% ------------------------------------------------------------------------------------------- for-loop [185] 100.0% [190] 358(0.1%) 358(0.1%) partition ...racket/collects/racket/list.rkt:547:0 ------------------------------------------------------------------------------------------- group-by68 [186] 100.0% [191] 354(0.1%) 354(0.1%) hash-update ...cket/private/more-scheme.rkt:356:13 ------------------------------------------------------------------------------------------- for-loop [185] 30.0% make-multiplication-subsubsubnode [189] 70.0% [192] 4354(0.9%) 690(0.1%) mterm->expr ...-of-prods/src/core/reduce.rkt:270:0 f6 [52] 41.6% free-variables [194] 24.5% expression->type [193] 11.2% type-of [195] 6.8% ------------------------------------------------------------------------------------------- mterm->expr [192] 14.3% f6 [52] 15.8% loop [61] 27.2% for-loop [197] 42.7% [193] 3394(0.7%) 356(0.1%) expression->type ...-prods/src/type-check.rkt:45:0 for-loop [197] 84.2% ??? [198] 5.3% ------------------------------------------------------------------------------------------- append-map [159] 32.6% mterm->expr [192] 67.4% [194] 1584(0.3%) 684(0.1%) free-variables ...-of-prods/src/programs.rkt:100:0 variable? [196] 56.8% ------------------------------------------------------------------------------------------- mterm->expr [192] 100.0% [195] 298(0.1%) 298(0.1%) type-of ...e/diff-of-prods/src/type-check.rkt:38:0 ------------------------------------------------------------------------------------------- matcher [104] 3.4% free-variables [194] 8.6% substitute-e [88] 20.6% match-e [76] 67.3% [196] 10420(2.1%) 302(0.1%) variable? ...-of-prods/src/syntax/syntax.rkt:567:0 ??? [198] 97.1% ------------------------------------------------------------------------------------------- expression->type [193] 100.0% [197] 2858(0.6%) 0(0.0%) for-loop .../diff-of-prods/src/type-check.rkt:52:5 expression->type [193] 50.7% f6 [52] 49.3% ------------------------------------------------------------------------------------------- expression->type [193] 0.4% debug7 [161] 0.4% f6 [52] 0.6% pattern-match [184] 0.8% substitute-e [88] 2.2% ??? [263] 5.0% get-sigs [127] 18.2% match-e [76] 19.7% variable? [196] 23.5% finalize-iter! [54] 25.9% [198] 43038(8.8%) 16340(3.3%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [199] 33.0% for-loop [200] 25.5% ??? [263] 1.5% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [199] 14636(3.0%) 3768(0.8%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [228] 69.8% ??? [202] 4.5% ------------------------------------------------------------------------------------------- ??? [198] 100.0% [200] 11528(2.4%) 0(0.0%) for-loop ...f-of-prods/src/core/alt-table.rkt:51:2 atab-add-altn [201] 100.0% ------------------------------------------------------------------------------------------- for-loop [200] 98.5% [201] 11700(2.4%) 0(0.0%) atab-add-altn ...rods/src/core/alt-table.rkt:208:0 best-and-tied-at-points [203] 91.4% override-at-pnts [204] 8.6% ------------------------------------------------------------------------------------------- hash-has-key? [199] 100.0% [202] 652(0.1%) 652(0.1%) ??? ...ects/racket/contract/private/hash.rkt:245:7 ------------------------------------------------------------------------------------------- atab-add-altn [201] 100.0% [203] 10690(2.2%) 296(0.1%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [205] 93.9% for-loop [206] 3.4% ------------------------------------------------------------------------------------------- atab-add-altn [201] 100.0% [204] 1010(0.2%) 0(0.0%) override-at-pnts ...s/src/core/alt-table.rkt:145:0 errors [205] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [58] 2.9% composed [231] 4.5% override-at-pnts [204] 5.8% loop [226] 11.2% pred [108] 17.8% best-and-tied-at-points [203] 57.8% [205] 17360(3.5%) 0(0.0%) errors ...erbie/diff-of-prods/src/points.rkt:218:0 for-loop [207] 71.6% eval-prog [140] 28.4% ------------------------------------------------------------------------------------------- best-and-tied-at-points [203] 100.0% [206] 360(0.1%) 0(0.0%) for-loop ...of-prods/src/core/alt-table.rkt:124:16 ??? [209] 100.0% ------------------------------------------------------------------------------------------- errors [205] 100.0% [207] 12426(2.5%) 1242(0.3%) for-loop ...bie/diff-of-prods/src/points.rkt:221:4 ??? [208] 81.2% ??? [210] 6.9% ??? [209] 0.9% ------------------------------------------------------------------------------------------- ??? [93] 1.2% jloop [15] 1.4% loop [113] 6.6% map [141] 11.0% for-loop [207] 39.2% loop [226] 40.5% [208] 25720(5.2%) 1578(0.3%) ??? ...herbie/diff-of-prods/src/programs.rkt:154:4 ??? [211] 69.0% ??? [210] 12.3% ??? [213] 11.8% ??? [257] 0.8% ------------------------------------------------------------------------------------------- for-loop [207] 23.1% for-loop [206] 76.9% [209] 468(0.1%) 468(0.1%) ??? ...ket/collects/racket/private/for.rkt:1151:14 ------------------------------------------------------------------------------------------- all-critical-subexpressions [83] 0.3% loop [226] 0.4% loop [113] 0.5% loop [75] 0.6% for-loop [138] 0.7% for-loop [207] 1.1% eval-prog [140] 1.2% ??? [208] 4.6% f6 [52] 9.4% ??? [9] 9.9% loop [18] 15.6% ??? [218] 27.2% for-loop [77] 27.2% [210] 68458(14.0%) 2002(0.4%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [218] 36.6% approximate9 [3] 27.2% hash-ref! [212] 25.5% ??? [263] 3.6% ??? [132] 1.1% best-alt [217] 1.0% ...prods/src/common.rkt:47:2 [133] 0.8% ??? [213] 0.5% ------------------------------------------------------------------------------------------- ??? [208] 100.0% [211] 17746(3.6%) 8514(1.7%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [221] 25.3% ??? [214] 11.3% bf* [215] 8.9% ??? [216] 5.9% ??? [252] 0.6% ------------------------------------------------------------------------------------------- ??? [12] 0.0% for-loop [27] 0.1% taylor-sqrt [160] 0.1% simplify* [171] 0.2% ??? [4] 0.3% first-nonzero-exp [168] 0.4% ??? [151] 0.4% ??? [9] 0.4% ??? [220] 0.6% compile [49] 0.7% for-loop [33] 1.0% for-loop [21] 2.1% for-loop [19] 2.3% loop [18] 2.4% ??? [210] 4.8% for-loop [20] 6.2% ??? [31] 11.3% eval-prog [140] 28.5% loop [226] 37.5% [212] 167526(34.2%) 4590(0.9%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [220] 38.2% bigfloat-hash [219] 28.3% ??? [5] 10.9% ??? [6] 6.2% ??? [4] 4.1% simplify [30] 3.8% ??? [9] 2.8% ??? [7] 2.1% ??? [10] 1.0% f6 [52] 0.7% parse-loop12 [166] 0.5% ??? [12] 0.1% taylor [152] 0.1% ??? [13] 0.0% ------------------------------------------------------------------------------------------- ??? [210] 10.6% ??? [208] 89.4% [213] 3386(0.7%) 356(0.1%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [222] 86.1% integer->bigfloat [224] 3.4% ------------------------------------------------------------------------------------------- ??? [211] 100.0% [214] 2008(0.4%) 2008(0.4%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------- ??? [211] 100.0% [215] 1586(0.3%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [221] 100.0% ------------------------------------------------------------------------------------------- ??? [211] 100.0% [216] 1048(0.2%) 480(0.1%) ??? .../diff-of-prods/src/syntax/syntax.rkt:122:17 ??? [229] 54.2% ------------------------------------------------------------------------------------------- ??? [210] 100.0% [217] 786(0.2%) 0(0.0%) best-alt ...herbie/diff-of-prods/src/glue.rkt:71:0 loop [223] 100.0% ------------------------------------------------------------------------------------------- simplify-alt [50] 0.1% f6 [52] 0.2% for-loop [43] 1.7% get-sigs [127] 2.0% ??? [218] 9.9% ??? [210] 13.7% for-loop [225] 33.6% ??? [28] 38.2% [218] 332518(67.8%) 11778(2.4%) ??? ...llects/racket/private/norm-define.rkt:53:83 iterate-egraph!13 [2] 35.0% for-loop [225] 33.6% ??? [210] 11.7% ??? [218] 9.9% loop [8] 3.7% ??? [228] 3.4% ??? [229] 0.6% return/no-unsupplied [232] 0.2% mk-egraph [235] 0.1% ??? [236] 0.0% ??? [238] 0.0% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [219] 109708(22.4%) 294(0.1%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [227] 98.3% sig+exp->bigfloat [234] 1.1% bigfloat->sig+exp [243] 0.1% ------------------------------------------------------------------------------------------- hash-ref! [212] 100.0% [220] 98108(20.0%) 480(0.1%) ??? ...herbie/diff-of-prods/src/programs.rkt:183:5 loop [226] 98.3% hash-ref! [212] 1.5% ------------------------------------------------------------------------------------------- bf* [215] 26.1% ??? [211] 73.9% [221] 6072(1.2%) 712(0.1%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfsub [230] 62.4% bfsqrt [233] 25.9% ------------------------------------------------------------------------------------------- ??? [213] 100.0% [222] 2916(0.6%) 1844(0.4%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [241] 36.8% ------------------------------------------------------------------------------------------- best-alt [217] 100.0% [223] 786(0.2%) 0(0.0%) loop .../herbie/diff-of-prods/src/common.rkt:146:2 composed [231] 100.0% ------------------------------------------------------------------------------------------- ??? [213] 100.0% [224] 114(0.0%) 114(0.0%) integer->bigfloat ...ivate/bigfloat/mpfr.rkt:399:0 ------------------------------------------------------------------------------------------- ??? [218] 100.0% [225] 233604(47.7%) 0(0.0%) for-loop ...f-of-prods/src/core/simplify.rkt:63:12 ??? [218] 100.0% ------------------------------------------------------------------------------------------- make-exacts* [137] 0.0% option-on-expr [58] 0.3% for-loop [86] 0.6% map-enodes [24] 0.8% map [141] 1.0% match-e [76] 1.4% loop! [110] 2.7% parse-loop12 [166] 4.1% loop [226] 26.8% f6 [52] 27.9% ??? [220] 34.4% [226] 179780(36.7%) 4542(0.9%) loop ...cket/collects/racket/private/map.rkt:25:19 hash-ref! [212] 34.3% option-on-expr [58] 27.9% loop [226] 26.8% loop! [110] 2.5% parse-loop12 [166] 2.3% f6 [52] 1.8% for-loop [239] 0.8% foldl [242] 0.7% ??? [208] 0.6% ??? [151] 0.4% errors [205] 0.3% ??? [210] 0.0% ------------------------------------------------------------------------------------------- bigfloat-hash [219] 100.0% [227] 107796(22.0%) 106592(21.7%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [243] 1.1% ------------------------------------------------------------------------------------------- hash-has-key? [199] 26.7% ??? [218] 73.3% [228] 38260(7.8%) 11650(2.4%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [237] 52.5% ??? [249] 10.4% ??? [238] 4.0% successfully-got-the-right-kind-of-function [245] 1.3% arrow-higher-order:lnp [248] 0.8% ------------------------------------------------------------------------------------------- debug7 [161] 2.5% flag-set? [40] 4.8% ??? [216] 7.6% ??? [145] 32.8% ??? [218] 52.2% [229] 7440(1.5%) 3172(0.6%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [240] 41.2% ??? [263] 16.2% ------------------------------------------------------------------------------------------- ??? [221] 100.0% [230] 3786(0.8%) 2458(0.5%) bfsub ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [241] 35.1% ------------------------------------------------------------------------------------------- loop [223] 39.0% f6 [52] 61.0% [231] 2014(0.4%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 f6 [52] 61.0% errors [205] 39.0% ------------------------------------------------------------------------------------------- ??? [218] 39.5% ??? [145] 60.5% [232] 1928(0.4%) 1092(0.2%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [244] 43.4% ------------------------------------------------------------------------------------------- ??? [221] 100.0% [233] 1574(0.3%) 262(0.1%) bfsqrt ...lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [241] 83.4% ------------------------------------------------------------------------------------------- bigfloat-hash [219] 100.0% [234] 1226(0.3%) 534(0.1%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [247] 43.2% ??? [241] 13.2% ------------------------------------------------------------------------------------------- ??? [218] 100.0% [235] 594(0.1%) 0(0.0%) mk-egraph ...ff-of-prods/src/core/egraph.rkt:123:0 expr->enode [246] 100.0% ------------------------------------------------------------------------------------------- ??? [218] 100.0% [236] 136(0.0%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [241] 100.0% ------------------------------------------------------------------------------------------- ??? [228] 100.0% [237] 20096(4.1%) 12600(2.6%) for-loop ...acket/contract/private/list.rkt:743:12 ??? [249] 24.3% for-loop [144] 12.2% ??? [258] 0.8% ------------------------------------------------------------------------------------------- ??? [139] 1.4% ??? [218] 2.2% ??? [228] 12.3% ??? [146] 21.6% for-loop [144] 62.5% [238] 12534(2.6%) 2362(0.5%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [250] 57.6% ??? [146] 11.7% ??? [252] 10.3% ------------------------------------------------------------------------------------------- map-enodes [24] 6.8% loop [226] 93.2% [239] 4466(0.9%) 488(0.1%) for-loop ...f-of-prods/src/core/simplify.rkt:173:2 eval-const-expr [251] 51.2% setfindf [254] 25.7% compose [255] 6.8% ??? [257] 5.4% ------------------------------------------------------------------------------------------- ??? [178] 25.0% ??? [229] 75.0% [240] 4088(0.8%) 3794(0.8%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ??? [261] 7.2% ------------------------------------------------------------------------------------------- ??? [236] 3.4% sig+exp->bigfloat [234] 4.0% real->bigfloat [222] 26.7% bfsqrt [233] 32.7% bfsub [230] 33.1% [241] 4010(0.8%) 4010(0.8%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------------------- loop [226] 100.0% [242] 1474(0.3%) 300(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [253] 79.6% ------------------------------------------------------------------------------------------- bigfloat-hash [219] 8.9% bfcanonicalize [227] 91.1% [243] 1322(0.3%) 394(0.1%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 size+limbs->integer [256] 61.3% new-mpz [262] 8.9% ------------------------------------------------------------------------------------------- return/no-unsupplied [232] 100.0% [244] 836(0.2%) 836(0.2%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------- maybe-cons-kwd [169] 27.4% ??? [228] 72.6% [245] 678(0.1%) 360(0.1%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [260] 46.9% ------------------------------------------------------------------------------------------- mk-egraph [235] 41.2% expr->enode [246] 58.8% [246] 594(0.1%) 0(0.0%) expr->enode ...-of-prods/src/core/egraph.rkt:124:2 expr->enode [246] 58.8% mk-enode! [95] 41.2% ------------------------------------------------------------------------------------------- sig+exp->bigfloat [234] 100.0% [247] 530(0.1%) 530(0.1%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ------------------------------------------------------------------------------------------- ??? [228] 100.0% [248] 324(0.1%) 0(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [259] 100.0% ------------------------------------------------------------------------------------------- ??? [132] 4.3% ??? [228] 43.0% for-loop [237] 52.7% [249] 9276(1.9%) 4836(1.0%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [264] 47.9% ------------------------------------------------------------------------------------------- ??? [238] 100.0% [250] 7220(1.5%) 486(0.1%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [263] 93.3% ------------------------------------------------------------------------------------------- for-loop [239] 100.0% [251] 2286(0.5%) 548(0.1%) eval-const-expr ...of-prods/src/programs.rkt:166:0 f6 [52] 49.5% parse-app [265] 16.5% ...higher-order.rkt:346:33 [270] 10.0% ------------------------------------------------------------------------------------------- ??? [211] 7.4% ??? [238] 92.6% [252] 1400(0.3%) 1400(0.3%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ------------------------------------------------------------------------------------------- foldl [242] 100.0% [253] 1174(0.2%) 1174(0.2%) merge2 ...e/diff-of-prods/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------------------- for-loop [239] 100.0% [254] 1148(0.2%) 548(0.1%) setfindf ...bie/diff-of-prods/src/common.rkt:179:0 for-loop [269] 26.1% custom-in-set [266] 26.1% ------------------------------------------------------------------------------------------- for-loop [239] 31.5% make-multiplication-subnode [182] 68.5% [255] 958(0.2%) 958(0.2%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------- bigfloat->sig+exp [243] 100.0% [256] 810(0.2%) 810(0.2%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 ------------------------------------------------------------------------------------------- ??? [208] 45.0% for-loop [239] 55.0% [257] 440(0.1%) 440(0.1%) ??? ...tract/private/arrow-higher-order.rkt:145:21 ------------------------------------------------------------------------------------------- for-loop [237] 47.0% ??? [146] 53.0% [258] 332(0.1%) 0(0.0%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [267] 100.0% ------------------------------------------------------------------------------------------- arrow-higher-order:lnp [248] 100.0% [259] 324(0.1%) 324(0.1%) ??? ...et/contract/private/arity-checking.rkt:19:2 ------------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [245]100.0% [260] 318(0.1%) 0(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [268] 100.0% ------------------------------------------------------------------------------------------- ??? [240] 100.0% [261] 294(0.1%) 294(0.1%) ??? ...ects/racket/contract/private/prop.rkt:256:4 ------------------------------------------------------------------------------------------- bigfloat->sig+exp [243] 100.0% [262] 118(0.0%) 118(0.0%) new-mpz ...-lib/math/private/bigfloat/gmp.rkt:73:0 ------------------------------------------------------------------------------------------- ??? [63] 4.8% ??? [146] 4.9% ??? [198] 5.3% ??? [229] 9.8% ??? [210] 20.2% ??? [250] 55.0% [263] 12242(2.5%) 7858(1.6%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [198] 22.0% dict? [271] 8.9% contract? [273] 4.9% ------------------------------------------------------------------------------------------- ??? [249] 100.0% [264] 4440(0.9%) 4440(0.9%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------- eval-const-expr [251] 9.8% f6 [52] 36.5% parse-loop12 [166] 53.7% [265] 3844(0.8%) 3108(0.6%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [272] 19.1% ------------------------------------------------------------------------------------------- ??? [116] 11.1% ??? [125] 20.3% setfindf [254] 20.6% match-e [76] 47.9% [266] 1456(0.3%) 1456(0.3%) custom-in-set ...acket/private/set-types.rkt:577:0 ------------------------------------------------------------------------------------------- ??? [258] 100.0% [267] 332(0.1%) 176(0.0%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [274] 47.0% ------------------------------------------------------------------------------------------- arity-checking-wrapper [260] 100.0% [268] 318(0.1%) 318(0.1%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ------------------------------------------------------------------------------------------- setfindf [254] 100.0% [269] 300(0.1%) 300(0.1%) for-loop ...bie/diff-of-prods/src/common.rkt:180:2 ------------------------------------------------------------------------------------------- eval-const-expr [251] 100.0% [270] 228(0.0%) 228(0.0%) ...higher-order.rkt:346:33 (unknown source) ------------------------------------------------------------------------------------------- ??? [263] 100.0% [271] 1084(0.2%) 1084(0.2%) dict? ...ollects/racket/private/generic.rkt:146:11 ------------------------------------------------------------------------------------------- parse-app [265] 100.0% [272] 736(0.2%) 736(0.2%) loop .../collects/racket/private/stxcase.rkt:112:7 ------------------------------------------------------------------------------------------- ??? [263] 100.0% [273] 602(0.1%) 602(0.1%) contract? ...acket/contract/private/guts.rkt:109:0 ------------------------------------------------------------------------------------------- check-hash/c [267] 100.0% [274] 156(0.0%) 156(0.0%) flat-contract? .../contract/private/guts.rkt:111:0 -------------------------------------------------------------------------------------------