[GHC] #8900: unordered-containers 16% slower in HEAD vs 7.6.3

GHC ghc-devs at haskell.org
Sat Mar 15 21:05:22 UTC 2014


#8900: unordered-containers 16% slower in HEAD vs 7.6.3
--------------------------------------------+------------------------------
        Reporter:  tibbe                    |            Owner:
            Type:  bug                      |           Status:  new
        Priority:  normal                   |        Milestone:
       Component:  Compiler                 |          Version:  7.9
      Resolution:                           |         Keywords:
Operating System:  MacOS X                  |     Architecture:  x86_64
 Type of failure:  Runtime performance bug  |  (amd64)
       Test Case:                           |       Difficulty:  Unknown
        Blocking:                           |       Blocked By:
                                            |  Related Tickets:
--------------------------------------------+------------------------------

Comment (by simonmar):

 So we have

 {{{
   MUT     time    0.24s  (  0.24s elapsed)
   GC      time    0.13s  (  0.17s elapsed)

 vs

   MUT     time    0.25s  (  0.25s elapsed)
   GC      time    0.18s  (  0.23s elapsed)
 }}}

 ie. almost all the difference is in GC.  And:

 {{{
      141,978,520 bytes copied during GC
               99 MB total memory in use (0 MB lost due to fragmentation)

 vs

      231,158,688 bytes copied during GC
              144 MB total memory in use (0 MB lost due to fragmentation)
 }}}

 And

 {{{
   Gen  1         8 colls,     0 par    0.07s    0.10s     0.0127s
 0.0479s

 vs

   Gen  1        13 colls,     0 par    0.12s    0.16s     0.0127s
 0.0468s
 }}}

 My guess, based on seeing things like this before, is that the benchmark
 is very sensitive to when exactly major GC strikes - perhaps it has a
 spike in memory usage at some point.  You ought to be able to test this
 hypothesis by tweaking the GC options.  Try with a very large heap size
 (-A2G).

 There's a very small change in the MUT time, which is probably accounted
 for by extra cache misses caused by the extra GC activity.  So I suspect
 this is nothing to worry about.

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


More information about the ghc-tickets mailing list