
#13362: GHC first generation of GC to be as large as largest cache size by default -------------------------------------+------------------------------------- Reporter: varosi | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: 8.6.1 Component: Runtime System | Version: 8.0.2 Resolution: | Keywords: numa cache gc | newcomers 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: | -------------------------------------+------------------------------------- Comment (by carter): do we mean the Nursery or the Gen1 heap after the nursery? I'd imagine we want the nursery to fit in L1 or L2 caches (where applicable) and the Gen1 heap to fit in the rest of the Cache left in Level3 after we account for nurseries? Perhaps {{{ size of nursery = size of L2 cache per cpu core size of gen1 >= max(#capabilities * size of nursery , size of L3 cache in socket - (#capabilities * size of nursery) ) }}} we definitely (at least in many core systems) do *not* want nurseries on the same Socket creating cache thrash with eachother (ie under heavy allocation workloads)? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/13362#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler