[GHC] #9706: New block-structured heap organization for 64-bit

GHC ghc-devs at haskell.org
Mon Oct 20 15:48:44 UTC 2014


#9706: New block-structured heap organization for 64-bit
-------------------------------------+-------------------------------------
              Reporter:  ezyang      |            Owner:  simonmar
                  Type:  task        |           Status:  new
              Priority:  normal      |        Milestone:
             Component:  Runtime     |          Version:  7.8.3
  System                             |         Keywords:
            Resolution:              |     Architecture:  Unknown/Multiple
      Operating System:              |       Difficulty:  Unknown
  Unknown/Multiple                   |       Blocked By:
       Type of failure:              |  Related Tickets:
  None/Unknown                       |
             Test Case:              |
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------

Comment (by simonmar):

 There are two parts to this:
  1. put all the heap memory together in the address space
  2. change where we put the block descriptors

 Let's just worry about (1) for now.

  * Windows doesn't overcommit, so we can't do this on Windows
  * How do we decide what the max heap size should be? Total mem + swap?
  * I'm worried about the overhead of having to pre-allocate a large number
 of page tables for the reserved address space
  * Every Haskell process would show a ridiculous VSIZE

 Still, from a purely selfish perspective, for those on 64-bit Linux this
 might make sense and I'd be happy to take that 8% GC win for very little
 effort, even if it is non-portable.

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


More information about the ghc-tickets mailing list