[GHC] #15727: bug: all generations are collected sequentially when compacting collection kicks in

GHC ghc-devs at haskell.org
Tue Oct 9 10:40:17 UTC 2018


#15727: bug: all generations are collected sequentially when compacting collection
kicks in
-------------------------------------+-------------------------------------
           Reporter:  lolotp         |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Runtime        |           Version:  8.6.1
  System                             |
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  Runtime
  Unknown/Multiple                   |  performance bug
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 According to GHC documentation
 [https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/runtime_control.html
 #rts-options-to-control-the-garbage-collector here], compacting collection
 should only be used for the oldest generation. I found out however while
 testing one of our programs that when compacting kicks in, Gen 0 were not
 being collected in parallel as well.

 Looking at the code, the bug looks to be
 [https://github.com/ghc/ghc/blob/5d5307f943d7581d7013ffe20af22233273fba06/rts/Schedule.c#L1543
 here], fixing this should be a simple change to the condition in the if
 phrase.

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


More information about the ghc-tickets mailing list