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

Reply via email to