On Sat, 28 Nov 2009 07:26:15 -0800 Barton Robinson <[email protected]> wrote:
> Martin, please correct me if i am wrong. > Large page support supports 1mb pages - meaning consecutive 256 4k pages > in hardware. These pages are "fixed", are not pageable with current > technology. The advantage is that there is one TLB entry per megabyte > instead of one per 4k page, so that the TLB is more efficient and more > entries fit into the hardware cache, requiring less DAT translations. > To get advantage then, there would have to be 1mb of very active > programs or data packaged in that 1mb page. Operating systems could be > packaged for this with work. zTPF took advantage of this, but that > architecture is focused on performance, not virtualization. Technically large pages could be swapped, the invalid bit in the segment table entry is there. Linux does not do this because it would be complicated and not very effective because of the packing of data you mentioned. The main use case for large pages are large in-memory databases. > For oracle, it would require dedicating 256 consecutive hardware pages > to an oracle database, running virtual under linux, running virtual > under z/vm - yep, quite a challenge. In a virtual environment where we > do run many different programs - the benefit to programs and data would > be difficult to show. The pages that are dedicated to the large pages in the guest can be swapped by z/VM without a problem. You could argue that these large pages are not really large pages because of the software emulation via shared page table pages but you do get the savings in the page table memory which is ihmo well worth the effort. > The benefits of large pages are to those places that can and do measure > differences in performance at the single digit percentage difference > (zTPF). z/VM could get a little advantage with a lot of work, linux in > an LPAR as well. Linux under z/VM not. I would be surprised if the > improvement was measurable in any truly virtualized environment. There will be considerable improvement if the oracle workload uses i) many processes and ii) large shared segments. For each process that maps 1GB of shared memory you save 2MB in page tables. -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. ---------------------------------------------------------------------- For LINUX-390 subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO LINUX-390 or visit http://www.marist.edu/htbin/wlvindex?LINUX-390
