[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: I/O performance issues on 2.4.23 SMP system



Benjamin Sherman said on Wed, Jan 28, 2004 at 03:16:56PM -0600:
 
> >I've got some machines in nearly the same configuration.  What I ended up
> >doing was to put an `append="mem=1G"' in the lilo.conf boot stanza for the
> >kernel I was using, and rebooted the machine in question.
> >
> >This does reduce the available memory in the machine to 1GB, but solves the
> >IO problem.  In my case, it was much faster, even though MySQL couldn't
> >buffer nearly as much as with 4GB.
> Thanks, Mark. I will probably try this with 3GB instead of 1GB. Did you try
> that?

Yes; it didn't work.

The problem (bug) is that block device IO has to go through buffers that are
below 1GB.  The memory manager doesn't know this, so what happens is that the
IO layer requests a block of memory below 1GB, and the swapout daemon (kswapd)
then runs around like a madman trying to free pages, instead of shuffling pages
that don't need to be below 1GB to higher memory addresses.  Since many of the
pages below 1GB can't be freed (they belong to active programs), the IO
starves.

With 1GB of memory, both the IO layer and the swapout daemon are working with
the same view of memory, so the bug is concealed, and performance is good.

I have heard of people trying 2GB, and having it work, but it didn't for me.

M

Attachment: pgpWmDrAxBPxN.pgp
Description: PGP signature


Reply to: