Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Mar 2000 23:31:48 -0800
From:      Peter Wemm <peter@netplex.com.au>
To:        "Daniel O'Connor" <doconnor@gsoft.com.au>
Cc:        cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/alpha/include vmparam.h src/sys/conf opt 
Message-ID:  <20000330073148.4E7BA1CD7@overcee.netplex.com.au>
In-Reply-To: Message from "Daniel O'Connor" <doconnor@gsoft.com.au>  of "Thu, 30 Mar 2000 16:49:57 %2B0930." <XFMail.000330164957.doconnor@gsoft.com.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
"Daniel O'Connor" wrote:
> 
> On 30-Mar-00 Peter Wemm wrote:
> >    that comment is bogus..  The only practical limit is how much physical
> >    ram you want to lock up as this stuff isn't paged out or swap backed.
> 
> Is it [easily] possible to make its pageable? 

I don't know.  Probably, if one wanted to cut/paste code from the likes
of the swap-backed code in the vn device.

However, the other reason I'm not sure about making it pageable is that in
a certain scenario making it pageable rules out a possible optimization.
For example, an Oracle server, with a 1G shm segment (262144 pages) mapped
into 300 processes consumes about 78643200 pv entries.  At 28 bytes each
that is 2202009600 bytes of ram (2100MB), *just for the pv entries*.
Naturally this sucks as the pv entries are thrashed to hell.

One of the main reasons for pv entries existing is to locate all virtual
addresses in all processes that a given page occupies in order to rapidly
unwire it during pageout.  If the pages are never paged out and are
permanently wired, then perhaps we could cheat somewhere and *not use* pv
entries for these shm pages.  This would make an astronomical difference to
our Oracle TPS performance.  Of course, it may not be possible to do this
for other reasons, but making it pageable would guarantee it for now
without rearchitecting the whole pv entry system (which is outside the scope
of a quick hack to make oracle work better).

Cheers,
-Peter




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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