Messages in this thread | | | Date | Mon, 28 Mar 2011 20:39:29 +0400 | Subject | Very aggressive memory reclaim | From | John Lepikhin <> |
| |
Hello,
I use high-loaded machine with 10M+ inodes inside XFS, 50+ GB of memory, intensive HDD traffic and 20..50 forks per second. Vanilla kernel 2.6.37.4. The problem is that kernel frees memory very aggressively.
For example:
25% of memory is used by processes 50% for page caches 7% for slabs, etc. 18% free.
That's bad but works. After few hours:
25% of memory is used by processes 62% for page caches 7% for slabs, etc. 5% free.
Most of files are cached, works perfectly. This is the moment when kernel decides to free some memory. After memory reclaim:
25% of memory is used by processes 25% for page caches(!) 7% for slabs, etc. 43% free(!)
Page cache is dropped, server becomes too slow. This is the beginning of new cycle.
I didn't found any huge mallocs at that moment. Looks like because of large number of small mallocs (forks) kernel have pessimistic forecast about future memory usage and frees too much memory. Is there any options of tuning this? Any other variants?
Thanks!
| |