Ticket #3210 (closed feature request: fixed)
Allow programs to change the number of capabilities
|Reported by:||NeilMitchell||Owned by:|
|Type of failure:||None/Unknown||Difficulty:||Unknown|
|Test Case:||Blocked By:|
It would be useful for a program to choose the number of capabilities it has, perhaps in response to a flag. i.e. I'd like users to type hlint -j3 rather than hlint +RTS -N3.
To support this change one option would be to allow increasing the number of capabilities after a program has started. Another option would be to provide a primitive restartWithCapabilities :: Int -> IO () that aborted the program, and restarted main but with the required settings.
Using RTS flags is unsuitable for people who use Haskell programs but aren't really Haskell developers. As more programs go multi-core, this feature will probably become more desirable. However, it's not too important and can always be solved by a little shell script.