2.6.32-rc3: low mem - only 378MB on x86_32 with 64GB. Why?

From: Jeff Chua
Date: Mon Oct 05 2009 - 11:58:58 EST




I've 3 systems with 4GB, 16GB and 64GB all running 32bit with these set:

CONFIG_X86_32=y
CONFIG_X86=y
CONFIG_ZONE_DMA=y
# CONFIG_ZONE_DMA32 is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_HIGHMEM64G=y
CONFIG_HIGHMEM=y
CONFIG_X86_PAE=y
CONFIG_KSM=y
CONFIG_HIGHPTE=y


# using "free -lm" ...

# with 4GB
total used free shared buffers cached
Mem: 3983 3862 120 0 112 3542
Low: 850 738 112
High: 3132 3123 8
-/+ buffers/cache: 207 3775
Swap: 8008 0 8008


# with 16GB
total used free shared buffers cached
Mem: 16244 6570 9673 0 320 5559
Low: 750 717 33
High: 15493 5853 9640
-/+ buffers/cache: 690 15554
Swap: 26709 0 26709


# with 64GB
total used free shared buffers cached
Mem: 63995 524 63470 0 4 365
Low: 378 32 345
High: 63616 492 63124
-/+ buffers/cache: 154 63840
Swap: 28003 0 28003


Question is ... is there anyway to increase "low mem" without resorting to migrating to 64bit? (Look... it only has 378MB total low mem vs 850MB on the 4GB system). I've oracle installed on the 64GB system and it keeps getting OOMs!

I thought CONFIG_HIGHPTE (Allocate 3rd-level pagetables from highmem) is supposed to help with low mem as stated here ...

CONFIG_HIGHPTE:
The VM uses one page table entry for each page of physical memory.
For systems with a lot of RAM, this can be wasteful of precious
low memory. Setting this option will put user-space page table
entries in high memory.


Anything I should do? Slow death using sysctl like this ...
vm.min_free_kbytes = 16384
vm.overcommit_memory = 2
vm.overcommit_ratio = 75
vm.vfs_cache_pressure = 10000


Thanks,
Jeff.

P.S. I was trying to "cross-compile" a gcc compiler, but didn't get far. That's a different topic ... offline, please write to me directly if you've done this ... would need binutil 64 (compile ok), gcc 64 (stucked ... seems to be looking for libc 64bit) ...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/