Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Nov 2009 10:34:41 -0500
From:      Ryan Stone <rysto32@gmail.com>
To:        Linda Messerschmidt <linda.messerschmidt@gmail.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Superpages on amd64 FreeBSD 7.2-STABLE
Message-ID:  <bc2d970911260734g2c3720f3qf9ba3cb729a49f35@mail.gmail.com>
In-Reply-To: <237c27100911260714x2fcb194ew1e6ce11e764efd08@mail.gmail.com>
References:  <237c27100911260714x2fcb194ew1e6ce11e764efd08@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Is squid multithreaded?  My first guess would be that you have one
thread forking off all of these processes while other threads are
still doing work and writing to different parts of the address space.
I don't know the details of the superpages implementation but I could
definitely see that this could be a problem.  When the process is
forked off the vm layer has to mark all of the pages in the parent
process as copy-on-write.  If there are other threads in squid writing
to memory in this time, the vm layer will have to allocate a new page
of memory for every page that squid writes to.  This breaks up the
superpage(superpages must be physically contiguous in memory).  I
don't know if the superpage implementation tries to alleviate this
situation at all.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bc2d970911260734g2c3720f3qf9ba3cb729a49f35>