Profiling results ----------------- Total cpu time observed: 968696ms (out of 975220ms) Number of samples taken: 2774 (once every 349ms) (Hiding functions with self<1.0% and local<2.0%: 16 of 283 hidden) =========================================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee =========================================================================================== ??? [34] 100.0% [1] 902358(93.2%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [17] 100.0% ------------------------------------------------------------------------------------------- f6 [89] 8.8% loop [165] 91.2% [2] 584348(60.3%) 0(0.0%) option-on-expr ...prods/src/core/regimes.rkt:103:0 sindices->spoints [18] 95.8% loop [165] 1.4% sort-context-on-expr [26] 1.2% err-lsts->split-indices [29] 0.7% errors [136] 0.7% pick-errors [31] 0.2% ------------------------------------------------------------------------------------------- ??? [222] 100.0% [3] 238062(24.6%) 0(0.0%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [19] 98.2% map-enodes [28] 1.8% ------------------------------------------------------------------------------------------- ??? [185] 100.0% [4] 33822(3.5%) 0(0.0%) approximate9 ...-of-prods/src/core/taylor.rkt:12:0 loop [20] 95.1% taylor-sqrt [32] 2.1% f6 [89] 1.8% taylor [98] 1.1% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [5] 29494(3.0%) 0(0.0%) ??? ...bie/diff-of-prods/src/core/taylor.rkt:44:15 ??? [37] 95.3% simplify [153] 2.4% hash-ref! [134] 2.2% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [6] 26952(2.8%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:285:26 for-loop [21] 100.0% ------------------------------------------------------------------------------------------- ??? [222] 100.0% [7] 25566(2.6%) 0(0.0%) loop .../diff-of-prods/src/core/simplify.rkt:215:2 pass [22] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [8] 24986(2.6%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:295:23 for-loop [23] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [9] 22176(2.3%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:322:33 for-loop [24] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [10] 12194(1.3%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:392:23 for-loop [25] 100.0% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [11] 1742(0.2%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:483:23 for-loop [30] 100.0% ------------------------------------------------------------------------------------------- copying-mergesort [59] 100.0% [12] 1008(0.1%) 0(0.0%) jloop ...t/collects/racket/private/sort.rkt:121:23 ??? [174] 64.5% ??? [185] 35.5% ------------------------------------------------------------------------------------------- append-map [118] 100.0% [13] 988(0.1%) 0(0.0%) free-variables ...-of-prods/src/programs.rkt:100:0 ??? [96] 66.0% variable? [27] 34.0% ------------------------------------------------------------------------------------------- f6 [89] 100.0% [14] 716(0.1%) 0(0.0%) taylor-exp ...f-of-prods/src/core/taylor.rkt:386:0 simplify [153] 100.0% ------------------------------------------------------------------------------------------- f6 [89] 100.0% [15] 654(0.1%) 0(0.0%) taylor-invert ...f-prods/src/core/taylor.rkt:312:0 simplify [153] 50.2% first-nonzero-exp [43] 49.8% ------------------------------------------------------------------------------------------- f6 [89] 100.0% [16] 368(0.0%) 0(0.0%) combine-mterms ...-prods/src/core/reduce.rkt:191:0 for-loop [33] 100.0% ------------------------------------------------------------------------------------------- profile-thunk16 [1] 100.0% [17] 902658(93.2%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [34] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [2] 100.0% [18] 560086(57.8%) 0(0.0%) sindices->spoints ...ds/src/core/regimes.rkt:116:0 loop [35] 99.9% eval-prog [86] 0.1% ------------------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [19] 233694(24.1%) 2724(0.3%) one-iter ...f-of-prods/src/core/simplify.rkt:113:0 loop [94] 65.2% for-loop [36] 28.6% apply-match [102] 4.7% hash-keys [44] 0.2% loop [148] 0.1% ------------------------------------------------------------------------------------------- approximate9 [4] 100.0% [20] 32160(3.3%) 0(0.0%) loop ...bie/diff-of-prods/src/core/taylor.rkt:86:4 ??? [185] 61.8% hash-ref! [134] 38.2% ------------------------------------------------------------------------------------------- ??? [6] 100.0% [21] 26952(2.8%) 300(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:285:52 ??? [37] 59.5% hash-ref! [134] 38.2% simplify [153] 1.2% ------------------------------------------------------------------------------------------- loop [7] 100.0% [22] 25566(2.6%) 652(0.1%) pass .../diff-of-prods/src/core/simplify.rkt:205:2 for-loop [38] 97.4% ------------------------------------------------------------------------------------------- ??? [8] 100.0% [23] 24986(2.6%) 334(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:298:27 hash-ref! [134] 99.7% ------------------------------------------------------------------------------------------- ??? [9] 100.0% [24] 22176(2.3%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:324:46 hash-ref! [134] 100.0% ------------------------------------------------------------------------------------------- ??? [10] 100.0% [25] 12194(1.3%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:396:33 for-loop [39] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [2] 100.0% [26] 6868(0.7%) 0(0.0%) sort-context-on-expr ...prods/src/points.rkt:115:0 ??? [40] 94.8% eval-prog [86] 5.2% ------------------------------------------------------------------------------------------- free-variables [13] 6.0% substitute-e [125] 30.8% match-e [115] 63.2% [27] 5616(0.6%) 0(0.0%) variable? ...-of-prods/src/syntax/syntax.rkt:567:0 ??? [96] 100.0% ------------------------------------------------------------------------------------------- iterate-egraph!13 [3] 100.0% [28] 4368(0.5%) 0(0.0%) map-enodes ...f-of-prods/src/core/egraph.rkt:139:0 loop [165] 77.2% for-loop [180] 22.8% ------------------------------------------------------------------------------------------- option-on-expr [2] 100.0% [29] 3994(0.4%) 0(0.0%) err-lsts->split-indices .../core/regimes.rkt:222:0 add-splitpoint [41] 100.0% ------------------------------------------------------------------------------------------- ??? [11] 100.0% [30] 1742(0.2%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:487:35 parse-loop12 [177] 100.0% ------------------------------------------------------------------------------------------- option-on-expr [2] 100.0% [31] 1374(0.1%) 0(0.0%) pick-errors ...of-prods/src/core/regimes.rkt:184:0 for-loop [42] 100.0% ------------------------------------------------------------------------------------------- map [95] 29.9% approximate9 [4] 70.1% [32] 1004(0.1%) 0(0.0%) taylor-sqrt ...-of-prods/src/core/taylor.rkt:346:0 hash-ref! [134] 36.7% simplify [153] 33.5% first-nonzero-exp [43] 29.9% ------------------------------------------------------------------------------------------- combine-mterms [16] 100.0% [33] 368(0.0%) 0(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:195:5 hash-ref! [134] 100.0% ------------------------------------------------------------------------------------------- for-loop [77] 7.6% run [17] 43.8% [34] 949124(98.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 43.7% run-improve50 [45] 41.9% ??? [222] 12.2% loop [70] 2.1% ------------------------------------------------------------------------------------------- map [95] 0.0% loop [35] 19.9% sindices->spoints [18] 80.1% [35] 560092(57.8%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:36:19 sidx->spoint [46] 80.1% loop [35] 19.9% ------------------------------------------------------------------------------------------- for-loop [36] 48.7% one-iter [19] 51.3% [36] 66774(6.9%) 13264(1.4%) for-loop ...-of-prods/src/core/simplify.rkt:123:12 for-loop [36] 48.7% match-e [115] 40.1% ------------------------------------------------------------------------------------------- ??? [5] 43.1% for-loop [21] 56.9% [37] 28120(2.9%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/taylor.rkt:288:19 hash-ref! [134] 100.0% ------------------------------------------------------------------------------------------- pass [22] 100.0% [38] 24914(2.6%) 360(0.0%) for-loop ...-of-prods/src/core/simplify.rkt:208:29 argmin [47] 71.0% loop [49] 20.7% for-loop [52] 6.9% ------------------------------------------------------------------------------------------- for-loop [25] 100.0% [39] 12194(1.3%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:398:39 hash-ref! [134] 100.0% ------------------------------------------------------------------------------------------- sort-context-on-expr [26] 100.0% [40] 6508(0.7%) 0(0.0%) ??? ...cket/collects/racket/private/sort.rkt:403:3 generic-sort/key [48] 79.3% loop [66] 20.7% ------------------------------------------------------------------------------------------- err-lsts->split-indices [29] 100.0% [41] 3994(0.4%) 0(0.0%) add-splitpoint ...prods/src/core/regimes.rkt:235:2 for-loop [50] 100.0% ------------------------------------------------------------------------------------------- pick-errors [31] 100.0% [42] 1374(0.1%) 0(0.0%) for-loop ...ff-of-prods/src/core/regimes.rkt:186:2 ??? [51] 100.0% ------------------------------------------------------------------------------------------- taylor-sqrt [32] 47.9% taylor-invert [15] 52.1% [43] 626(0.1%) 0(0.0%) first-nonzero-exp ...ods/src/core/taylor.rkt:260:0 hash-ref! [134] 100.0% ------------------------------------------------------------------------------------------- one-iter [19] 100.0% [44] 366(0.0%) 0(0.0%) hash-keys .../collects/racket/private/hash.rkt:2:2 loop [53] 100.0% ------------------------------------------------------------------------------------------- ??? [34] 100.0% [45] 865024(89.3%) 0(0.0%) run-improve50 ...f-of-prods/src/mainloop.rkt:234:0 get-final-combination [54] 67.7% for-loop [56] 31.7% loop [70] 0.5% setup-alt-simplified [62] 0.1% ??? [96] 0.0% ------------------------------------------------------------------------------------------- loop [35] 100.0% [46] 559730(57.8%) 0(0.0%) sidx->spoint ...f-prods/src/core/regimes.rkt:126:2 binary-search [55] 76.7% binary-search-floats [57] 23.2% debug-print [171] 0.1% ------------------------------------------------------------------------------------------- for-loop [38] 100.0% [47] 17686(1.8%) 0(0.0%) argmin ...re/racket/collects/racket/list.rkt:743:0 for-loop [58] 90.4% expression-cost [60] 9.6% ------------------------------------------------------------------------------------------- ??? [40] 100.0% [48] 5162(0.5%) 0(0.0%) generic-sort/key .../racket/private/sort.rkt:185:2 copying-mergesort [59] 88.4% loop [66] 11.6% ------------------------------------------------------------------------------------------- for-loop [38] 100.0% [49] 5150(0.5%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:729:4 for-loop [58] 86.1% expression-cost [60] 13.9% ------------------------------------------------------------------------------------------- add-splitpoint [41] 100.0% [50] 3994(0.4%) 1698(0.2%) for-loop ...ff-of-prods/src/core/regimes.rkt:237:4 for-loop [61] 57.5% ------------------------------------------------------------------------------------------- ??? [159] 32.4% for-loop [42] 67.6% [51] 2032(0.2%) 328(0.0%) ??? ...ie/diff-of-prods/src/core/regimes.rkt:177:2 ??? [174] 83.9% ------------------------------------------------------------------------------------------- for-loop [38] 100.0% [52] 1718(0.2%) 1718(0.2%) for-loop ...-of-prods/src/core/simplify.rkt:195:13 ------------------------------------------------------------------------------------------- hash-keys [44] 100.0% [53] 366(0.0%) 366(0.0%) loop ...acket/collects/racket/private/hash.rkt:3:4 ------------------------------------------------------------------------------------------- run-improve50 [45] 100.0% [54] 585368(60.4%) 0(0.0%) get-final-combination ...ds/src/mainloop.rkt:264:0 split-table [63] 99.9% extract-alt [69] 0.1% ------------------------------------------------------------------------------------------- sidx->spoint [46] 100.0% [55] 429302(44.3%) 0(0.0%) binary-search ...iff-of-prods/src/common.rkt:221:0 pred [64] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [45] 100.0% [56] 274614(28.3%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:249:10 run-iter! [65] 100.0% ------------------------------------------------------------------------------------------- sidx->spoint [46] 100.0% [57] 130100(13.4%) 0(0.0%) binary-search-floats ...prods/src/common.rkt:236:0 pred [64] 100.0% ------------------------------------------------------------------------------------------- loop [49] 21.7% argmin [47] 78.3% [58] 20422(2.1%) 662(0.1%) for-loop ...e/diff-of-prods/src/programs.rkt:199:2 ??? [222] 62.9% ...prods/src/common.rkt:47:2 [188] 25.0% ??? [186] 8.8% ------------------------------------------------------------------------------------------- copying-mergesort [59] 49.0% generic-sort/key [48] 51.0% [59] 4564(0.5%) 0(0.0%) copying-mergesort ...racket/private/sort.rkt:130:8 copying-mergesort [59] 49.0% loop [66] 45.4% jloop [12] 5.5% ------------------------------------------------------------------------------------------- loop [49] 29.7% argmin [47] 70.3% [60] 2414(0.2%) 362(0.0%) expression-cost ...of-prods/src/programs.rkt:198:0 compile [67] 85.0% ------------------------------------------------------------------------------------------- for-loop [50] 100.0% [61] 2296(0.2%) 2296(0.2%) for-loop ...ff-of-prods/src/core/regimes.rkt:241:8 ------------------------------------------------------------------------------------------- run-improve50 [45] 100.0% [62] 708(0.1%) 0(0.0%) setup-alt-simplified ...of-prods/src/glue.rkt:49:0 simplify-alt [68] 100.0% ------------------------------------------------------------------------------------------- get-final-combination [54] 100.0% [63] 585006(60.4%) 0(0.0%) split-table ...ie/diff-of-prods/src/glue.rkt:162:0 f6 [89] 99.9% ??? [96] 0.1% ------------------------------------------------------------------------------------------- binary-search-floats [57] 23.3% binary-search [55] 76.7% [64] 559402(57.7%) 0(0.0%) pred .../diff-of-prods/src/core/regimes.rkt:132:17 loop [70] 98.3% errors [136] 1.7% ------------------------------------------------------------------------------------------- for-loop [56] 100.0% [65] 274614(28.3%) 0(0.0%) run-iter! .../diff-of-prods/src/mainloop.rkt:215:0 simplify! [71] 78.7% gen-series! [72] 12.3% finalize-iter! [73] 7.7% choose-best-alt! [74] 0.7% gen-rewrites! [75] 0.3% ------------------------------------------------------------------------------------------- generic-sort/key [48] 10.9% ??? [40] 24.5% copying-mergesort [59] 64.7% [66] 5500(0.6%) 360(0.0%) loop ...ket/collects/racket/private/sort.rkt:97:12 ??? [174] 93.5% ------------------------------------------------------------------------------------------- expression-cost [60] 100.0% [67] 2052(0.2%) 656(0.1%) compile ...ie/diff-of-prods/src/programs.rkt:175:0 hash-ref! [134] 68.0% ------------------------------------------------------------------------------------------- setup-alt-simplified [62] 100.0% [68] 708(0.1%) 0(0.0%) simplify-alt ...ie/diff-of-prods/src/glue.rkt:76:0 ??? [222] 100.0% ------------------------------------------------------------------------------------------- get-final-combination [54] 100.0% [69] 362(0.0%) 0(0.0%) extract-alt ...bie/diff-of-prods/src/glue.rkt:55:0 loop [227] 100.0% ------------------------------------------------------------------------------------------- run-improve50 [45] 0.7% ??? [34] 6.7% pred [64] 92.6% [70] 593662(61.3%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:193:2 loop [76] 93.2% loop [81] 4.4% make-exacts* [83] 2.3% for-loop [79] 0.2% ------------------------------------------------------------------------------------------- run-iter! [65] 100.0% [71] 216034(22.3%) 0(0.0%) simplify! .../diff-of-prods/src/mainloop.rkt:155:0 for-loop [77] 100.0% ------------------------------------------------------------------------------------------- run-iter! [65] 100.0% [72] 33822(3.5%) 0(0.0%) gen-series! ...iff-of-prods/src/mainloop.rkt:129:0 for-loop [78] 100.0% ------------------------------------------------------------------------------------------- run-iter! [65] 100.0% [73] 21224(2.2%) 0(0.0%) finalize-iter! ...-of-prods/src/mainloop.rkt:169:0 ??? [96] 100.0% ------------------------------------------------------------------------------------------- run-iter! [65] 100.0% [74] 1796(0.2%) 0(0.0%) choose-best-alt! ...f-prods/src/mainloop.rkt:115:0 ??? [96] 100.0% ------------------------------------------------------------------------------------------- run-iter! [65] 100.0% [75] 694(0.1%) 0(0.0%) gen-rewrites! ...f-of-prods/src/mainloop.rkt:142:0 for-loop [80] 100.0% ------------------------------------------------------------------------------------------- loop [70] 100.0% [76] 553172(57.1%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:151:2 eval-prog [86] 97.1% make-exacts* [83] 1.5% loop [81] 1.4% ------------------------------------------------------------------------------------------- simplify! [71] 100.0% [77] 216034(22.3%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:159:6 ??? [34] 100.0% ------------------------------------------------------------------------------------------- gen-series! [72] 100.0% [78] 33822(3.5%) 0(0.0%) for-loop ...e/diff-of-prods/src/mainloop.rkt:135:7 taylor-alt [82] 100.0% ------------------------------------------------------------------------------------------- loop [70] 100.0% [79] 990(0.1%) 0(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:200:24 for-loop [84] 100.0% ------------------------------------------------------------------------------------------- gen-rewrites! [75] 100.0% [80] 694(0.1%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:147:11 ??? [85] 100.0% ------------------------------------------------------------------------------------------- loop [76] 23.3% loop [70] 76.7% [81] 33984(3.5%) 336(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:141:4 map [95] 99.0% ------------------------------------------------------------------------------------------- for-loop [78] 100.0% [82] 33822(3.5%) 0(0.0%) taylor-alt ...bie/diff-of-prods/src/glue.rkt:134:0 for-loop [87] 100.0% ------------------------------------------------------------------------------------------- loop [76] 38.0% loop [70] 62.0% [83] 21700(2.2%) 0(0.0%) make-exacts* ...diff-of-prods/src/points.rkt:138:0 map [95] 44.3% loop [165] 36.0% eval-prog [86] 19.7% ------------------------------------------------------------------------------------------- for-loop [79] 100.0% [84] 990(0.1%) 300(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:201:26 ??? [185] 69.7% ------------------------------------------------------------------------------------------- for-loop [80] 100.0% [85] 694(0.1%) 0(0.0%) ??? ...rbie/diff-of-prods/src/alternative.rkt:88:0 rewriter [88] 100.0% ------------------------------------------------------------------------------------------- sindices->spoints [18] 0.1% sort-context-on-expr [26] 0.1% make-exacts* [83] 0.8% errors [136] 1.8% loop [76] 97.3% [86] 551938(57.0%) 16752(1.7%) eval-prog .../diff-of-prods/src/programs.rkt:148:0 hash-ref! [134] 93.9% f6 [89] 2.0% ??? [185] 0.5% ??? [90] 0.3% ??? [91] 0.1% ??? [93] 0.1% ------------------------------------------------------------------------------------------- taylor-alt [82] 100.0% [87] 33822(3.5%) 0(0.0%) for-loop ...erbie/diff-of-prods/src/glue.rkt:139:6 ??? [185] 100.0% ------------------------------------------------------------------------------------------- ??? [85] 42.0% matcher [100] 58.0% [88] 694(0.1%) 0(0.0%) rewriter ...ff-of-prods/src/core/matcher.rkt:131:2 for-loop [92] 84.0% f6 [89] 16.0% ------------------------------------------------------------------------------------------- loop [94] 0.0% mterm->expr [257] 0.0% for-loop [120] 0.0% for-loop [197] 0.0% rewriter [88] 0.1% composed [236] 0.1% approximate9 [4] 0.1% eval-const-expr [198] 0.1% hash-ref! [134] 0.1% loop [165] 0.1% append-map [118] 0.2% eval-prog [86] 0.5% parse-loop12 [177] 0.5% simplify [153] 1.1% f6 [89] 1.1% map [95] 1.3% split-table [63] 94.5% [89] 611064(63.1%) 6296(0.6%) f6 ...et/collects/racket/match/compiler.rkt:507:40 loop [165] 86.1% option-on-expr [2] 8.4% map [95] 2.7% f6 [89] 1.1% ??? [185] 0.4% append-map [118] 0.3% ...prods/src/common.rkt:47:2 [188] 0.1% ??? [186] 0.1% composed [236] 0.1% taylor [98] 0.1% gather-multiplicative-terms [110] 0.0% ??? [96] 0.0% loop [99] 0.0% taylor-exp [14] 0.0% expression->type [108] 0.0% parse-loop12 [177] 0.0% parse-app [194] 0.0% loop [94] 0.0% ??? [222] 0.0% taylor-invert [15] 0.0% combine-mterms [16] 0.0% ------------------------------------------------------------------------------------------- eval-prog [86] 100.0% [90] 1634(0.2%) 0(0.0%) ??? ...cket/collects/racket/private/kw.rkt:1633:36 unpack245 [97] 100.0% ------------------------------------------------------------------------------------------- eval-prog [86] 100.0% [91] 714(0.1%) 358(0.0%) ??? ...collects/racket/private/qq-and-or.rkt:155:9 ??? [101] 49.9% ------------------------------------------------------------------------------------------- rewriter [88] 100.0% [92] 694(0.1%) 360(0.0%) for-loop ...f-of-prods/src/core/matcher.rkt:134:10 matcher [100] 74.1% ------------------------------------------------------------------------------------------- eval-prog [86] 100.0% [93] 360(0.0%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:346:33 ??? [256] 100.0% ------------------------------------------------------------------------------------------- f6 [89] 0.2% one-iter [19] 99.8% [94] 152812(15.8%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [102] 99.8% f6 [89] 0.2% ------------------------------------------------------------------------------------------- gather-multiplicative-terms [110] 0.5% parse-loop12 [177] 1.8% make-exacts* [83] 14.9% f6 [89] 30.7% loop [81] 52.1% [95] 64616(6.7%) 0(0.0%) map ...acket/collects/racket/private/map.rkt:20:13 loop [165] 58.9% f6 [89] 17.0% parse-loop12 [177] 11.9% ??? [174] 7.3% ??? [185] 1.6% simplify-node [105] 1.2% loop [35] 0.6% make-multiplication-node [216] 0.6% gather-multiplicative-terms [110] 0.5% taylor-sqrt [32] 0.5% simplify* [193] 0.1% ------------------------------------------------------------------------------------------- run-improve50 [45] 0.7% f6 [89] 0.7% for-loop [173] 0.7% debug7 [172] 0.7% ->bf [213] 0.7% free-variables [13] 1.3% split-table [63] 1.3% choose-best-alt! [74] 3.1% substitute-e [125] 3.4% ??? [263] 7.2% variable? [27] 10.9% match-e [115] 12.0% get-sigs [175] 16.7% finalize-iter! [73] 40.8% [96] 51720(5.3%) 11456(1.2%) ??? ...contract/private/arrow-val-first.rkt:357:18 for-loop [103] 38.8% hash-has-key? [104] 32.0% ??? [106] 3.1% atab-add-altns [107] 2.6% split-atab [109] 1.3% ------------------------------------------------------------------------------------------- ??? [90] 100.0% [97] 1634(0.2%) 982(0.1%) unpack245 ...private/arrow-higher-order.rkt:354:44 maybe-cons-kwd [111] 39.9% ------------------------------------------------------------------------------------------- hash-ref! [134] 25.2% approximate9 [4] 27.7% f6 [89] 47.1% [98] 1294(0.1%) 0(0.0%) taylor .../diff-of-prods/src/core/taylor.rkt:163:0 debug7 [172] 49.1% debug-print [171] 27.7% ??? [113] 23.2% ------------------------------------------------------------------------------------------- f6 [89] 100.0% [99] 696(0.1%) 0(0.0%) loop ...bie/diff-of-prods/src/core/reduce.rkt:18:2 expression->type [108] 100.0% ------------------------------------------------------------------------------------------- for-loop [112] 12.0% matcher [100] 38.0% for-loop [92] 50.0% [100] 694(0.1%) 0(0.0%) matcher ...iff-of-prods/src/core/matcher.rkt:167:2 rewriter [88] 50.0% matcher [100] 38.0% for-loop [112] 12.0% ------------------------------------------------------------------------------------------- ??? [91] 100.0% [101] 356(0.0%) 356(0.0%) ??? ...ollects/racket/private/qq-and-or.rkt:164:21 ------------------------------------------------------------------------------------------- one-iter [19] 6.7% loop [94] 93.3% [102] 163516(16.9%) 0(0.0%) apply-match ...f-prods/src/core/simplify.rkt:130:2 for-loop [114] 91.6% match-e [115] 7.4% reduce-to-single! [119] 0.6% update-leader! [138] 0.4% ------------------------------------------------------------------------------------------- ??? [96] 100.0% [103] 20238(2.1%) 0(0.0%) for-loop ...f-of-prods/src/core/alt-table.rkt:51:2 atab-add-altn [117] 100.0% ------------------------------------------------------------------------------------------- mk-enode! [135] 13.9% ??? [96] 86.1% [104] 19606(2.0%) 5878(0.6%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ??? [116] 68.2% ------------------------------------------------------------------------------------------- simplify [153] 13.1% map [95] 86.9% [105] 2738(0.3%) 0(0.0%) simplify-node ...of-prods/src/core/reduce.rkt:50:0 append-map [118] 62.5% combine-aterms [121] 37.5% ------------------------------------------------------------------------------------------- ??? [96] 100.0% [106] 1796(0.2%) 0(0.0%) ??? ...e/diff-of-prods/src/core/alt-table.rkt:54:0 ??? [185] 100.0% ------------------------------------------------------------------------------------------- ??? [96] 100.0% [107] 1336(0.1%) 0(0.0%) atab-add-altns ...rods/src/core/alt-table.rkt:50:0 atab-add-altn [117] 100.0% ------------------------------------------------------------------------------------------- f6 [89] 17.0% loop [99] 19.1% for-loop [120] 63.9% [108] 1054(0.1%) 0(0.0%) expression->type ...-prods/src/type-check.rkt:45:0 for-loop [120] 100.0% ------------------------------------------------------------------------------------------- ??? [96] 100.0% [109] 658(0.1%) 0(0.0%) split-atab ...of-prods/src/core/alt-table.rkt:74:0 for-loop [122] 100.0% ------------------------------------------------------------------------------------------- gather-multiplicative-terms [110] 16.3% f6 [89] 33.3% map [95] 50.4% [110] 656(0.1%) 656(0.1%) gather-multiplicative-terms ...re/reduce.rkt:116:0 map [95] 50.4% gather-multiplicative-terms [110] 16.3% ------------------------------------------------------------------------------------------- unpack245 [97] 100.0% [111] 652(0.1%) 0(0.0%) maybe-cons-kwd ...ate/arrow-higher-order.rkt:498:0 successfully-got-the-right-kind-of-function [129]100.0% ------------------------------------------------------------------------------------------- matcher [100] 100.0% [112] 334(0.0%) 0(0.0%) for-loop ...f-of-prods/src/core/matcher.rkt:183:21 matcher [100] 100.0% ------------------------------------------------------------------------------------------- taylor [98] 100.0% [113] 300(0.0%) 300(0.0%) ??? ...-of-prods/src/function-definitions.rkt:46:2 ------------------------------------------------------------------------------------------- apply-match [102] 100.0% [114] 149786(15.5%) 362(0.0%) for-loop ...-of-prods/src/core/simplify.rkt:145:10 mk-enode! [135] 32.4% merge-egraph-nodes! [124] 24.0% loop! [176] 22.5% substitute-e [125] 18.8% list-member? [238] 2.1% ------------------------------------------------------------------------------------------- apply-match [102] 13.8% for-loop [137] 20.6% for-loop [36] 65.6% [115] 65562(6.8%) 29752(3.1%) match-e .../diff-of-prods/src/core/ematch.rkt:46:0 for-loop [123] 45.3% ??? [96] 5.9% for-loop [137] 5.5% variable? [27] 2.3% list-cartesian-product [141] 1.4% curry* [144] 0.5% loop [165] 0.5% ------------------------------------------------------------------------------------------- hash-has-key? [104] 35.9% ??? [222] 64.1% [116] 37262(3.8%) 8752(0.9%) ??? ...ects/racket/contract/private/list.rkt:737:4 for-loop [126] 54.9% ??? [139] 11.6% ??? [263] 3.6% successfully-got-the-right-kind-of-function [129] 2.8% ??? [233] 1.8% arrow-higher-order:lnp [146] 0.9% ------------------------------------------------------------------------------------------- atab-add-altns [107] 6.2% for-loop [103] 93.8% [117] 21574(2.2%) 0(0.0%) atab-add-altn ...rods/src/core/alt-table.rkt:208:0 best-and-tied-at-points [127] 80.6% override-at-pnts [128] 19.4% ------------------------------------------------------------------------------------------- simplify-node [105] 23.1% f6 [89] 76.9% [118] 4798(0.5%) 1768(0.2%) append-map ...acket/collects/racket/list.rkt:565:2 f6 [89] 48.0% parse-loop12 [177] 23.1% free-variables [13] 6.9% ------------------------------------------------------------------------------------------- apply-match [102] 100.0% [119] 1062(0.1%) 0(0.0%) reduce-to-single! ...ods/src/core/egraph.rkt:324:0 for-loop [130] 100.0% ------------------------------------------------------------------------------------------- expression->type [108] 100.0% [120] 1054(0.1%) 0(0.0%) for-loop .../diff-of-prods/src/type-check.rkt:52:5 expression->type [108] 63.9% f6 [89] 36.1% ------------------------------------------------------------------------------------------- simplify-node [105] 100.0% [121] 1028(0.1%) 0(0.0%) combine-aterms ...-prods/src/core/reduce.rkt:183:0 for-loop [131] 100.0% ------------------------------------------------------------------------------------------- split-atab [109] 100.0% [122] 658(0.1%) 0(0.0%) for-loop ...f-of-prods/src/core/alt-table.rkt:75:2 for-loop [132] 50.2% for-loop [133] 49.8% ------------------------------------------------------------------------------------------- match-e [115] 100.0% [123] 36644(3.8%) 13518(1.4%) for-loop ...iff-of-prods/src/core/ematch.rkt:59:11 for-loop [137] 52.8% list-cartesian-product [141] 10.0% loop [165] 2.9% curry* [144] 1.9% foldl [182] 1.4% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [124] 3.4% for-loop [142] 4.3% for-loop [114] 92.3% [124] 35912(3.7%) 1348(0.1%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [138] 36.3% loop! [176] 22.9% for-loop [140] 18.4% for-loop [142] 8.6% enode-merge! [143] 4.7% merge-egraph-nodes! [124] 3.4% for-loop [145] 2.0% ------------------------------------------------------------------------------------------- substitute-e [125] 9.3% for-loop [114] 90.7% [125] 28186(2.9%) 1386(0.1%) substitute-e ...-of-prods/src/core/ematch.rkt:71:0 mk-enode! [135] 82.7% substitute-e [125] 9.3% ??? [96] 2.3% variable? [27] 2.0% ------------------------------------------------------------------------------------------- ??? [116] 100.0% [126] 20470(2.1%) 12660(1.3%) for-loop ...acket/contract/private/list.rkt:743:12 for-loop [204] 16.7% ??? [139] 14.9% ??? [228] 4.8% arrow-higher-order:lnp [146] 1.8% ------------------------------------------------------------------------------------------- atab-add-altn [117] 100.0% [127] 17386(1.8%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:122:0 errors [136] 98.1% ------------------------------------------------------------------------------------------- atab-add-altn [117] 100.0% [128] 4188(0.4%) 0(0.0%) override-at-pnts ...s/src/core/alt-table.rkt:145:0 errors [136] 100.0% ------------------------------------------------------------------------------------------- maybe-cons-kwd [111] 38.3% ??? [116] 61.7% [129] 1704(0.2%) 1054(0.1%) successfully-got-the-right-kind-of-function ...9:4 arity-checking-wrapper [147] 38.1% ------------------------------------------------------------------------------------------- reduce-to-single! [119] 100.0% [130] 1062(0.1%) 1062(0.1%) for-loop ...iff-of-prods/src/core/egraph.rkt:325:8 ------------------------------------------------------------------------------------------- combine-aterms [121] 100.0% [131] 1028(0.1%) 332(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:185:4 hash-ref! [134] 67.7% ------------------------------------------------------------------------------------------- for-loop [122] 100.0% [132] 330(0.0%) 0(0.0%) for-loop ...-of-prods/src/core/alt-table.rkt:80:53 loop [148] 100.0% ------------------------------------------------------------------------------------------- for-loop [122] 100.0% [133] 328(0.0%) 0(0.0%) for-loop ...-of-prods/src/core/alt-table.rkt:86:30 ??? [159] 100.0% ------------------------------------------------------------------------------------------- for-loop [33] 0.0% for-loop [131] 0.0% ??? [5] 0.0% first-nonzero-exp [43] 0.0% taylor-sqrt [32] 0.1% compile [67] 0.1% ??? [154] 0.1% ??? [150] 0.1% for-loop [39] 0.2% for-loop [24] 0.4% loop [20] 0.5% for-loop [21] 0.5% ??? [185] 0.9% for-loop [23] 1.2% ??? [37] 1.9% eval-prog [86] 35.2% loop [165] 58.4% [134] 553664(57.2%) 3154(0.3%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [150] 58.6% bigfloat-hash [149] 35.1% ??? [6] 1.9% ??? [8] 1.2% simplify [153] 0.7% ??? [5] 0.7% ??? [154] 0.6% ??? [9] 0.4% ??? [10] 0.2% parse-loop12 [177] 0.2% f6 [89] 0.2% taylor [98] 0.0% ??? [11] 0.0% ------------------------------------------------------------------------------------------- expr->enode [250] 2.2% substitute-e [125] 31.7% for-loop [114] 66.0% [135] 73400(7.6%) 6522(0.7%) mk-enode! ...ff-of-prods/src/core/egraph.rkt:101:0 new-enode [151] 87.4% hash-has-key? [104] 3.7% ------------------------------------------------------------------------------------------- composed [236] 4.8% option-on-expr [2] 8.6% override-at-pnts [128] 9.4% loop [165] 17.6% pred [64] 21.5% best-and-tied-at-points [127] 38.2% [136] 44708(4.6%) 362(0.0%) errors ...erbie/diff-of-prods/src/points.rkt:218:0 for-loop [152] 76.9% eval-prog [86] 22.3% ------------------------------------------------------------------------------------------- match-e [115] 22.6% for-loop [123] 77.4% [137] 27608(2.9%) 2440(0.3%) for-loop ...iff-of-prods/src/core/ematch.rkt:65:37 match-e [115] 90.5% ??? [162] 1.3% ------------------------------------------------------------------------------------------- apply-match [102] 4.2% merge-egraph-nodes! [124] 95.8% [138] 14690(1.5%) 1716(0.2%) update-leader! ...-prods/src/core/egraph.rkt:217:0 for-loop [155] 81.3% update-en-expr [225] 7.0% ------------------------------------------------------------------------------------------- for-loop [126] 41.4% ??? [116] 58.6% [139] 7362(0.8%) 3612(0.4%) ??? ...private/unconstrained-domain-arrow.rkt:74:4 make-keyword-procedure [156] 50.9% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [124] 100.0% [140] 6614(0.7%) 4870(0.5%) for-loop ...iff-of-prods/src/core/egraph.rkt:232:6 update-en-expr [225] 26.4% ------------------------------------------------------------------------------------------- match-e [115] 10.0% list-cartesian-product [141] 29.8% for-loop [123] 60.1% [141] 5256(0.5%) 4568(0.5%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [141] 29.8% for-loop [157] 9.6% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [124] 100.0% [142] 4460(0.5%) 0(0.0%) for-loop ...ff-of-prods/src/core/egraph.rkt:200:10 merge-egraph-nodes! [124] 65.8% loop! [176] 34.2% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [124] 100.0% [143] 1692(0.2%) 686(0.1%) enode-merge! ...-of-prods/src/core/enode.rkt:129:0 adopt-enode! [161] 38.4% custom-set-intersect! [163] 21.0% ------------------------------------------------------------------------------------------- match-e [115] 34.1% for-loop [123] 65.9% [144] 1038(0.1%) 350(0.0%) curry* ...racket/collects/racket/function.rkt:44:2 procedure-arity [158] 66.3% ------------------------------------------------------------------------------------------- merge-egraph-nodes! [124] 100.0% [145] 720(0.1%) 360(0.0%) for-loop ...rbie/diff-of-prods/src/common.rkt:94:9 update-en-expr [225] 50.0% ------------------------------------------------------------------------------------------- ??? [116] 47.8% for-loop [126] 52.2% [146] 690(0.1%) 360(0.0%) arrow-higher-order:lnp ...w-higher-order.rkt:597:7 ??? [164] 47.8% ------------------------------------------------------------------------------------------- successfully-got-the-right-kind-of-function [129]100.0% [147] 650(0.1%) 0(0.0%) arity-checking-wrapper ...w-higher-order.rkt:402:0 matches-arity-exactly? [160] 100.0% ------------------------------------------------------------------------------------------- one-iter [19] 48.8% for-loop [132] 51.2% [148] 644(0.1%) 314(0.0%) loop ...ket/collects/racket/private/list.rkt:264:4 ??? [159] 51.2% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [149] 517002(53.4%) 702(0.1%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 bfcanonicalize [166] 98.2% sig+exp->bigfloat [169] 1.4% bigfloat->sig+exp [179] 0.3% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [150] 483778(49.9%) 358(0.0%) ??? ...herbie/diff-of-prods/src/programs.rkt:183:5 loop [165] 99.7% hash-ref! [134] 0.3% ------------------------------------------------------------------------------------------- mk-enode! [135] 100.0% [151] 64162(6.6%) 0(0.0%) new-enode ...diff-of-prods/src/core/enode.rkt:97:0 type-of-enode-expr [167] 99.0% set [189] 0.5% ------------------------------------------------------------------------------------------- errors [136] 100.0% [152] 34386(3.5%) 688(0.1%) for-loop ...bie/diff-of-prods/src/points.rkt:221:4 ??? [174] 88.0% ??? [185] 6.0% ulp-difference [170] 4.0% ------------------------------------------------------------------------------------------- taylor-invert [15] 1.0% taylor-sqrt [32] 1.1% for-loop [21] 1.1% parse-loop12 [177] 2.2% taylor-exp [14] 2.2% ??? [5] 2.3% for-loop [199] 3.3% hash-ref! [134] 86.9% [153] 31894(3.3%) 626(0.1%) simplify ...diff-of-prods/src/core/reduce.rkt:16:0 f6 [89] 58.5% parse-loop12 [177] 32.8% simplify* [193] 3.3% debug-print [171] 1.1% debug7 [172] 1.1% simplify-node [105] 1.1% ------------------------------------------------------------------------------------------- hash-ref! [134] 100.0% [154] 12278(1.3%) 0(0.0%) ??? ...bie/diff-of-prods/src/core/taylor.rkt:67:15 ??? [185] 90.6% hash-ref! [134] 9.4% ------------------------------------------------------------------------------------------- update-leader! [138] 100.0% [155] 11946(1.2%) 332(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:222:6 for-loop [168] 97.2% ------------------------------------------------------------------------------------------- ??? [139] 100.0% [156] 3750(0.4%) 3750(0.4%) make-keyword-procedure ...ket/private/kw.rkt:260:4 ------------------------------------------------------------------------------------------- list-cartesian-product [141] 100.0% [157] 688(0.1%) 688(0.1%) for-loop ...diff-of-prods/src/core/ematch.rkt:24:8 ------------------------------------------------------------------------------------------- curry* [144] 100.0% [158] 688(0.1%) 688(0.1%) procedure-arity ...ket/private/norm-arity.rkt:7:27 ------------------------------------------------------------------------------------------- for-loop [133] 49.8% loop [148] 50.2% [159] 658(0.1%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/regimes.rkt:284:4 ??? [51] 100.0% ------------------------------------------------------------------------------------------- arity-checking-wrapper [147] 100.0% [160] 650(0.1%) 650(0.1%) matches-arity-exactly? ...te/arrow-common.rkt:70:0 ------------------------------------------------------------------------------------------- enode-merge! [143] 100.0% [161] 650(0.1%) 0(0.0%) adopt-enode! ...-of-prods/src/core/enode.rkt:105:0 custom-set-union [187] 100.0% ------------------------------------------------------------------------------------------- for-loop [137] 100.0% [162] 360(0.0%) 0(0.0%) ??? ...rbie/diff-of-prods/src/core/ematch.rkt:50:5 for-loop [173] 100.0% ------------------------------------------------------------------------------------------- enode-merge! [143] 100.0% [163] 356(0.0%) 356(0.0%) custom-set-intersect! ...ivate/set-types.rkt:269:0 ------------------------------------------------------------------------------------------- arrow-higher-order:lnp [146] 100.0% [164] 330(0.0%) 330(0.0%) ??? ...et/contract/private/arity-checking.rkt:19:2 ------------------------------------------------------------------------------------------- make-exacts* [83] 0.0% match-e [115] 0.1% map-enodes [28] 0.1% for-loop [123] 0.2% option-on-expr [2] 0.5% parse-loop12 [177] 0.6% loop! [176] 0.7% map [95] 0.8% loop [165] 23.8% f6 [89] 28.0% ??? [150] 45.3% [165] 658816(68.0%) 3766(0.4%) loop ...cket/collects/racket/private/map.rkt:25:19 hash-ref! [134] 45.3% option-on-expr [2] 28.0% loop [165] 23.8% loop! [176] 0.7% ??? [174] 0.6% errors [136] 0.5% parse-loop12 [177] 0.3% f6 [89] 0.3% for-loop [180] 0.1% foldl [182] 0.1% ??? [185] 0.1% ------------------------------------------------------------------------------------------- bigfloat-hash [149] 100.0% [166] 507832(52.4%) 503384(52.0%) bfcanonicalize .../private/bigfloat/mpfr.rkt:155:0 bigfloat->sig+exp [179] 0.9% ------------------------------------------------------------------------------------------- new-enode [151] 100.0% [167] 63498(6.6%) 332(0.0%) type-of-enode-expr ...rods/src/core/enode.rkt:68:0 get-sigs [175] 99.5% ------------------------------------------------------------------------------------------- for-loop [155] 100.0% [168] 11614(1.2%) 326(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:223:8 hash-update! [178] 97.2% ------------------------------------------------------------------------------------------- bigfloat-hash [149] 100.0% [169] 7074(0.7%) 4938(0.5%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 integer->mpz [181] 30.2% ------------------------------------------------------------------------------------------- for-loop [152] 100.0% [170] 1382(0.1%) 1054(0.1%) ulp-difference ...diff-of-prods/src/float.rkt:19:0 ??? [258] 23.7% ------------------------------------------------------------------------------------------- sidx->spoint [46] 31.2% taylor [98] 34.0% simplify [153] 34.8% [171] 1052(0.1%) 366(0.0%) debug-print ...e/diff-of-prods/src/debug.rkt:107:0 for-loop [183] 65.2% ------------------------------------------------------------------------------------------- simplify [153] 36.3% taylor [98] 63.7% [172] 998(0.1%) 0(0.0%) debug7 ...herbie/diff-of-prods/src/debug.rkt:102:0 return/no-unsupplied [235] 63.7% ??? [96] 36.3% ------------------------------------------------------------------------------------------- ??? [162] 100.0% [173] 360(0.0%) 0(0.0%) for-loop ...diff-of-prods/src/core/ematch.rkt:51:7 ??? [96] 100.0% ------------------------------------------------------------------------------------------- jloop [12] 0.8% ??? [51] 2.0% map [95] 5.5% loop [66] 6.0% for-loop [152] 35.5% loop [165] 50.2% [174] 85298(8.8%) 3422(0.4%) ??? ...herbie/diff-of-prods/src/programs.rkt:154:4 ??? [184] 75.9% ??? [190] 12.9% ??? [185] 6.8% ------------------------------------------------------------------------------------------- type-of-enode-expr [167] 100.0% [175] 63166(6.5%) 1708(0.2%) get-sigs ...e/diff-of-prods/src/type-check.rkt:5:0 ??? [186] 38.5% ??? [222] 30.8% ...prods/src/common.rkt:47:2 [188] 14.4% ??? [96] 13.6% ------------------------------------------------------------------------------------------- for-loop [142] 2.6% merge-egraph-nodes! [124] 14.1% loop [165] 30.8% for-loop [114] 52.6% [176] 45216(4.7%) 10336(1.1%) loop! ...ie/diff-of-prods/src/core/enode.rkt:192:2 loop [165] 35.2% custom-set-union [187] 31.3% set [189] 14.2% update-en-expr [225] 5.3% ------------------------------------------------------------------------------------------- f6 [89] 0.5% loop [165] 3.7% hash-ref! [134] 4.0% append-map [118] 5.5% for-loop [30] 7.4% simplify [153] 15.8% parse-loop12 [177] 26.3% map [95] 36.9% [177] 23620(2.4%) 14184(1.5%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 parse-loop12 [177] 26.3% loop [165] 10.6% f6 [89] 7.8% for-loop [199] 4.5% make-multiplication-node [216] 4.3% map [95] 4.2% for-loop [197] 4.0% simplify [153] 2.9% parse-app [194] 1.6% simplify* [193] 0.9% bf* [205] 0.7% ------------------------------------------------------------------------------------------- for-loop [168] 100.0% [178] 11288(1.2%) 360(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [191] 96.8% ------------------------------------------------------------------------------------------- bigfloat-hash [149] 23.9% bfcanonicalize [166] 76.1% [179] 5842(0.6%) 1394(0.1%) bigfloat->sig+exp ...ivate/bigfloat/mpfr.rkt:370:0 size+limbs->integer [192] 46.9% new-mpz [196] 23.5% mpz->integer [202] 5.8% ------------------------------------------------------------------------------------------- map-enodes [28] 24.7% loop [165] 75.3% [180] 4034(0.4%) 360(0.0%) for-loop ...f-of-prods/src/core/simplify.rkt:173:2 setfindf [195] 42.5% eval-const-expr [198] 32.2% compose [201] 16.4% ------------------------------------------------------------------------------------------- sig+exp->bigfloat [169] 100.0% [181] 2136(0.2%) 2136(0.2%) integer->mpz ...math/private/bigfloat/gmp.rkt:87:0 ------------------------------------------------------------------------------------------- for-loop [123] 50.0% loop [165] 50.0% [182] 1376(0.1%) 660(0.1%) foldl ...et/collects/racket/private/list.rkt:229:4 merge2 [200] 52.0% ------------------------------------------------------------------------------------------- debug-print [171] 100.0% [183] 686(0.1%) 686(0.1%) for-loop ...rbie/diff-of-prods/src/debug.rkt:113:2 ------------------------------------------------------------------------------------------- ??? [174] 100.0% [184] 64710(6.7%) 26998(2.8%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [223] 24.1% bf* [205] 16.1% ??? [210] 10.2% ??? [212] 6.9% ??? [256] 0.5% ------------------------------------------------------------------------------------------- jloop [12] 0.6% for-loop [84] 1.1% map [95] 1.7% ??? [106] 2.7% for-loop [152] 3.4% loop [165] 3.5% eval-prog [86] 4.6% ??? [154] 6.8% ??? [174] 9.6% loop [20] 11.0% f6 [89] 16.1% ??? [222] 19.2% for-loop [87] 19.2% [185] 60312(6.2%) 1772(0.2%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [222] 45.3% approximate9 [4] 19.2% hash-ref! [134] 17.8% ??? [263] 6.4% ->bf [213] 4.0% best-alt [215] 2.7% ...prods/src/common.rkt:47:2 [188] 1.2% ??? [186] 0.6% ------------------------------------------------------------------------------------------- ??? [185] 1.2% ->bf [213] 2.5% f6 [89] 2.5% for-loop [58] 6.5% get-sigs [175] 87.3% [186] 27840(2.9%) 3172(0.3%) ??? ...ts/racket/contract/private/arr-i.rkt:804:10 ??? [203] 49.9% for-loop [204] 31.2% get/build-late-neg-projection [254] 3.7% ??? [219] 2.5% ??? [228] 1.2% ------------------------------------------------------------------------------------------- adopt-enode! [161] 3.9% loop! [176] 96.1% [187] 16584(1.7%) 5826(0.6%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [208] 52.5% for-loop [214] 12.3% ------------------------------------------------------------------------------------------- f6 [89] 4.1% ->bf [213] 4.4% ??? [185] 4.4% for-loop [58] 31.3% get-sigs [175] 55.8% [188] 16326(1.7%) 3450(0.4%) ...prods/src/common.rkt:47:2 ...e/arr-i.rkt:906:19 ??? [209] 46.7% ??? [211] 32.1% ------------------------------------------------------------------------------------------- new-enode [151] 2.5% loop! [176] 97.5% [189] 12480(1.3%) 12480(1.3%) set ...collects/racket/private/set-types.rkt:981:0 ------------------------------------------------------------------------------------------- ??? [174] 100.0% [190] 11012(1.1%) 1000(0.1%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [207] 90.9% ------------------------------------------------------------------------------------------- hash-update! [178] 100.0% [191] 10928(1.1%) 332(0.0%) ??? ...ie/diff-of-prods/src/core/egraph.rkt:225:24 for-loop [206] 94.0% make-sequence [221] 2.9% ------------------------------------------------------------------------------------------- bigfloat->sig+exp [179] 100.0% [192] 2740(0.3%) 2740(0.3%) size+limbs->integer ...vate/bigfloat/gmp.rkt:103:0 ------------------------------------------------------------------------------------------- map [95] 14.4% simplify [153] 42.3% parse-loop12 [177] 43.4% [193] 2504(0.3%) 1420(0.1%) simplify* ...iff-of-prods/src/core/reduce.rkt:31:0 return/no-unsupplied [235] 28.8% ??? [220] 14.5% ------------------------------------------------------------------------------------------- f6 [89] 38.6% parse-loop12 [177] 61.4% [194] 1772(0.2%) 1044(0.1%) parse-app .../collects/racket/private/kw.rkt:951:2 loop [218] 41.1% ------------------------------------------------------------------------------------------- for-loop [180] 100.0% [195] 1714(0.2%) 688(0.1%) setfindf ...bie/diff-of-prods/src/common.rkt:179:0 for-loop [217] 59.9% ------------------------------------------------------------------------------------------- bigfloat->sig+exp [179] 100.0% [196] 1372(0.1%) 1372(0.1%) new-mpz ...-lib/math/private/bigfloat/gmp.rkt:73:0 ------------------------------------------------------------------------------------------- parse-loop12 [177] 100.0% [197] 1352(0.1%) 0(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:99:13 f6 [89] 75.7% make-multiplication-node [216] 24.3% ------------------------------------------------------------------------------------------- for-loop [180] 100.0% [198] 1300(0.1%) 332(0.0%) eval-const-expr ...of-prods/src/programs.rkt:166:0 f6 [89] 51.2% ??? [223] 23.2% ------------------------------------------------------------------------------------------- parse-loop12 [177] 100.0% [199] 1056(0.1%) 0(0.0%) for-loop ...ff-of-prods/src/core/taylor.rkt:490:59 simplify [153] 100.0% ------------------------------------------------------------------------------------------- foldl [182] 100.0% [200] 716(0.1%) 716(0.1%) merge2 ...e/diff-of-prods/src/core/ematch.rkt:31:0 ------------------------------------------------------------------------------------------- for-loop [180] 100.0% [201] 660(0.1%) 660(0.1%) compose ...collects/racket/private/list.rkt:385:12 ------------------------------------------------------------------------------------------- bigfloat->sig+exp [179] 100.0% [202] 336(0.0%) 336(0.0%) mpz->integer ...ath/private/bigfloat/gmp.rkt:115:0 ------------------------------------------------------------------------------------------- ??? [186] 100.0% [203] 13902(1.4%) 684(0.1%) ??? ...ects/racket/contract/private/hash.rkt:217:4 ??? [224] 95.1% ------------------------------------------------------------------------------------------- for-loop [126] 28.2% ??? [186] 71.8% [204] 12114(1.3%) 2032(0.2%) for-loop ...racket/contract/private/hash.rkt:239:6 ??? [233] 83.2% ------------------------------------------------------------------------------------------- parse-loop12 [177] 3.0% ??? [184] 97.0% [205] 10750(1.1%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [223] 100.0% ------------------------------------------------------------------------------------------- ??? [191] 100.0% [206] 10274(1.1%) 8950(0.9%) for-loop ...ff-of-prods/src/core/egraph.rkt:226:26 update-en-expr [225] 12.9% ------------------------------------------------------------------------------------------- ??? [190] 100.0% [207] 10012(1.0%) 7598(0.8%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [246] 24.1% ------------------------------------------------------------------------------------------- custom-set-union [187] 100.0% [208] 8710(0.9%) 3082(0.3%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [226] 64.6% ------------------------------------------------------------------------------------------- ...prods/src/common.rkt:47:2 [188] 100.0% [209] 7632(0.8%) 2274(0.2%) ??? ...s/racket/contract/private/arr-i.rkt:1268:39 ??? [258] 25.9% assoc-ref [229] 23.3% return/no-unsupplied [235] 21.0% ------------------------------------------------------------------------------------------- ??? [184] 100.0% [210] 6570(0.7%) 4182(0.4%) ??? .../diff-of-prods/src/syntax/syntax.rkt:122:17 return/no-unsupplied [235] 31.3% ??? [258] 5.1% ------------------------------------------------------------------------------------------- ??? [233] 6.3% for-loop [249] 13.1% ...prods/src/common.rkt:47:2 [188] 80.6% [211] 5244(0.5%) 2394(0.2%) ??? ...ects/racket/contract/private/list.rkt:342:4 ??? [233] 60.1% ??? [228] 13.6% ------------------------------------------------------------------------------------------- ??? [184] 100.0% [212] 4442(0.5%) 4442(0.5%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------------------------- ??? [185] 100.0% [213] 2422(0.3%) 326(0.0%) ->bf ...herbie/diff-of-prods/src/programs.rkt:51:0 ...prods/src/common.rkt:47:2 [188] 29.6% ??? [186] 28.6% ??? [96] 14.9% ??? [222] 13.5% ------------------------------------------------------------------------------------------- custom-set-union [187] 100.0% [214] 2048(0.2%) 2048(0.2%) for-loop ...cts/racket/private/set-types.rkt:152:2 ------------------------------------------------------------------------------------------- ??? [185] 100.0% [215] 1796(0.2%) 0(0.0%) best-alt ...herbie/diff-of-prods/src/glue.rkt:71:0 loop [227] 100.0% ------------------------------------------------------------------------------------------- for-loop [197] 19.2% map [95] 20.9% parse-loop12 [177] 59.9% [216] 1712(0.2%) 0(0.0%) make-multiplication-node .../core/reduce.rkt:230:0 make-multiplication-subnode [230] 100.0% ------------------------------------------------------------------------------------------- setfindf [195] 100.0% [217] 1026(0.1%) 1026(0.1%) for-loop ...bie/diff-of-prods/src/common.rkt:180:2 ------------------------------------------------------------------------------------------- parse-app [194] 100.0% [218] 728(0.1%) 728(0.1%) loop .../collects/racket/private/stxcase.rkt:112:7 ------------------------------------------------------------------------------------------- ??? [186] 100.0% [219] 692(0.1%) 334(0.0%) ??? ...ntract/private/arrow-higher-order.rkt:518:2 get/build-late-neg-projection [254] 51.7% ------------------------------------------------------------------------------------------- simplify* [193] 100.0% [220] 364(0.0%) 0(0.0%) ??? ...racket/collects/racket/private/kw.rkt:762:9 ??? [264] 100.0% ------------------------------------------------------------------------------------------- ??? [191] 100.0% [221] 322(0.0%) 322(0.0%) make-sequence ...ects/racket/private/for.rkt:509:2 ------------------------------------------------------------------------------------------- f6 [89] 0.1% ->bf [213] 0.1% simplify-alt [68] 0.1% for-loop [58] 1.4% get-sigs [175] 2.1% ??? [222] 5.3% ??? [185] 13.9% for-loop [231] 36.9% ??? [34] 39.6% [222] 315164(32.5%) 14992(1.5%) ??? ...llects/racket/private/norm-define.rkt:53:83 for-loop [231] 36.9% iterate-egraph!13 [3] 36.8% ??? [185] 8.9% ??? [222] 5.3% loop [7] 3.4% ??? [116] 3.2% return/no-unsupplied [235] 0.8% ??? [258] 0.6% list-member? [238] 0.4% ??? [242] 0.2% mk-egraph [239] 0.2% ??? [233] 0.0% ------------------------------------------------------------------------------------------- eval-const-expr [198] 1.1% bf* [205] 40.4% ??? [184] 58.5% [223] 26638(2.7%) 3844(0.4%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [232] 67.0% bfneg [237] 18.6% ------------------------------------------------------------------------------------------- ??? [203] 100.0% [224] 13218(1.4%) 0(0.0%) ??? ...ects/racket/contract/private/list.rkt:169:2 ??? [234] 100.0% ------------------------------------------------------------------------------------------- for-loop [145] 3.9% update-leader! [138] 11.2% for-loop [206] 14.4% for-loop [140] 18.9% loop! [176] 51.6% [225] 9212(1.0%) 9212(1.0%) update-en-expr ...-prods/src/core/egraph.rkt:211:0 ------------------------------------------------------------------------------------------- for-loop [208] 100.0% [226] 5628(0.6%) 5628(0.6%) for-loop ...cts/racket/private/set-types.rkt:178:5 ------------------------------------------------------------------------------------------- extract-alt [69] 16.8% best-alt [215] 83.2% [227] 2158(0.2%) 0(0.0%) loop .../herbie/diff-of-prods/src/common.rkt:146:2 composed [236] 100.0% ------------------------------------------------------------------------------------------- ??? [186] 16.6% ??? [211] 35.0% for-loop [126] 48.4% [228] 2038(0.2%) 714(0.1%) ??? ...ects/racket/contract/private/hash.rkt:222:6 check-hash/c [240] 65.0% ------------------------------------------------------------------------------------------- ??? [209] 100.0% [229] 1780(0.2%) 1780(0.2%) assoc-ref ...collects/racket/private/dict.rkt:56:0 ------------------------------------------------------------------------------------------- make-multiplication-node [216] 100.0% [230] 1712(0.2%) 0(0.0%) make-multiplication-subnode ...re/reduce.rkt:240:0 for-loop [241] 61.0% group-by68 [243] 39.0% ------------------------------------------------------------------------------------------- ??? [222] 100.0% [231] 242070(25.0%) 0(0.0%) for-loop ...f-of-prods/src/core/simplify.rkt:63:12 ??? [222] 100.0% ------------------------------------------------------------------------------------------- ??? [223] 100.0% [232] 17846(1.8%) 11536(1.2%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [246] 35.4% ------------------------------------------------------------------------------------------- ??? [222] 2.0% ??? [116] 4.4% ??? [211] 27.4% for-loop [204] 66.3% [233] 15216(1.6%) 2108(0.2%) ??? ...cts/racket/contract/private/list.rkt:187:10 ??? [245] 66.3% for-loop [249] 13.4% ??? [211] 4.4% ??? [256] 2.2% ------------------------------------------------------------------------------------------- ??? [224] 100.0% [234] 13218(1.4%) 1374(0.1%) ??? ...ects/racket/contract/private/list.rkt:678:5 for-loop [244] 89.6% ------------------------------------------------------------------------------------------- debug7 [172] 7.9% simplify* [193] 9.0% ??? [209] 20.0% ??? [210] 25.6% ??? [222] 37.5% [235] 8024(0.8%) 5704(0.6%) return/no-unsupplied ...ct/private/arr-i.rkt:533:0 filter [248] 28.9% ------------------------------------------------------------------------------------------- loop [227] 41.1% f6 [89] 58.9% [236] 5246(0.5%) 0(0.0%) composed ...ollects/racket/private/list.rkt:321:16 f6 [89] 58.9% errors [136] 41.1% ------------------------------------------------------------------------------------------- ??? [223] 100.0% [237] 4948(0.5%) 4582(0.5%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [246] 7.4% ------------------------------------------------------------------------------------------- ??? [222] 31.3% for-loop [114] 68.7% [238] 4518(0.5%) 1416(0.1%) list-member? ...llects/racket/private/set.rkt:24:0 loop [247] 60.7% member [252] 7.9% ------------------------------------------------------------------------------------------- ??? [222] 100.0% [239] 1628(0.2%) 0(0.0%) mk-egraph ...ff-of-prods/src/core/egraph.rkt:123:0 expr->enode [250] 100.0% ------------------------------------------------------------------------------------------- ??? [228] 100.0% [240] 1324(0.1%) 698(0.1%) check-hash/c ...ket/contract/private/hash.rkt:83:0 flat-contract? [251] 47.3% ------------------------------------------------------------------------------------------- make-multiplication-subnode [230] 100.0% [241] 1044(0.1%) 358(0.0%) for-loop ...iff-of-prods/src/core/reduce.rkt:242:3 make-multiplication-subsubsubnode [253] 34.3% mterm->expr [257] 31.4% ------------------------------------------------------------------------------------------- ??? [222] 100.0% [242] 706(0.1%) 0(0.0%) ??? ...-racket/utils/simple-result-arrow.rkt:60:15 ??? [246] 100.0% ------------------------------------------------------------------------------------------- make-multiplication-subnode [230] 100.0% [243] 668(0.1%) 668(0.1%) group-by68 ...acket/collects/racket/list.rkt:749:0 ------------------------------------------------------------------------------------------- ??? [234] 100.0% [244] 11844(1.2%) 2050(0.2%) for-loop ...racket/contract/private/list.rkt:680:9 get/build-late-neg-projection [254] 43.1% add-list-context [255] 39.6% ------------------------------------------------------------------------------------------- ??? [233] 100.0% [245] 10082(1.0%) 696(0.1%) ??? ...ects/racket/contract/private/list.rkt:686:7 ??? [263] 82.7% ??? [256] 10.4% ------------------------------------------------------------------------------------------- bfneg [237] 3.7% ??? [242] 7.2% real->bigfloat [207] 24.6% bfmul [232] 64.4% [246] 9796(1.0%) 9796(1.0%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ------------------------------------------------------------------------------------------- list-member? [238] 100.0% [247] 2744(0.3%) 2744(0.3%) loop (unknown source) ------------------------------------------------------------------------------------------- return/no-unsupplied [235] 100.0% [248] 2320(0.2%) 2320(0.2%) filter ...t/collects/racket/private/list.rkt:256:2 ------------------------------------------------------------------------------------------- ??? [233] 100.0% [249] 2034(0.2%) 660(0.1%) for-loop ...acket/contract/private/list.rkt:190:15 ??? [211] 67.6% ------------------------------------------------------------------------------------------- expr->enode [250] 49.0% mk-egraph [239] 51.0% [250] 1628(0.2%) 0(0.0%) expr->enode ...-of-prods/src/core/egraph.rkt:124:2 mk-enode! [135] 51.0% expr->enode [250] 49.0% ------------------------------------------------------------------------------------------- check-hash/c [240] 100.0% [251] 626(0.1%) 626(0.1%) flat-contract? .../contract/private/guts.rkt:111:0 ------------------------------------------------------------------------------------------- list-member? [238] 100.0% [252] 358(0.0%) 358(0.0%) member (unknown source) ------------------------------------------------------------------------------------------- for-loop [241] 100.0% [253] 358(0.0%) 0(0.0%) make-multiplication-subsubsubnode ...uce.rkt:262:0 mterm->expr [257] 100.0% ------------------------------------------------------------------------------------------- unconstrained-domain->-projection [262] 2.7% ??? [219] 5.5% ??? [186] 13.3% for-loop [244] 78.6% [254] 6500(0.7%) 1348(0.1%) get/build-late-neg-projection ...te/guts.rkt:691:0 ??? [259] 71.1% ??? [261] 5.5% unconstrained-domain->-projection [262] 2.7% ------------------------------------------------------------------------------------------- for-loop [244] 100.0% [255] 4688(0.5%) 4688(0.5%) add-list-context ...ontract/private/list.rkt:752:0 ------------------------------------------------------------------------------------------- ??? [184] 15.8% ??? [233] 16.0% ??? [93] 17.5% ??? [245] 50.7% [256] 2062(0.2%) 656(0.1%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [260] 68.2% ------------------------------------------------------------------------------------------- for-loop [241] 47.8% make-multiplication-subsubsubnode [253] 52.2% [257] 686(0.1%) 0(0.0%) mterm->expr ...-of-prods/src/core/reduce.rkt:270:0 f6 [89] 52.2% ??? [258] 47.8% ------------------------------------------------------------------------------------------- ulp-difference [170] 5.5% mterm->expr [257] 5.5% ??? [210] 5.5% ??? [209] 32.9% ??? [222] 50.6% [258] 6006(0.6%) 1984(0.2%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ??? [264] 61.5% ??? [263] 5.5% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [254] 100.0% [259] 4792(0.5%) 1062(0.1%) ??? ...cts/racket/contract/private/prop.rkt:314:12 build-compound-type-name [265] 77.8% ------------------------------------------------------------------------------------------- ??? [256] 100.0% [260] 1406(0.1%) 0(0.0%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ??? [266] 100.0% ------------------------------------------------------------------------------------------- get/build-late-neg-projection [254] 100.0% [261] 360(0.0%) 360(0.0%) ??? ...ects/racket/contract/private/hash.rkt:211:2 ------------------------------------------------------------------------------------------- get/build-late-neg-projection [254] 100.0% [262] 346(0.0%) 0(0.0%) unconstrained-domain->-projection ...rrow.rkt:60:0 get/build-late-neg-projection [254] 100.0% ------------------------------------------------------------------------------------------- ??? [258] 2.3% ??? [116] 9.4% ??? [185] 28.8% ??? [245] 59.4% [263] 14032(1.4%) 9994(1.0%) ??? ...ects/racket/contract/private/guts.rkt:644:8 ??? [96] 28.8% ------------------------------------------------------------------------------------------- ??? [220] 9.0% ??? [258] 91.0% [264] 4058(0.4%) 4058(0.4%) ??? ...s/racket/contract/private/arr-i.rkt:1233:27 ------------------------------------------------------------------------------------------- contract-struct-name [267] 18.0% ??? [259] 82.0% [265] 3730(0.4%) 2356(0.2%) build-compound-type-name ...private/guts.rkt:448:0 contract-struct-name [267] 54.9% ------------------------------------------------------------------------------------------- ??? [260] 100.0% [266] 1406(0.1%) 1406(0.1%) ??? ...ects/racket/contract/private/list.rkt:141:5 ------------------------------------------------------------------------------------------- build-compound-type-name [265] 100.0% [267] 2720(0.3%) 1374(0.1%) contract-struct-name ...ract/private/prop.rkt:89:0 build-compound-type-name [265] 49.5% -------------------------------------------------------------------------------------------