Profiling results ----------------- Total cpu time observed: 52702ms (out of 54027ms) Number of samples taken: 180 (once every 293ms) (Hiding functions with self<1.0% and local<2.0%: 2 of 97 hidden) ======================================================================== Caller Idx Total Self Name+src Local% ms(pct) ms(pct) Callee ======================================================================== [1] 52702(100.0%) 0(0.0%) ??? ...are/racket/collects/racket/engine.rkt:42:24 profile-thunk [2] 100.0% ------------------------------------------------------------------------ ??? [1] 100.0% [2] 52702(100.0%) 0(0.0%) profile-thunk ...ket/pkgs/profile-lib/main.rkt:9:0 ??? [3] 100.0% ------------------------------------------------------------------------ profile-thunk [2] 100.0% [3] 52702(100.0%) 0(0.0%) ??? ...hare/racket/pkgs/profile-lib/main.rkt:40:10 ??? [4] 100.0% ------------------------------------------------------------------------ ??? [3] 100.0% [4] 52702(100.0%) 0(0.0%) ??? ...ies/herbie/alt-testing/src/sandbox.rkt:49:6 prepare-points [10] 83.8% run-improve [5] 16.2% ------------------------------------------------------------------------ ??? [4] 100.0% [5] 8562(16.2%) 0(0.0%) run-improve .../alt-testing/src/mainloop.rkt:225:0 setup-alt-simplified [6] 48.5% setup-prog! [7] 25.9% run-iter! [8] 16.0% get-final-combination [9] 6.5% ??? [19] 3.2% ------------------------------------------------------------------------ run-improve [5] 100.0% [6] 4148(7.9%) 0(0.0%) setup-alt-simplified ...-testing/src/glue.rkt:49:0 simplify-alt [11] 100.0% ------------------------------------------------------------------------ run-improve [5] 100.0% [7] 2216(4.2%) 0(0.0%) setup-prog! ...e/alt-testing/src/mainloop.rkt:72:0 prepare-points [10] 87.5% setup-prog [14] 12.5% ------------------------------------------------------------------------ run-improve [5] 100.0% [8] 1370(2.6%) 0(0.0%) run-iter! ...ie/alt-testing/src/mainloop.rkt:206:0 localize! [12] 80.1% choose-best-alt! [15] 19.9% ------------------------------------------------------------------------ run-improve [5] 100.0% [9] 554(1.1%) 0(0.0%) get-final-combination ...ng/src/mainloop.rkt:255:0 extract-alt [13] 50.3% ??? [72] 49.7% ------------------------------------------------------------------------ setup-prog! [7] 4.2% ??? [4] 95.8% [10] 46080(87.4%) 0(0.0%) prepare-points ...alt-testing/src/points.rkt:214:0 loop [21] 64.0% make-exacts [16] 35.4% make-exacts* [23] 0.6% ------------------------------------------------------------------------ setup-alt-simplified [6] 100.0% [11] 4148(7.9%) 0(0.0%) simplify-alt ...rbie/alt-testing/src/glue.rkt:76:0 simplify [17] 100.0% ------------------------------------------------------------------------ run-iter! [8] 100.0% [12] 1098(2.1%) 0(0.0%) localize! ...ie/alt-testing/src/mainloop.rkt:115:0 localize-error [18] 100.0% ------------------------------------------------------------------------ get-final-combination [9] 100.0% [13] 278(0.5%) 0(0.0%) extract-alt ...erbie/alt-testing/src/glue.rkt:55:0 argmins [20] 100.0% ------------------------------------------------------------------------ setup-prog! [7] 100.0% [14] 276(0.5%) 0(0.0%) setup-prog ...herbie/alt-testing/src/glue.rkt:40:0 ??? [19] 100.0% ------------------------------------------------------------------------ run-iter! [8] 100.0% [15] 272(0.5%) 0(0.0%) choose-best-alt! ...testing/src/mainloop.rkt:106:0 ??? [19] 100.0% ------------------------------------------------------------------------ prepare-points [10] 100.0% [16] 16317(31.0%) 0(0.0%) make-exacts ...ie/alt-testing/src/points.rkt:156:0 loop [21] 93.2% make-exacts* [23] 6.8% ------------------------------------------------------------------------ ??? [72] 6.2% simplify-alt [11] 93.8% [17] 4424(8.4%) 0(0.0%) simplify ...alt-testing/src/core/simplify.rkt:43:0 ??? [22] 100.0% ------------------------------------------------------------------------ localize! [12] 100.0% [18] 1098(2.1%) 0(0.0%) localize-error ...sting/src/core/localize.rkt:47:0 hash-ref! [52] 100.0% ------------------------------------------------------------------------ run-improve [5] 33.2% choose-best-alt! [15] 33.2% setup-prog [14] 33.7% [19] 822(1.6%) 0(0.0%) ??? ...contract/private/arrow-val-first.rkt:486:18 make-alt-table [25] 33.7% atab-pick-alt [26] 33.2% atab-add-altns [27] 33.2% ------------------------------------------------------------------------ best-alt [85] 49.5% extract-alt [13] 50.5% [20] 551(1.0%) 0(0.0%) argmins ...herbie/alt-testing/src/common.rkt:152:0 composed [24] 100.0% ------------------------------------------------------------------------ make-exacts [16] 34.0% prepare-points [10] 66.0% [21] 44688(84.8%) 0(0.0%) loop ...es/herbie/alt-testing/src/points.rkt:141:4 loop [32] 100.0% ------------------------------------------------------------------------ simplify [17] 100.0% [22] 4424(8.4%) 0(0.0%) ??? ...rbie/alt-testing/src/core/simplify.rkt:77:0 iterate-egraph! [28] 81.3% loop [30] 18.7% ------------------------------------------------------------------------ prepare-points [10] 20.3% make-exacts [16] 79.7% [23] 1392(2.6%) 0(0.0%) make-exacts* ...e/alt-testing/src/points.rkt:138:0 eval-prog [29] 100.0% ------------------------------------------------------------------------ argmins [20] 100.0% [24] 551(1.0%) 0(0.0%) composed ...ollects/racket/private/list.rkt:340:16 errors [38] 100.0% ------------------------------------------------------------------------ ??? [19] 100.0% [25] 276(0.5%) 0(0.0%) make-alt-table ...ting/src/core/alt-table.rkt:34:0 errors [38] 100.0% ------------------------------------------------------------------------ ??? [19] 100.0% [26] 272(0.5%) 0(0.0%) atab-pick-alt ...sting/src/core/alt-table.rkt:64:0 ??? [72] 100.0% ------------------------------------------------------------------------ ??? [19] 100.0% [27] 272(0.5%) 0(0.0%) atab-add-altns ...ting/src/core/alt-table.rkt:52:0 atab-add-altn [31] 100.0% ------------------------------------------------------------------------ ??? [22] 100.0% [28] 3598(6.8%) 0(0.0%) iterate-egraph! ...ing/src/core/simplify.rkt:105:0 one-iter [33] 92.4% loop [32] 7.6% ------------------------------------------------------------------------ errors [38] 28.3% make-exacts* [23] 71.7% [29] 1941(3.7%) 272(0.5%) eval-prog ...ie/alt-testing/src/programs.rkt:150:0 compile [46] 71.7% f138 [64] 14.2% ------------------------------------------------------------------------ ??? [22] 100.0% [30] 826(1.6%) 0(0.0%) loop ...ie/alt-testing/src/core/simplify.rkt:237:2 loop [34] 66.6% mk-min [35] 33.4% ------------------------------------------------------------------------ atab-add-altns [27] 100.0% [31] 272(0.5%) 0(0.0%) atab-add-altn ...ting/src/core/alt-table.rkt:239:0 best-and-tied-at-points [36] 100.0% ------------------------------------------------------------------------ iterate-egraph! [28] 0.0% loop [21] 0.4% f138 [64] 1.1% ??? [62] 2.5% loop [32] 96.0% [32] 48004(91.1%) 0(0.0%) loop .../private/map.rkt:40:19 loop [32] 96.0% hash-ref! [52] 2.5% composed [39] 0.6% f138 [64] 0.5% ??? [45] 0.4% bf-complex-mult [51] 0.0% ??? [54] 0.0% ??? [72] 0.0% ------------------------------------------------------------------------ iterate-egraph! [28] 100.0% [33] 3324(6.3%) 0(0.0%) one-iter ...lt-testing/src/core/simplify.rkt:116:0 rule-valid-at-type? [37] 41.7% mk-enode! [47] 16.6% match-e [41] 8.4% substitute-e [43] 8.4% custom-set-member? [42] 8.4% update-leader! [49] 8.3% merge-egraph-nodes! [44] 8.2% ------------------------------------------------------------------------ loop [30] 100.0% [34] 550(1.0%) 0(0.0%) loop ...hare/racket/collects/racket/list.rkt:796:4 expression-cost [40] 100.0% ------------------------------------------------------------------------ loop [30] 100.0% [35] 276(0.5%) 0(0.0%) mk-min ...re/racket/collects/racket/list.rkt:786:0 expression-cost [40] 100.0% ------------------------------------------------------------------------ atab-add-altn [31] 100.0% [36] 272(0.5%) 0(0.0%) best-and-tied-at-points ...ore/alt-table.rkt:153:0 errors [38] 100.0% ------------------------------------------------------------------------ one-iter [33] 100.0% [37] 1385(2.6%) 834(1.6%) rule-valid-at-type? .../src/syntax/rules.rkt:548:0 *complex-rules* [48] 39.8% ------------------------------------------------------------------------ best-and-tied-at-points [36] 24.8% make-alt-table [25] 25.1% composed [24] 50.1% [38] 1100(2.1%) 0(0.0%) errors .../herbie/alt-testing/src/points.rkt:271:0 ??? [45] 50.1% eval-prog [29] 49.9% ------------------------------------------------------------------------ loop [32] 100.0% [39] 1098(2.1%) 0(0.0%) composed ...ollects/racket/private/list.rkt:341:16 hash-ref! [52] 100.0% ------------------------------------------------------------------------ mk-min [35] 33.4% loop [34] 66.6% [40] 826(1.6%) 0(0.0%) expression-cost ...-testing/src/programs.rkt:209:0 table-ref [82] 66.7% compile [46] 33.3% ------------------------------------------------------------------------ one-iter [33] 100.0% [41] 280(0.5%) 0(0.0%) match-e ...ie/alt-testing/src/core/ematch.rkt:46:0 list-cartesian-product [50] 100.0% ------------------------------------------------------------------------ one-iter [33] 100.0% [42] 278(0.5%) 278(0.5%) custom-set-member? ...t/private/set-types.rkt:45:0 ------------------------------------------------------------------------ substitute-e [43] 50.0% one-iter [33] 50.0% [43] 278(0.5%) 0(0.0%) substitute-e ...t-testing/src/core/ematch.rkt:71:0 substitute-e [43] 50.0% mk-enode! [47] 50.0% ------------------------------------------------------------------------ one-iter [33] 100.0% [44] 274(0.5%) 0(0.0%) merge-egraph-nodes! ...g/src/core/egraph.rkt:153:0 update-leader! [49] 100.0% ------------------------------------------------------------------------ errors [38] 1.2% loop [32] 98.8% [45] 44959(85.3%) 6126(11.6%) ??? ...s/herbie/alt-testing/src/programs.rkt:156:4 bf-complex-mult [51] 72.3% bf-complex-add [53] 5.9% ??? [55] 3.4% ??? [54] 3.4% ??? [72] 1.4% ------------------------------------------------------------------------ expression-cost [40] 16.5% eval-prog [29] 83.5% [46] 1666(3.2%) 0(0.0%) compile ...rbie/alt-testing/src/programs.rkt:186:0 hash-ref! [52] 100.0% ------------------------------------------------------------------------ substitute-e [43] 33.5% one-iter [33] 66.5% [47] 830(1.6%) 0(0.0%) mk-enode! ...alt-testing/src/core/egraph.rkt:102:0 new-enode [56] 100.0% ------------------------------------------------------------------------ rule-valid-at-type? [37] 100.0% [48] 552(1.0%) 0(0.0%) *complex-rules* ...ting/src/syntax/rules.rkt:560:0 list-member? [58] 50.0% reverse [59] 50.0% ------------------------------------------------------------------------ merge-egraph-nodes! [44] 49.7% one-iter [33] 50.3% [49] 551(1.0%) 0(0.0%) update-leader! ...esting/src/core/egraph.rkt:218:0 do-hash-update [57] 100.0% ------------------------------------------------------------------------ match-e [41] 100.0% [50] 280(0.5%) 280(0.5%) list-cartesian-product ...src/core/ematch.rkt:20:0 ------------------------------------------------------------------------ loop [32] 1.6% ??? [45] 98.4% [51] 33032(62.7%) 1447(2.7%) bf-complex-mult ...testing/src/bigcomplex.rkt:33:0 bf* [60] 43.2% ??? [70] 34.1% ??? [61] 14.7% bigcomplex-im [65] 2.7% ------------------------------------------------------------------------ localize-error [18] 4.5% compile [46] 15.9% composed [39] 35.2% loop [32] 44.4% [52] 2764(5.2%) 274(0.5%) hash-ref! .../racket/private/more-scheme.rkt:377:2 ??? [62] 44.4% f138 [64] 39.7% bigfloat-hash [63] 12.6% ------------------------------------------------------------------------ ??? [45] 100.0% [53] 2660(5.0%) 0(0.0%) bf-complex-add ...-testing/src/bigcomplex.rkt:22:0 ??? [70] 87.3% ??? [61] 12.7% ------------------------------------------------------------------------ loop [32] 15.4% ??? [45] 84.6% [54] 1784(3.4%) 1784(3.4%) ??? ...rivate/unconstrained-domain-arrow.rkt:40:13 ------------------------------------------------------------------------ ??? [45] 100.0% [55] 1546(2.9%) 927(1.8%) ??? ...ects/racket/contract/private/prop.rkt:567:4 ??? [66] 40.0% ------------------------------------------------------------------------ mk-enode! [47] 100.0% [56] 830(1.6%) 0(0.0%) new-enode ...e/alt-testing/src/core/enode.rkt:97:0 type-of-enode-expr [67] 67.0% make-immutable-set [69] 33.0% ------------------------------------------------------------------------ update-leader! [49] 100.0% [57] 551(1.0%) 0(0.0%) do-hash-update ...et/private/more-scheme.rkt:343:2 ??? [68] 100.0% ------------------------------------------------------------------------ *complex-rules* [48] 100.0% [58] 276(0.5%) 276(0.5%) list-member? ...llects/racket/private/set.rkt:24:0 ------------------------------------------------------------------------ *complex-rules* [48] 100.0% [59] 276(0.5%) 276(0.5%) reverse ...collects/racket/private/reverse.rkt:6:4 ------------------------------------------------------------------------ bf-complex-mult [51] 100.0% [60] 14264(27.1%) 280(0.5%) bf* ...ath/private/bigfloat/bigfloat-mpfr.rkt:95:0 ??? [70] 98.0% ------------------------------------------------------------------------ bf-complex-add [53] 6.5% bf-complex-mult [51] 93.5% [61] 5198(9.9%) 652(1.2%) ??? .../private/arrow-higher-order.rkt:379:33 ??? [71] 81.9% ??? [79] 5.5% ------------------------------------------------------------------------ hash-ref! [52] 100.0% [62] 1666(3.2%) 0(0.0%) ??? ...s/herbie/alt-testing/src/programs.rkt:194:5 loop [32] 100.0% ------------------------------------------------------------------------ hash-ref! [52] 100.0% [63] 1392(2.6%) 0(0.0%) bigfloat-hash ...h/private/bigfloat/mpfr.rkt:168:0 bfcanonicalize [73] 100.0% ------------------------------------------------------------------------ eval-prog [29] 1.8% loop [76] 2.5% loop [32] 18.3% hash-ref! [52] 77.3% [64] 1374(2.6%) 0(0.0%) f138 .../collects/racket/match/compiler.rkt:548:40 loop [32] 93.1% loop [76] 2.5% ulp-difference [75] 2.5% ??? [72] 1.8% ------------------------------------------------------------------------ bf-complex-mult [51] 100.0% [65] 906(1.7%) 906(1.7%) bigcomplex-im (unknown source) ------------------------------------------------------------------------ ??? [55] 100.0% [66] 618(1.2%) 618(1.2%) ??? ...ects/racket/contract/private/orc.rkt:112:15 ------------------------------------------------------------------------ new-enode [56] 100.0% [67] 556(1.1%) 0(0.0%) type-of-enode-expr ...ting/src/core/enode.rkt:68:0 get-sigs [74] 100.0% ------------------------------------------------------------------------ do-hash-update [57] 100.0% [68] 551(1.0%) 551(1.0%) ??? ...rbie/alt-testing/src/core/egraph.rkt:226:24 ------------------------------------------------------------------------ new-enode [56] 100.0% [69] 274(0.5%) 274(0.5%) make-immutable-set .../private/set-types.rkt:948:0 ------------------------------------------------------------------------ bf-complex-add [53] 8.4% bf-complex-mult [51] 40.8% bf* [60] 50.7% [70] 27556(52.3%) 2352(4.5%) ??? ...-racket/utils/simple-result-arrow.rkt:39:12 bfmul [77] 75.5% bfneg [78] 12.9% ^TYPE? [88] 3.1% ------------------------------------------------------------------------ ??? [61] 100.0% [71] 4258(8.1%) 1616(3.1%) ??? ...cts/racket/contract/private/list.rkt:215:14 ??? [79] 34.6% check-list [81] 27.5% ------------------------------------------------------------------------ atab-pick-alt [26] 15.7% get-final-combination [9] 15.9% f138 [64] 15.9% loop [32] 16.2% ??? [45] 36.3% [72] 1736(3.3%) 318(0.6%) ??? ...tract/private/arrow-higher-order.rkt:375:33 ??? [79] 18.1% ->flonum [84] 16.2% ...sting/src/common.rkt:47:2 [83] 15.9% simplify [17] 15.9% best-alt [85] 15.7% ------------------------------------------------------------------------ bigfloat-hash [63] 100.0% [73] 1392(2.6%) 0(0.0%) bfcanonicalize .../private/bigfloat/mpfr.rkt:158:0 bitwise-first-bit-set [80] 100.0% ------------------------------------------------------------------------ type-of-enode-expr [67] 100.0% [74] 556(1.1%) 0(0.0%) get-sigs ...bie/alt-testing/src/type-check.rkt:5:0 table-ref [82] 100.0% ------------------------------------------------------------------------ f138 [64] 100.0% [75] 280(0.5%) 0(0.0%) ulp-difference ...e/alt-testing/src/float.rkt:19:0 ...sting/src/common.rkt:47:2 [83]100.0% ------------------------------------------------------------------------ f138 [64] 5.6% loop [76] 94.4% [76] 280(0.5%) 0(0.0%) loop .../private/map.rkt:54:19 loop [76] 94.4% f138 [64] 5.6% ------------------------------------------------------------------------ ??? [70] 100.0% [77] 20796(39.5%) 8747(16.6%) bfmul ...-lib/math/private/bigfloat/mpfr.rkt:846:4 new-mpfr [86] 40.7% ??? [87] 14.2% ??? [90] 3.1% ------------------------------------------------------------------------ ??? [70] 100.0% [78] 3544(6.7%) 1478(2.8%) bfneg ...-lib/math/private/bigfloat/mpfr.rkt:635:4 new-mpfr [86] 42.6% ??? [87] 15.7% ------------------------------------------------------------------------ ??? [61] 13.9% ??? [72] 15.1% ??? [71] 71.0% [79] 2074(3.9%) 914(1.7%) ??? ...ects/racket/contract/private/guts.rkt:794:8 ^TYPE? [88] 55.9% ------------------------------------------------------------------------ bfcanonicalize [73] 100.0% [80] 1392(2.6%) 1392(2.6%) bitwise-first-bit-set ...hmetic/bitwise-6.rkt:35:0 ------------------------------------------------------------------------ ??? [71] 100.0% [81] 1172(2.2%) 1172(2.2%) check-list ...ollects/racket/private/for.rkt:690:2 ------------------------------------------------------------------------ expression-cost [40] 49.8% get-sigs [74] 50.2% [82] 1106(2.1%) 276(0.5%) table-ref ...erbie/alt-testing/src/common.rkt:46:0 ??? [89] 75.1% ------------------------------------------------------------------------ ??? [72] 49.7% ulp-difference [75] 50.3% [83] 556(1.1%) 280(0.5%) ...sting/src/common.rkt:47:2 ...e/arr-i.rkt:976:19 ??? [92] 49.7% ------------------------------------------------------------------------ ??? [72] 100.0% [84] 280(0.5%) 0(0.0%) ->flonum ...rbie/alt-testing/src/programs.rkt:37:0 dict-ref [91] 100.0% ------------------------------------------------------------------------ ??? [72] 100.0% [85] 272(0.5%) 0(0.0%) best-alt ...s/herbie/alt-testing/src/glue.rkt:71:0 argmins [20] 100.0% ------------------------------------------------------------------------ bfneg [78] 15.1% bfmul [77] 84.9% [86] 9977(18.9%) 9977(18.9%) new-mpfr ...b/math/private/bigfloat/mpfr.rkt:344:0 ------------------------------------------------------------------------ bfneg [78] 15.9% bfmul [77] 84.1% [87] 3502(6.6%) 3502(6.6%) ??? ...hare/racket/collects/ffi/unsafe.rkt:1450:12 ------------------------------------------------------------------------ ??? [70] 42.6% ??? [79] 57.4% [88] 2022(3.8%) 2022(3.8%) ^TYPE? .../ffi/unsafe.rkt:1621:20 ------------------------------------------------------------------------ table-ref [82] 100.0% [89] 831(1.6%) 831(1.6%) ??? ...ects/racket/contract/private/list.rkt:814:4 ------------------------------------------------------------------------ bfmul [77] 100.0% [90] 637(1.2%) 0(0.0%) ??? .../share/racket/collects/ffi/unsafe.rkt:959:4 assq [93] 100.0% ------------------------------------------------------------------------ ->flonum [84] 100.0% [91] 280(0.5%) 280(0.5%) dict-ref ...lects/racket/private/generic.rkt:472:9 ------------------------------------------------------------------------ ...sting/src/common.rkt:47:2 [83]100.0% [92] 276(0.5%) 0(0.0%) ??? ...s/racket/contract/private/arr-i.rkt:1324:39 assoc-ref [94] 100.0% ------------------------------------------------------------------------ ??? [90] 100.0% [93] 637(1.2%) 637(1.2%) assq ...et/collects/racket/private/list.rkt:187:13 ------------------------------------------------------------------------ ??? [92] 100.0% [94] 276(0.5%) 0(0.0%) assoc-ref ...collects/racket/private/dict.rkt:77:0 assoc [95] 100.0% ------------------------------------------------------------------------ assoc-ref [94] 100.0% [95] 276(0.5%) 276(0.5%) assoc ...t/collects/racket/private/list.rkt:196:13 ------------------------------------------------------------------------