[GHC] #8923: Add SmallArray# type

GHC ghc-devs at haskell.org
Sun Mar 23 08:27:07 UTC 2014


#8923: Add SmallArray# type
------------------------------------+-------------------------------------
       Reporter:  tibbe             |             Owner:  tibbe
           Type:  feature request   |            Status:  new
       Priority:  normal            |         Milestone:
      Component:  Compiler          |           Version:  7.9
       Keywords:                    |  Operating System:  Unknown/Multiple
   Architecture:  Unknown/Multiple  |   Type of failure:  None/Unknown
     Difficulty:  Unknown           |         Test Case:
     Blocked By:                    |          Blocking:
Related Tickets:                    |
------------------------------------+-------------------------------------
 Add a `SmallArray#` (and `SmallMutableArray#`) type that doesn't have a
 card table. This would

  * save some memory (two words per array),
  * make updates cheaper (no writing to the card table), and
  * make GC faster (no traversing the card table).

 The use case is the unordered-containers package, which uses small arrays
 to implement a hash array mapped trie.

 A starting point would be
 [changeset:0417404f5d1230c9d291ea9f73e2831121c8ec99/ghc], which added the
 card table to the current array type.

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


More information about the ghc-tickets mailing list