[prev in list] [next in list] [prev in thread] [next in thread] 

List:       postgresql-admin
Subject:    [ADMIN] large page query
From:       "Hamza Bin Sohail" <hsohail () purdue ! edu>
Date:       2010-11-27 0:41:02
Message-ID: 001201cb8dcb$c4d1c370$cdd02e80 () hsohailpc
[Download RAW message or body]

Hi,

I am looking into the impact of large page sizes on the performance of commercial \
workloads e.g databases,webserver,virtual machines etc. I was wondering if I could \
get to know whether Postgres administrators configure the Postgres DBMS with large \
page support for shared memory regions, specifically on the Solaris 9 and 10 OSes. My \
understanding is that since large pages (4 MB) are suitable for applications \
allocating large shared memory regions (databases for instance), Postgres would most \
definitely use the large page support. 

So in a nutshell, the questions are 

1) Does Postgres use large page support ? On solaris 10 and the ultrasparc III \
processor, a large page is 4 MB. It significantly reduces the page table size of the \
application and a 1000 entry TLB can cover the entire memory 4G.

2) On Solaris 9 and 10, does Postgres rely on the MPSS support and relegate the job \
of figuring out what to allocate as a large page and what not to, when to allocate a \
large page and when not to etc ? Or is it the case that the Postgres developers have \
written it judiciously and Postgres itself knows what to and what not to allocate as \
a large page ? The reason i ask this question is because, i know for a JVM, solaris \
10 allocates large pages for the heap memory (this is default behavior, no runtime \
parameters needed when one runs the JVM. The OS is smart enough to figure this out)

3) In light of all this, do we know the performance difference between Postgres \
configured with no large pages vs Postgres configured with large pages.


Your replies are highly appreciated.


Hamza


[Attachment #3 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18928">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face=Arial>Hi,</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>I am looking into the impact of large page sizes on 
the performance of commercial workloads e.g databases,webserver,virtual machines 
etc. I was wondering if I could get to know whether Postgres administrators 
configure the Postgres DBMS with large page support for shared memory regions, 
specifically on the Solaris 9 and 10 OSes. My understanding is that since large 
pages (4 MB) are suitable for applications allocating large shared memory 
regions (databases for instance), Postgres would most definitely use the large 
page support. </FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>So in a nutshell, the questions&nbsp;are 
</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>1) Does Postgres use large page support ? On 
solaris 10 and the ultrasparc III processor, a large page is 4 MB. It 
significantly reduces the page table size of the application and&nbsp;a 1000 
entry&nbsp;TLB can cover the entire memory 4G.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>2) On Solaris 9 and 10, does Postgres rely on the 
MPSS support and relegate the job of figuring out what to allocate as a large 
page and what not to, when to allocate a large page and when not to etc ? Or is 
it the case that the Postgres developers have written it judiciously and 
Postgres itself knows what to and what not to allocate as a large page ? The 
reason i ask this question is because, i know for a JVM, solaris 10 allocates 
large pages for the heap memory (this is default behavior, no runtime parameters 
needed when one runs the JVM. The OS is smart enough to figure this 
out)</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>3) In light of all this, do we know the performance 
difference between Postgres configured with no large pages vs Postgres 
configured with large pages.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>Your replies are highly appreciated.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>Hamza</FONT></DIV></BODY></HTML>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic