|
From: Julian S. <js...@ac...> - 2011-07-11 09:31:46
|
On Friday, July 08, 2011, Greg Czajkowski wrote: > > Did you change any #defines in the source code? Is this a clean 3.6.1. > > build? > > #define VG_N_SEGMENTS 50000 > > Plus the failed attempt at extending valgrind to use more than 32GB > > # if VG_WORDSIZE == 8 > ///gczajkow aspacem_maxAddr = (Addr)0x800000000 - 1; // 32G > ///http://thread.gmane.org/gmane.comp.debugging.valgrind/7584/focus=7602 > aspacem_maxAddr = (Addr)(0x800000000ULL << 2) - 1; // 128GB > # define N_PRIMARY_BITS 21 > > Otherwise valgrind errors out with > > ==7560== Valgrind's memory management: out of memory: > ==7560== newSuperblock's request for 4194304 bytes failed. > ==7560== 33731608576 bytes have already been allocated. > ==7560== Valgrind cannot continue. Sorry. > > Our processes under valgrind consume more than 32GB of memory, how can it > be expanded to 128GB? * change N_PRIMARY_BITS from 19 to 21 * change the assertions at the end of mc_main.c accordingly - MAX_PRIMARY_ADDRESS -> 4 * (existing value + 1) - 1 - for the MASK(1/2/4/8) assertions, set to zero the rightmost two '1' bits in the block of leading 1 bits, eg MASK(8) -> 0xFFFFFFE000000007ULL I think * change aspacem_maxAddr as you have above I _think_ that should do it. Not 100% sure tho. J |