Skip to contentSkip to conversation

Free memory level in 2.6.16?

DISCUSSION Steve Bergman 2 participants 5 messages Oct 5, 2006 Memory management

lore
Share & tools
lore
#0 lore raw

Due to some problems I was having with the CentOS4.4 kernel, I just moved a box (x86 with 4GB ram) to 2.6.16.29 from kernel.org.

All is well, but I am curious about one thing. This is a fairly memory hungry box, serving about 40 gnome desktops via xdmcp. All VM settings are at the default. Swappiness=60, min_free_kbytes=3831.

However, it seems to seek out about 150MB for the level of free memory that it maintains. Typically I see somewhere between 100MB an 500MB in swap, buffers+cache is about 500MB, and 150MB is free.

If I cat from /dev/md0 to /dev/null, the free memory does go down, to 25MB or so, but then I can watch as it seeks out about 150MB of free memory.

To me, free memory is wasted memory. Is this a bug or a feature?

Thanks for any enlightenment.

#1 lore raw
Quoted 11 lines · Steve Bergman

Due to some problems I was having with the CentOS4.4 kernel, I just moved a box (x86 with 4GB ram) to 2.6.16.29 from kernel.org.

All is well, but I am curious about one thing. This is a fairly memory hungry box, serving about 40 gnome desktops via xdmcp. All VM settings are at the default. Swappiness=60, min_free_kbytes=3831.

However, it seems to seek out about 150MB for the level of free memory that it maintains. Typically I see somewhere between 100MB an 500MB in swap, buffers+cache is about 500MB, and 150MB is free.

Quoted 5 lines

If I cat from /dev/md0 to /dev/null, the free memory does go down, to 25MB or so, but then I can watch as it seeks out about 150MB of free memory.

To me, free memory is wasted memory. Is this a bug or a feature?

Normally it keeps some memory free for interrupt handlers which cannot free other memory. But 150MB is indeed a lot, especially it's only in the ~900MB lowmem zone.

You could play with /proc/sys/vm/lowmem_reserve_ratio but must likely some defaults need tweaking.

-Andi

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>

#2 lore raw
Quoted 7 lines · Andi Kleen

Normally it keeps some memory free for interrupt handlers which cannot free other memory. But 150MB is indeed a lot, especially it's only in the ~900MB lowmem zone.

You could play with /proc/sys/vm/lowmem_reserve_ratio but must likely some defaults need tweaking.

Thank you for the reply, Andi. This kernel is compiled with the .config from the original FC5 release, which used kernel 2.6.15. I just ran "make oldconfig" on it and accepted the defaults.

So it is, I believe, a 4GB/4GB split. Does that make a difference?

Thanks,
Steve Bergman

#3 lore raw
Quoted 3 lines

Thank you for the reply, Andi. This kernel is compiled with the .config from the original FC5 release, which used kernel 2.6.15. I just ran "make oldconfig" on it and accepted the defaults.

I meant in the source. There are no tunables for this in .config

Quoted 1 line

So it is, I believe, a 4GB/4GB split. Does that make a difference?

The kernel.org kernel doesn't support 4/4 split.

-Andi

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>

#4 lore raw
In reply to Andi Kleen
Quoted 3 lines · Andi Kleen

You could play with /proc/sys/vm/lowmem_reserve_ratio but must likely some defaults need tweaking.

Hmmm, after a bit of googling and a download of 2.6.18, it seems that documentation on lowmem_reserve_ratio is still on the todo list.

cat /proc/sys/vm/lowmem_reserve_ratio

gives me "256 256 32" on the system in question. Can someone give me a quick rundown of what this means?

Thanks,
Steve Bergman