summaryrefslogtreecommitdiff
path: root/validate
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2021-03-04 10:16:07 +0000
committerMatthew Pickering <matthewtpickering@gmail.com>2021-03-07 19:31:38 +0000
commit7d4473b1c0887b18ee6424ac97fbe3e7afa69f66 (patch)
tree93b802d3ed1324dfc1b0ec456034bbf9164f3584 /validate
parentcf65cf16c89414273c4f6b2d090d4b2fffb90759 (diff)
downloadhaskell-wip/ghc-allocate-pinned.tar.gz
rts: Use a separate free block list for allocatePinnedwip/ghc-allocate-pinned
The way in which allocatePinned took blocks out of the nursery was leading to horrible fragmentation in some workloads. The strategy now is that a separate free block list is reserved for each capability and blocks are taken from there. When it's empty the global SM lock is taken and a fresh block of size PINNED_EMPTY_SIZE is allocated. Fixes #19481
Diffstat (limited to 'validate')
0 files changed, 0 insertions, 0 deletions