We have a couple of servers with 20-30 GB RAM that are running (a variant of) RHEL4. They are currently running the SMP i386 kernel, not x64, not even the hugemem kernel. This means LowMem is confined to < 1G, and thus dentry_cache and ext3_inode_cache to 100M or so each. How can I tell if this is a problem?
Here's a typical vmstat report while it's compiling some Java:
$ vmstat 10
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 1 0 19493816 394740 922420 0 0 1058 2292 1491 1020 6 3 80 12
2 1 0 19519480 395244 850156 0 0 1179 1412 1329 1195 9 4 75 12
1 1 0 19557368 392616 828344 0 0 1783 1680 1498 1756 14 5 72 9
I don't like the way bi
is nonzero when there is so much memory free. I imagine slabtop
could point more directly to the problem but I don't really understand how to interpret its output.
Update: The obvious question is "why not move to x64", Google even has many hits on "64 bit kernel 32 bit userland". But the primary purpose of these machines is to build 32 bit software and I don't know how to guarantee that won't be affected by switching kernels.