Profiling results ----------------- Total cpu time observed: 158832ms (out of 159292ms) Number of samples taken: 528 (once every 301ms) (Hiding functions with self<1.0% and local<2.0%: 7 of 81 hidden) ===================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ===================================================================== ??? [5] 100.0% [1] 158832(100.0%) 0(0.0%) profile-thunk16 ...e/pkgs/profile-lib/main.rkt:9:0 run [3] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [2] 153884(96.9%) 0(0.0%) run-improve40 ...ie/develop/src/mainloop.rkt:336:0 simplify! [4] 100.0% --------------------------------------------------------------------- profile-thunk16 [1] 100.0% [3] 158832(100.0%) 0(0.0%) run ...et-7.0/share/pkgs/profile-lib/main.rkt:39:2 ??? [5] 100.0% --------------------------------------------------------------------- run-improve40 [2] 100.0% [4] 153884(96.9%) 0(0.0%) simplify! ...herbie/develop/src/mainloop.rkt:213:0 ??? [6] 100.0% --------------------------------------------------------------------- run [3] 50.0% [5] 158832(100.0%) 0(0.0%) ??? ...lects/racket/private/more-scheme.rkt:261:28 profile-thunk16 [1] 50.0% run-improve40 [2] 48.4% prepare-points-intervals [8] 0.7% errors [9] 0.7% eval-errors [10] 0.1% --------------------------------------------------------------------- simplify! [4] 100.0% [6] 153884(96.9%) 0(0.0%) ??? ...s/herbie/develop/src/core/simplify.rkt:26:0 for-loop [7] 100.0% --------------------------------------------------------------------- ??? [6] 100.0% [7] 153884(96.9%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:33:2 one-iter [11] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [8] 2202(1.4%) 0(0.0%) prepare-points-intervals ...p/src/points.rkt:133:0 loop [12] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [9] 2194(1.4%) 0(0.0%) errors ...lies/herbie/develop/src/points.rkt:228:0 for-loop [13] 100.0% --------------------------------------------------------------------- ??? [5] 100.0% [10] 272(0.2%) 0(0.0%) eval-errors ...herbie/develop/src/points.rkt:203:0 for-loop [14] 100.0% --------------------------------------------------------------------- for-loop [7] 100.0% [11] 153884(96.9%) 0(0.0%) one-iter ...bie/develop/src/core/simplify.rkt:86:0 for-loop [15] 87.3% find-matches [16] 12.5% for-loop [19] 0.2% --------------------------------------------------------------------- prepare-points-intervals [8]100.0% [12] 2202(1.4%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:145:4 loop [17] 74.8% ??? [18] 25.2% --------------------------------------------------------------------- errors [9] 100.0% [13] 2194(1.4%) 2194(1.4%) for-loop ...es/herbie/develop/src/points.rkt:230:2 --------------------------------------------------------------------- eval-errors [10] 100.0% [14] 272(0.2%) 0(0.0%) for-loop ...es/herbie/develop/src/points.rkt:205:2 point-error [20] 100.0% --------------------------------------------------------------------- one-iter [11] 100.0% [15] 134326(84.6%) 0(0.0%) for-loop ...bie/develop/src/core/simplify.rkt:95:2 loop [21] 100.0% --------------------------------------------------------------------- one-iter [11] 100.0% [16] 19260(12.1%) 0(0.0%) find-matches ...develop/src/core/simplify.rkt:56:0 for-loop [22] 100.0% --------------------------------------------------------------------- loop [12] 100.0% [17] 1646(1.0%) 0(0.0%) loop ...htlies/herbie/develop/src/points.rkt:104:2 ??? [23] 100.0% --------------------------------------------------------------------- loop [12] 100.0% [18] 556(0.4%) 308(0.2%) ??? ...ghtlies/herbie/develop/src/points.rkt:129:2 ??? [28] 44.6% --------------------------------------------------------------------- one-iter [11] 100.0% [19] 298(0.2%) 0(0.0%) for-loop ...ie/develop/src/core/simplify.rkt:111:2 set-precompute! [24] 100.0% --------------------------------------------------------------------- for-loop [14] 100.0% [20] 272(0.2%) 0(0.0%) point-error ...herbie/develop/src/points.rkt:195:0 ulp-difference [25] 100.0% --------------------------------------------------------------------- loop [21] 0.6% for-loop [15] 99.4% [21] 134326(84.6%) 0(0.0%) loop ...herbie/develop/src/core/simplify.rkt:100:4 apply-match [26] 99.4% loop [21] 0.6% --------------------------------------------------------------------- for-loop [22] 47.7% find-matches [16] 52.3% [22] 19260(12.1%) 3044(1.9%) for-loop ...bie/develop/src/core/simplify.rkt:58:8 for-loop [22] 47.7% match-e [31] 42.1% --------------------------------------------------------------------- loop [17] 100.0% [23] 1646(1.0%) 0(0.0%) ??? ...tlies/herbie/develop/src/programs.rkt:146:2 ??? [27] 85.4% ??? [28] 14.6% --------------------------------------------------------------------- for-loop [19] 100.0% [24] 298(0.2%) 0(0.0%) set-precompute! ...lop/src/core/simplify.rkt:117:0 for-loop [29] 100.0% --------------------------------------------------------------------- point-error [20] 100.0% [25] 272(0.2%) 272(0.2%) ulp-difference ...erbie/develop/src/float.rkt:14:0 --------------------------------------------------------------------- loop [21] 100.0% [26] 134326(84.6%) 300(0.2%) apply-match .../develop/src/core/simplify.rkt:65:0 for-loop [30] 93.7% match-e [31] 4.6% set [51] 0.9% --------------------------------------------------------------------- ??? [23] 100.0% [27] 1406(0.9%) 0(0.0%) ??? ...t-7.0/collects/racket/private/kw.rkt:592:14 ??? [32] 100.0% --------------------------------------------------------------------- ??? [23] 49.2% ??? [18] 50.8% [28] 488(0.3%) 0(0.0%) ??? ...tract/private/arrow-higher-order.rkt:357:33 sample-multi-bounded [33] 50.8% mk-ival [34] 49.2% --------------------------------------------------------------------- set-precompute! [24] 100.0% [29] 298(0.2%) 298(0.2%) for-loop ...ie/develop/src/core/simplify.rkt:119:2 --------------------------------------------------------------------- apply-match [26] 100.0% [30] 125928(79.3%) 1230(0.8%) for-loop ...bie/develop/src/core/simplify.rkt:78:2 merge-egraph-nodes! [35] 55.4% dedup-children! [48] 41.7% substitute-e [37] 1.0% mk-enode! [54] 1.0% --------------------------------------------------------------------- apply-match [26] 16.8% for-loop [41] 25.5% for-loop [22] 57.8% [31] 22416(14.1%) 5800(3.7%) match-e ...herbie/develop/src/core/ematch.rkt:39:0 for-loop [36] 74.5% ??? [69] 2.7% variable? [43] 2.0% --------------------------------------------------------------------- ??? [27] 100.0% [32] 1406(0.9%) 340(0.2%) ??? ...tract/private/arrow-higher-order.rkt:361:33 ival-add [38] 75.8% --------------------------------------------------------------------- ??? [28] 100.0% [33] 248(0.2%) 248(0.2%) sample-multi-bounded ...evelop/src/points.rkt:16:0 --------------------------------------------------------------------- ??? [28] 100.0% [34] 240(0.2%) 0(0.0%) mk-ival ...herbie/develop/src/biginterval.rkt:59:0 bf [39] 100.0% --------------------------------------------------------------------- merge-egraph-nodes! [35] 3.0% for-loop [30] 96.7% [35] 69702(43.9%) 0(0.0%) merge-egraph-nodes! ...p/src/core/egraph.rkt:145:0 loop! [40] 89.5% update-leader! [42] 3.8% merge-egraph-nodes! [35] 3.0% dedup-children! [48] 3.0% --------------------------------------------------------------------- match-e [31] 100.0% [36] 19222(12.1%) 10144(6.4%) for-loop ...rbie/develop/src/core/ematch.rkt:52:11 for-loop [41] 50.3% foldl [47] 2.2% foldr [45] 1.5% --------------------------------------------------------------------- for-loop [44] 42.3% for-loop [30] 57.7% [37] 1226(0.8%) 0(0.0%) substitute-e ...e/develop/src/core/ematch.rkt:64:0 for-loop [44] 66.8% variable? [43] 21.2% ??? [69] 12.0% --------------------------------------------------------------------- ??? [32] 100.0% [38] 1066(0.7%) 492(0.3%) ival-add ...erbie/develop/src/biginterval.rkt:96:0 bfadd [46] 53.8% --------------------------------------------------------------------- mk-ival [34] 100.0% [39] 240(0.2%) 0(0.0%) bf ...ath-lib/math/private/bigfloat/mpfr.rkt:601:2 new-mpfr [55] 100.0% --------------------------------------------------------------------- loop [49] 33.9% merge-egraph-nodes! [35] 66.1% [40] 64448(40.6%) 14646(9.2%) loop! ...s/herbie/develop/src/core/enode.rkt:191:2 custom-set-union [50] 37.9% loop [49] 37.3% set [51] 11.6% update-en-expr [52] 2.7% --------------------------------------------------------------------- for-loop [36] 100.0% [41] 11946(7.5%) 1280(0.8%) for-loop ...rbie/develop/src/core/ematch.rkt:58:37 match-e [31] 87.9% ??? [58] 4.2% --------------------------------------------------------------------- merge-egraph-nodes! [35] 100.0% [42] 2764(1.7%) 494(0.3%) update-leader! ...evelop/src/core/egraph.rkt:213:0 for-loop [53] 82.1% --------------------------------------------------------------------- substitute-e [37] 34.7% match-e [31] 65.3% [43] 1820(1.1%) 334(0.2%) variable? .../develop/src/syntax/syntax.rkt:1159:0 ??? [69] 81.6% --------------------------------------------------------------------- substitute-e [37] 100.0% [44] 1226(0.8%) 0(0.0%) for-loop ...rbie/develop/src/core/ematch.rkt:73:24 substitute-e [37] 75.5% mk-enode! [54] 24.5% --------------------------------------------------------------------- for-loop [36] 100.0% [45] 586(0.4%) 0(0.0%) foldr ....0/collects/racket/private/list.rkt:242:4 cp-2 [56] 100.0% --------------------------------------------------------------------- ival-add [38] 100.0% [46] 574(0.4%) 0(0.0%) bfadd ...-lib/math/private/bigfloat/mpfr.rkt:821:4 new-mpfr [55] 100.0% --------------------------------------------------------------------- for-loop [36] 100.0% [47] 546(0.3%) 0(0.0%) foldl ....0/collects/racket/private/list.rkt:229:4 merge2 [57] 100.0% --------------------------------------------------------------------- merge-egraph-nodes! [35] 4.0% for-loop [30] 95.5% [48] 55050(34.7%) 286(0.2%) dedup-children! ...evelop/src/core/enode.rkt:199:0 loop [59] 99.5% --------------------------------------------------------------------- loop! [40] 6.5% loop [49] 93.5% [49] 43026(27.1%) 2440(1.5%) loop ...-7.0/collects/racket/private/map.rkt:40:19 loop [49] 93.5% loop! [40] 6.4% --------------------------------------------------------------------- loop! [40] 100.0% [50] 28120(17.7%) 8420(5.3%) custom-set-union ...et/private/set-types.rkt:168:0 for-loop [60] 59.8% for-loop [61] 10.3% --------------------------------------------------------------------- apply-match [26] 7.0% loop! [40] 93.0% [51] 17182(10.8%) 15974(10.1%) set ...collects/racket/private/set-types.rkt:981:0 for-loop [62] 7.0% --------------------------------------------------------------------- loop! [40] 100.0% [52] 3548(2.2%) 3548(2.2%) update-en-expr ...evelop/src/core/egraph.rkt:207:0 --------------------------------------------------------------------- update-leader! [42] 100.0% [53] 2270(1.4%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:218:6 hash-update! [70] 60.4% for-loop [63] 39.6% --------------------------------------------------------------------- for-loop [44] 19.9% for-loop [30] 80.1% [54] 1510(1.0%) 880(0.6%) mk-enode! ...rbie/develop/src/core/egraph.rkt:99:0 new-enode [65] 21.9% hash-has-key? [66] 19.9% --------------------------------------------------------------------- bf [39] 29.5% bfadd [46] 70.5% [55] 814(0.5%) 814(0.5%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:335:0 --------------------------------------------------------------------- foldr [45] 100.0% [56] 586(0.4%) 298(0.2%) cp-2 .../racket-7.0/collects/racket/list.rkt:826:2 for-loop [67] 49.1% --------------------------------------------------------------------- foldl [47] 100.0% [57] 546(0.3%) 546(0.3%) merge2 .../herbie/develop/src/core/ematch.rkt:24:0 --------------------------------------------------------------------- for-loop [41] 100.0% [58] 502(0.3%) 0(0.0%) ??? ...ies/herbie/develop/src/core/ematch.rkt:43:5 for-loop [64] 100.0% --------------------------------------------------------------------- dedup-children! [48] 10.0% loop [59] 90.0% [59] 54764(34.5%) 54764(34.5%) loop ...racket-7.0/collects/racket/list.rkt:434:17 loop [59] 90.0% --------------------------------------------------------------------- custom-set-union [50] 100.0% [60] 16816(10.6%) 5400(3.4%) for-loop ...cts/racket/private/set-types.rkt:174:3 for-loop [68] 67.9% --------------------------------------------------------------------- custom-set-union [50] 100.0% [61] 2884(1.8%) 2884(1.8%) for-loop ...cts/racket/private/set-types.rkt:152:2 --------------------------------------------------------------------- set [51] 100.0% [62] 1208(0.8%) 1208(0.8%) for-loop ...cts/racket/private/set-types.rkt:937:4 --------------------------------------------------------------------- for-loop [53] 100.0% [63] 898(0.6%) 0(0.0%) for-loop ...rbie/develop/src/core/egraph.rkt:219:8 hash-update! [70] 100.0% --------------------------------------------------------------------- ??? [58] 100.0% [64] 502(0.3%) 336(0.2%) for-loop ...erbie/develop/src/core/ematch.rkt:44:7 ??? [69] 33.1% --------------------------------------------------------------------- mk-enode! [54] 100.0% [65] 330(0.2%) 0(0.0%) new-enode ...erbie/develop/src/core/enode.rkt:96:0 type-of-enode-expr [71] 100.0% --------------------------------------------------------------------- mk-enode! [54] 100.0% [66] 300(0.2%) 300(0.2%) hash-has-key? ...ket/private/more-scheme.rkt:371:2 --------------------------------------------------------------------- cp-2 [56] 100.0% [67] 288(0.2%) 288(0.2%) for-loop ...ket-7.0/collects/racket/list.rkt:827:4 --------------------------------------------------------------------- for-loop [60] 100.0% [68] 11416(7.2%) 11416(7.2%) for-loop ...cts/racket/private/set-types.rkt:178:5 --------------------------------------------------------------------- for-loop [64] 4.8% substitute-e [37] 8.5% variable? [43] 42.9% match-e [31] 43.8% [69] 3460(2.2%) 3460(2.2%) ??? ...contract/private/arrow-val-first.rkt:388:18 --------------------------------------------------------------------- for-loop [63] 39.6% for-loop [53] 60.4% [70] 2270(1.4%) 0(0.0%) hash-update! ...cket/private/more-scheme.rkt:365:4 ??? [72] 100.0% --------------------------------------------------------------------- new-enode [65] 100.0% [71] 330(0.2%) 0(0.0%) type-of-enode-expr ...elop/src/core/enode.rkt:69:0 table-ref [73] 100.0% --------------------------------------------------------------------- hash-update! [70] 100.0% [72] 2270(1.4%) 0(0.0%) ??? ...s/herbie/develop/src/core/egraph.rkt:221:24 for-loop [74] 100.0% --------------------------------------------------------------------- type-of-enode-expr [71] 100.0% [73] 330(0.2%) 330(0.2%) table-ref ...es/herbie/develop/src/common.rkt:42:0 --------------------------------------------------------------------- ??? [72] 100.0% [74] 2270(1.4%) 2270(1.4%) for-loop ...bie/develop/src/core/egraph.rkt:222:26 ---------------------------------------------------------------------