RTS: Reduce MBLOCK_SPACE_SIZE on AArch64
authorErik de Castro Lopo <erikd@mega-nerd.com>
Tue, 25 Aug 2015 02:07:45 +0000 (02:07 +0000)
committerErik de Castro Lopo <erikd@mega-nerd.com>
Fri, 28 Aug 2015 16:50:54 +0000 (02:50 +1000)
commit38c98e4f61a48084995a5347d76ddd024ce1a09c
tree46cb9ff82f283ee456839fb6d84e7f72d998fdf1
parent15c63d2ac1983a72de20ec83b7263bf12b79ae49
RTS: Reduce MBLOCK_SPACE_SIZE on AArch64

Commit 0d1a8d09f4 added a two step allocator for 64 bit systems. This
allocator mmaps a huge (1 TB) chunk of memory out of which it does
smaller allocations. On AArch64/Arm64 linux, this mmap was failing
due to the Arm64 Linux kernel parameter CONFIG_ARM64_VA_BITS
defaulting to 39 bits.

Therefore reducing the AArch64 value for MBLOCK_SPACE_SIZE to make
this allocation 1/4 TB while remaining 1 TB for other archs.

Reviewers: ezyang, austin, bgamari

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D1171

GHC Trac Issues: #10682
rts/sm/HeapAlloc.h