[GHC] #12455: Compact Regions
GHC
ghc-devs at haskell.org
Wed Aug 3 16:05:04 UTC 2016
#12455: Compact Regions
-------------------------------------+-------------------------------------
Reporter: simonmar | Owner: simonmar
Type: task | Status: new
Priority: high | Milestone: 8.2.1
Component: Runtime | Version: 8.1
System |
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
I'm going to use this task to keep track of what we still need to do
around compact regions before 8.2.1, and so I have somewhere to hang
diffs.
Here's the current ToDo list:
* compaction should be interruptible by GC, otherwise we block a
multithreaded program while compacting (I know how to do this and have a
prototype, just need to finish it).
* Make it work with profiling
* We should have an API that doesn't require specifying a size, just
`compact :: NFData a => a -> IO (Compact a)`
* libraries/compact/tests failures with `EXTRA_HC_OPTS="-debug -with-
rtsopts=-DS"`
* Do we need both `totalW` and `totalDataW`? It looks like one of them is
redundant to me.
* What happens if we try to compact something that refers to a large
block? One larger than a megablock?
* Improve comments
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12455>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list