[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