From: Maurice v. S. <ma...@bl...> - 2013-01-24 18:48:29
|
Hi Julian, I have run valgrind 3.8.1 with your patch successfully on a job that neared 64G in memory allocation. Thanks again. ][ Maurice van Swaaij ][ ----- Original Message ----- Hi Julian, I have been running valgrind 3.8.1 with your patch but for various reasons (unrelated to valgrind) I haven't been able to keep that large job that needs more than 32G running long enough to arrive at a significant memory use. I'll let you know when it does. On a smaller job (using 18G) I do still get these messages: ==15201== Warning: set address range perms: large range [0x247cd5040, 0x267cd5040) (undefined) ==15201== Warning: set address range perms: large range [0x247cd5028, 0x267cd5058) (noaccess) but I understand they are not interfering with valgrind's operation. Thanks again for your help. ][ Maurice van Swaaij ][ ----- Original Message ----- Thanks, I'll try it out with 3.8.1 and let you know if it works. ][ Maurice van Swaaij ][ ----- Original Message ----- On Wednesday, January 02, 2013, Maurice van Swaaij wrote: > Now for my question: is it possible to go beyond the 32G memory allocation > limit? The patch below allows it to use up to 64G, that is, it doubles the available memory. If someone would test it properly, it might get committed; but so far we have had (AFAIK) no definitive "it works" feedback. J Index: memcheck/mc_main.c =================================================================== --- memcheck/mc_main.c (revision 13179) +++ memcheck/mc_main.c (working copy) @@ -167,10 +167,10 @@ #else -/* Just handle the first 32G fast and the rest via auxiliary +/* Just handle the first 64G fast and the rest via auxiliary primaries. If you change this, Memcheck will assert at startup. See the definition of UNALIGNED_OR_HIGH for extensive comments. */ -# define N_PRIMARY_BITS 19 +# define N_PRIMARY_BITS 20 #endif @@ -6524,11 +6524,11 @@ tl_assert(sizeof(Addr) == 8); tl_assert(sizeof(UWord) == 8); tl_assert(sizeof(Word) == 8); - tl_assert(MAX_PRIMARY_ADDRESS == 0x7FFFFFFFFULL); - tl_assert(MASK(1) == 0xFFFFFFF800000000ULL); - tl_assert(MASK(2) == 0xFFFFFFF800000001ULL); - tl_assert(MASK(4) == 0xFFFFFFF800000003ULL); - tl_assert(MASK(8) == 0xFFFFFFF800000007ULL); + tl_assert(MAX_PRIMARY_ADDRESS == 0xFFFFFFFFFULL); + tl_assert(MASK(1) == 0xFFFFFFF000000000ULL); + tl_assert(MASK(2) == 0xFFFFFFF000000001ULL); + tl_assert(MASK(4) == 0xFFFFFFF000000003ULL); + tl_assert(MASK(8) == 0xFFFFFFF000000007ULL); # endif } Index: coregrind/m_aspacemgr/aspacemgr-linux.c =================================================================== --- coregrind/m_aspacemgr/aspacemgr-linux.c (revision 13179) +++ coregrind/m_aspacemgr/aspacemgr-linux.c (working copy) @@ -1649,7 +1649,7 @@ aspacem_minAddr = (Addr) 0x04000000; // 64M # if VG_WORDSIZE == 8 - aspacem_maxAddr = (Addr)0x800000000 - 1; // 32G + aspacem_maxAddr = (Addr)0x1000000000ULL - 1; // 64G # ifdef ENABLE_INNER { Addr cse = VG_PGROUNDDN( sp_at_startup ) - 1; if (aspacem_maxAddr > cse) ------------------------------------------------------------------------------ Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery and much more. Keep your Java skills current with LearnJavaNow - 200+ hours of step-by-step video tutorials by Java experts. SALE $49.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122612 _______________________________________________ Valgrind-users mailing list Val...@li... https://lists.sourceforge.net/lists/listinfo/valgrind-users |