Devs,

Ever since we moved from 2.6.* to 3.*, I've noticed some very odd MM behavior 
I'd like to run past you. It's pretty difficult to replicate, but I've figured 
out a fairly straightforward method. But first, the issue:

Our systems with 72GB of RAM on a 3.2 kernel eventually converge on this, from 
/proc/meminfo:

Active(file):   29059980 kB
Inactive(file): 29069296 kB

Basically some kind of even split across Inactive and Active, suggesting a hard 
IO loop that's purging as fast as it can promote. It's pretty easy to cause, 
too. If you have PostgreSQL handy, any DB that just barely fits in memory 
should be sufficient.

createdb pgbench
pgbench -i -s 4000 pgbench
pgbench -T 1800 -c 24 -S pgbench

I let that run for a while to cache everything, until read IO slows down to a 
trickle according to iostat. Memory at that point looks like this:

Active(file):   61056316 kB
Inactive(file):   249968 kB

And free -m looks like this:

             total       used       free     shared    buffers     cached
Mem:         72485      66963       5521          0          2      64183
-/+ buffers/cache:       2776      69708
Swap:         2047          0       2047

So I have 5GB available, 64GB cached... looks pretty normal. I leave the 
pgbench running, then in another terminal, I waste more memory than I have free:

python - <<EOF
foo = bytearray(8 * 1024 * 1024 * 1024)
from time import sleep
sleep(1000)
EOF

After a minute or two, Active and Inactive are even again, and IO to the 
underlying device is extremely high. In our case, that's 350MB/s in random 
reads. Every kernel I've tested does this. 3.2, 3.5, 3.8. I haven't been able 
to go higher than that, but the behavior seems pretty consistent. This is with 
zone_reclaim_mode disabled, and numactl --interleave=all doesn't change 
anything.

I get that it needs to balance memory, but this seems excessive somehow. I'm 
probably missing something, though. Any insight would be helpful, and I can try 
to provide anything else you need if this is a legitimate complaint.

Thanks!

--
Shaun Thomas
OptionsHouse | 141 W. Jackson Blvd | Suite 500 | Chicago IL, 60604
312-676-8870
[email protected]



______________________________________________

See http://www.peak6.com/email_disclaimer/ for terms and conditions related to 
this email
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to