[GHC] #15418: Performance drop 60 times on non-profiling binary

GHC ghc-devs at haskell.org
Thu Jul 26 02:50:44 UTC 2018


#15418: Performance drop 60 times on non-profiling binary
-------------------------------------+-------------------------------------
        Reporter:  hth313            |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:  8.6.1
       Component:  Runtime System    |              Version:  8.4.3
      Resolution:                    |             Keywords:
Operating System:  MacOS X           |         Architecture:  x86_64
 Type of failure:  Runtime           |  (amd64)
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #14414, #9599     |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by hth313):

 Built without profiling:

 {{{
 2,608,765,195,440 bytes allocated in the heap
    6,315,679,080 bytes copied during GC
       80,444,376 bytes maximum residency (62 sample(s))
          484,392 bytes maximum slop
              234 MB total memory in use (0 MB lost due to fragmentation)

                                      Tot time (elapsed)  Avg pause  Max
 pause
   Gen  0     1993101 colls,     0 par   44.791s  46.358s     0.0000s
 0.0044s
   Gen  1        62 colls,     0 par    2.675s   2.983s     0.0481s
 0.2165s

   INIT    time    0.000s  (  0.002s elapsed)
   MUT     time  792.519s  (798.495s elapsed)
   GC      time   47.466s  ( 49.341s elapsed)
   EXIT    time    0.000s  (  0.004s elapsed)
   Total   time  839.985s  (847.842s elapsed)

   %GC     time       5.7%  (5.8% elapsed)

   Alloc rate    3,291,739,430 bytes per MUT second

   Productivity  94.3% of total user, 94.2% of total elapsed


 real    14m42.573s
 user    13m59.992s
 sys     0m6.137s
 }}}



 Built with profiling:

 {{{
   31,046,636,816 bytes allocated in the heap
    9,289,234,088 bytes copied during GC
      204,185,744 bytes maximum residency (55 sample(s))
          958,320 bytes maximum slop
              554 MB total memory in use (0 MB lost due to fragmentation)

                                      Tot time (elapsed)  Avg pause  Max
 pause
   Gen  0     29674 colls,     0 par    3.982s   4.041s     0.0001s
 0.0055s
   Gen  1        55 colls,     0 par    3.537s   3.785s     0.0688s
 0.2521s

   INIT    time    0.000s  (  0.002s elapsed)
   MUT     time   20.312s  ( 20.502s elapsed)
   GC      time    7.518s  (  7.827s elapsed)
   RP      time    0.000s  (  0.000s elapsed)
   PROF    time    0.000s  (  0.000s elapsed)
   EXIT    time    0.000s  (  0.000s elapsed)
   Total   time   27.830s  ( 28.330s elapsed)

   %GC     time      27.0%  (27.6% elapsed)

   Alloc rate    1,528,524,987 bytes per MUT second

   Productivity  73.0% of total user, 72.4% of total elapsed


 real    0m28.442s
 user    0m27.839s
 sys     0m0.461s
 }}}

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15418#comment:13>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list