Profiling results ----------------- Total cpu time observed: 39094ms (out of 40044ms) Number of samples taken: 95 (once every 412ms) (Hiding functions with self<1.0% and local<2.0%: 1 of 70 hidden) ================================================================= Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ================================================================= run [7] 50.0% [1] 38756(99.1%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [4] 49.2% loop [8] 43.3% run-improve50 [6] 7.5% ----------------------------------------------------------------- loop [41] 100.0% [2] 31794(81.3%) 360(0.9%) ??? ...herbie/diff-of-prods/src/programs.rkt:154:4 ??? [5] 75.9% ??? [28] 23.0% ----------------------------------------------------------------- loop [41] 100.0% [3] 334(0.9%) 0(0.0%) ??? ...ket/collects/racket/private/list.rkt:323:18 hash-ref! [27] 66.7% map [34] 33.3% ----------------------------------------------------------------- ??? [1] 100.0% [4] 38108(97.5%) 0(0.0%) profile-thunk16 ...t/pkgs/profile-lib/main.rkt:9:0 run [7] 100.0% ----------------------------------------------------------------- ??? [2] 100.0% [5] 24118(61.7%) 4648(11.9%) ??? ...acket/collects/racket/private/kw.rkt:444:14 ??? [13] 56.9% bf* [9] 18.9% ??? [11] 1.9% parse-loop12 [30] 1.5% ----------------------------------------------------------------- ??? [1] 100.0% [6] 5482(14.0%) 0(0.0%) run-improve50 ...f-of-prods/src/mainloop.rkt:234:0 setup-alt-simplified [10] 69.0% loop [8] 25.0% for-loop [12] 6.1% ----------------------------------------------------------------- profile-thunk16 [4] 99.2% [7] 38422(98.3%) 0(0.0%) run ...share/racket/pkgs/profile-lib/main.rkt:39:2 ??? [1] 100.0% ----------------------------------------------------------------- run-improve50 [6] 3.9% ??? [1] 96.1% [8] 34642(88.6%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:193:2 loop [14] 45.3% make-exacts* [19] 34.8% loop [20] 17.0% for-loop [16] 2.8% ----------------------------------------------------------------- ??? [5] 100.0% [9] 4558(11.7%) 0(0.0%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [13] 100.0% ----------------------------------------------------------------- run-improve50 [6] 100.0% [10] 3780(9.7%) 0(0.0%) setup-alt-simplified ...of-prods/src/glue.rkt:49:0 simplify-alt [15] 100.0% ----------------------------------------------------------------- ??? [5] 100.0% [11] 466(1.2%) 0(0.0%) ??? ...ects/racket/contract/private/prop.rkt:493:4 ??? [17] 100.0% ----------------------------------------------------------------- run-improve50 [6] 100.0% [12] 334(0.9%) 0(0.0%) for-loop .../diff-of-prods/src/mainloop.rkt:249:10 run-iter! [18] 100.0% ----------------------------------------------------------------- bf* [9] 24.9% ??? [5] 75.1% [13] 18274(46.7%) 8548(21.9%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfadd [21] 36.9% bfneg [22] 16.3% ----------------------------------------------------------------- loop [8] 100.0% [14] 15710(40.2%) 0(0.0%) loop .../herbie/diff-of-prods/src/points.rkt:151:2 loop [20] 60.5% make-exacts* [19] 32.1% eval-prog [23] 7.3% ----------------------------------------------------------------- setup-alt-simplified [10] 100.0% [15] 3780(9.7%) 0(0.0%) simplify-alt ...ie/diff-of-prods/src/glue.rkt:76:0 ??? [29] 100.0% ----------------------------------------------------------------- loop [8] 100.0% [16] 964(2.5%) 314(0.8%) for-loop ...ie/diff-of-prods/src/points.rkt:200:24 for-loop [24] 67.4% ----------------------------------------------------------------- ??? [11] 100.0% [17] 466(1.2%) 466(1.2%) ??? ...lects/racket/contract/private/orc.rkt:83:14 ----------------------------------------------------------------- for-loop [12] 100.0% [18] 334(0.9%) 0(0.0%) run-iter! .../diff-of-prods/src/mainloop.rkt:215:0 localize-error [25] 100.0% ----------------------------------------------------------------- loop [14] 29.5% loop [8] 70.5% [19] 17114(43.8%) 0(0.0%) make-exacts* ...diff-of-prods/src/points.rkt:138:0 loop [41] 52.7% map [34] 47.3% ----------------------------------------------------------------- loop [8] 38.3% loop [14] 61.7% [20] 15412(39.4%) 314(0.8%) loop .../herbie/diff-of-prods/src/points.rkt:141:4 map [34] 98.0% ----------------------------------------------------------------- ??? [13] 100.0% [21] 6746(17.3%) 5696(14.6%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:819:4 ??? [42] 15.6% ----------------------------------------------------------------- ??? [13] 100.0% [22] 2980(7.6%) 1194(3.1%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:616:4 ??? [42] 59.9% ----------------------------------------------------------------- loop [14] 100.0% [23] 1152(2.9%) 332(0.8%) eval-prog .../diff-of-prods/src/programs.rkt:148:0 hash-ref! [27] 39.6% f6 [31] 31.6% ----------------------------------------------------------------- for-loop [16] 100.0% [24] 650(1.7%) 0(0.0%) for-loop ...ie/diff-of-prods/src/points.rkt:201:26 ??? [26] 100.0% ----------------------------------------------------------------- run-iter! [18] 100.0% [25] 334(0.9%) 0(0.0%) localize-error ...prods/src/core/localize.rkt:47:0 hash-ref! [27] 100.0% ----------------------------------------------------------------- f6 [31] 20.6% for-loop [24] 36.7% loop [41] 42.7% [26] 1770(4.5%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:342:33 ??? [29] 79.4% ??? [28] 20.6% ----------------------------------------------------------------- localize-error [25] 14.1% eval-prog [23] 19.2% ??? [3] 28.2% loop [41] 38.5% [27] 790(2.0%) 0(0.0%) hash-ref! ...racket/private/more-scheme.rkt:373:13 ??? [33] 38.5% parse-loop12 [30] 28.2% bigfloat-hash [32] 19.2% f6 [31] 14.1% ----------------------------------------------------------------- ??? [26] 4.7% ??? [2] 95.3% [28] 7680(19.6%) 290(0.7%) ??? ...contract/private/../../private/kw.rkt:761:9 real->bigfloat [35] 96.2% ----------------------------------------------------------------- ??? [26] 27.1% ??? [29] 36.4% simplify-alt [15] 36.4% [29] 5186(13.3%) 0(0.0%) ??? ...llects/racket/private/norm-define.rkt:53:83 ??? [29] 36.4% iterate-egraph!13 [36] 36.4% ??? [37] 14.6% loop [39] 6.8% for-loop [40] 5.7% ----------------------------------------------------------------- hash-ref! [27] 47.9% ??? [5] 52.1% [30] 698(1.8%) 364(0.9%) parse-loop12 ...s/racket/match/compiler.rkt:418:15 loop [41] 47.9% ----------------------------------------------------------------- f6 [31] 26.1% eval-prog [23] 26.1% hash-ref! [27] 47.9% [31] 698(1.8%) 0(0.0%) f6 ...et/collects/racket/match/compiler.rkt:507:40 map [34] 47.9% f6 [31] 26.1% ??? [26] 26.1% ----------------------------------------------------------------- hash-ref! [27] 100.0% [32] 456(1.2%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:165:0 sig+exp->bigfloat [38] 100.0% ----------------------------------------------------------------- hash-ref! [27] 100.0% [33] 456(1.2%) 0(0.0%) ??? ...herbie/diff-of-prods/src/programs.rkt:183:5 loop [41] 100.0% ----------------------------------------------------------------- ??? [3] 0.7% f6 [31] 0.7% make-exacts* [19] 34.4% loop [20] 64.2% [34] 23534(60.2%) 334(0.9%) map ...acket/collects/racket/private/map.rkt:20:13 loop [41] 99.3% ----------------------------------------------------------------- ??? [28] 100.0% [35] 7390(18.9%) 6252(16.0%) real->bigfloat .../private/bigfloat/mpfr.rkt:451:0 ??? [42] 15.4% ----------------------------------------------------------------- ??? [29] 100.0% [36] 3780(9.7%) 0(0.0%) iterate-egraph!13 ...s/src/core/simplify.rkt:102:0 one-iter [43] 100.0% ----------------------------------------------------------------- ??? [29] 100.0% [37] 756(1.9%) 756(1.9%) ??? ...racket/collects/racket/private/kw.rkt:761:9 ----------------------------------------------------------------- bigfloat-hash [32] 100.0% [38] 456(1.2%) 456(1.2%) sig+exp->bigfloat ...ivate/bigfloat/mpfr.rkt:385:0 ----------------------------------------------------------------- ??? [29] 100.0% [39] 352(0.9%) 0(0.0%) loop ...s/herbie/diff-of-prods/src/points.rkt:66:6 random-exp [44] 100.0% ----------------------------------------------------------------- ??? [29] 100.0% [40] 298(0.8%) 298(0.8%) for-loop ...rbie/diff-of-prods/src/points.rkt:47:4 ----------------------------------------------------------------- loop! [51] 0.2% parse-loop12 [30] 0.3% make-exacts* [19] 0.5% ??? [33] 1.3% map [34] 1.9% loop [41] 95.8% [41] 34064(87.1%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:25:19 loop [41] 95.8% ??? [2] 2.2% hash-ref! [27] 1.3% ??? [3] 0.4% loop! [51] 0.2% ??? [26] 0.0% ----------------------------------------------------------------- bfadd [21] 26.4% real->bigfloat [35] 28.6% bfneg [22] 44.9% [42] 3974(10.2%) 3974(10.2%) ??? .../share/racket/collects/ffi/unsafe.rkt:861:4 ----------------------------------------------------------------- iterate-egraph!13 [36] 100.0% [43] 3780(9.7%) 0(0.0%) one-iter ...f-of-prods/src/core/simplify.rkt:113:0 loop [45] 91.2% for-loop [46] 8.8% ----------------------------------------------------------------- loop [39] 100.0% [44] 352(0.9%) 352(0.9%) random-exp ...e/diff-of-prods/src/common.rkt:246:0 ----------------------------------------------------------------- one-iter [43] 100.0% [45] 3446(8.8%) 0(0.0%) loop ...cket/collects/racket/private/map.rkt:52:19 apply-match [47] 100.0% ----------------------------------------------------------------- for-loop [46] 50.0% one-iter [43] 50.0% [46] 334(0.9%) 0(0.0%) for-loop ...-of-prods/src/core/simplify.rkt:123:12 for-loop [46] 50.0% match-e [49] 50.0% ----------------------------------------------------------------- loop [45] 100.0% [47] 3446(8.8%) 0(0.0%) apply-match ...f-prods/src/core/simplify.rkt:130:2 for-loop [48] 80.2% match-e [49] 19.8% ----------------------------------------------------------------- apply-match [47] 100.0% [48] 2764(7.1%) 0(0.0%) for-loop ...-of-prods/src/core/simplify.rkt:145:10 merge-egraph-nodes! [50] 61.7% loop! [51] 38.3% ----------------------------------------------------------------- for-loop [46] 32.9% for-loop [53] 33.6% apply-match [47] 33.6% [49] 1016(2.6%) 0(0.0%) match-e .../diff-of-prods/src/core/ematch.rkt:46:0 for-loop [52] 50.4% for-loop [53] 33.6% ??? [54] 16.0% ----------------------------------------------------------------- merge-egraph-nodes! [50] 9.5% for-loop [60] 9.8% for-loop [48] 80.7% [50] 1706(4.4%) 0(0.0%) merge-egraph-nodes! ...s/src/core/egraph.rkt:152:0 update-leader! [55] 51.5% for-loop [57] 29.2% for-loop [60] 9.8% merge-egraph-nodes! [50] 9.5% ----------------------------------------------------------------- loop [41] 39.9% for-loop [48] 60.1% [51] 1058(2.7%) 0(0.0%) loop! ...ie/diff-of-prods/src/core/enode.rkt:192:2 loop [41] 39.9% custom-set-union [59] 31.6% set [58] 17.0% update-en-expr [69] 11.5% ----------------------------------------------------------------- match-e [49] 100.0% [52] 690(1.8%) 0(0.0%) for-loop ...iff-of-prods/src/core/ematch.rkt:59:11 list-cartesian-product [56]100.0% ----------------------------------------------------------------- match-e [49] 100.0% [53] 682(1.7%) 0(0.0%) for-loop ...iff-of-prods/src/core/ematch.rkt:65:37 match-e [49] 100.0% ----------------------------------------------------------------- match-e [49] 100.0% [54] 326(0.8%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:357:18 hash-has-key? [61] 100.0% ----------------------------------------------------------------- merge-egraph-nodes! [50] 100.0% [55] 1040(2.7%) 0(0.0%) update-leader! ...-prods/src/core/egraph.rkt:217:0 for-loop [62] 100.0% ----------------------------------------------------------------- list-cartesian-product [56] 25.8% for-loop [52] 74.2% [56] 690(1.8%) 690(1.8%) list-cartesian-product ...src/core/ematch.rkt:20:0 list-cartesian-product [56] 25.8% ----------------------------------------------------------------- merge-egraph-nodes! [50] 100.0% [57] 666(1.7%) 666(1.7%) for-loop ...iff-of-prods/src/core/egraph.rkt:232:6 ----------------------------------------------------------------- loop! [51] 100.0% [58] 360(0.9%) 360(0.9%) set ...collects/racket/private/set-types.rkt:981:0 ----------------------------------------------------------------- loop! [51] 100.0% [59] 334(0.9%) 0(0.0%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [63] 100.0% ----------------------------------------------------------------- merge-egraph-nodes! [50] 100.0% [60] 334(0.9%) 0(0.0%) for-loop ...ff-of-prods/src/core/egraph.rkt:200:10 merge-egraph-nodes! [50] 100.0% ----------------------------------------------------------------- ??? [54] 100.0% [61] 326(0.8%) 326(0.8%) hash-has-key? ...et/private/more-scheme.rkt:368:13 ----------------------------------------------------------------- update-leader! [55] 100.0% [62] 1040(2.7%) 0(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:222:6 for-loop [64] 100.0% ----------------------------------------------------------------- custom-set-union [59] 100.0% [63] 334(0.9%) 0(0.0%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [65] 100.0% ----------------------------------------------------------------- for-loop [62] 100.0% [64] 1040(2.7%) 0(0.0%) for-loop ...iff-of-prods/src/core/egraph.rkt:223:8 hash-update! [66] 100.0% ----------------------------------------------------------------- for-loop [63] 100.0% [65] 334(0.9%) 334(0.9%) for-loop ...cts/racket/private/set-types.rkt:178:5 ----------------------------------------------------------------- for-loop [64] 100.0% [66] 1040(2.7%) 0(0.0%) hash-update! ...ket/private/more-scheme.rkt:362:13 ??? [67] 100.0% ----------------------------------------------------------------- hash-update! [66] 100.0% [67] 1040(2.7%) 0(0.0%) ??? ...ie/diff-of-prods/src/core/egraph.rkt:225:24 for-loop [68] 100.0% ----------------------------------------------------------------- ??? [67] 100.0% [68] 1040(2.7%) 684(1.7%) for-loop ...ff-of-prods/src/core/egraph.rkt:226:26 update-en-expr [69] 34.2% ----------------------------------------------------------------- for-loop [68] 49.4% loop! [51] 50.6% [69] 720(1.8%) 720(1.8%) update-en-expr ...-prods/src/core/egraph.rkt:211:0 -----------------------------------------------------------------