[Beowulf] Feedback on large pages in Linux
Kevin Pedretti
ktpedre at sandia.gov
Tue Jul 25 12:05:43 PDT 2006
> On Fri, Jul 21, 2006 at 11:39:23PM -0400, hahn at physics.mcmaster.ca wrote:
>
> > it would be incredibly useful if the HPC community could come up with
> > some actual numbers on how important bigpages are. I'm ashamed to say
> > that I haven't made any effort to measure this on any of my clusters.
> > oprofile appears to make it pretty easy to capture real data on how
> > often TLB's are a problem.
At least on Opteron, the benefit of large pages is highly dependent on
the memory access pattern. The main reason is that the Opteron only has
eight 2-Mbyte TLB entries, compared to 512 4-Kbyte TLB entries (see
below). So, an app that accesses lots of little regions of memory
scattered all over the place will probably be hurt by using large
pages. The only sure way to tell is to run your app both ways... which
is really easy to do on a machine like Red Storm (Cray XT3) because its
compute node OS, Catamount, has full support for large and small pages
("run -small_pages my_app" vs. "run -large_pages my_app").
Anybody know if recent Intel processors have the same issue?
Kevin
obtained using cpuid instruction on an Opteron 146...
L1 2-Mbyte TLB:
DTLB entries = 8
ITLB entries = 8
DTLB associativity = full
ITLB associativity = full
L1 4-Kbyte TLB:
DTLB entries = 32
ITLB entries = 32
DTLB associativity = full
ITLB associativity = full
L2 2-Mbyte TLB:
DTLB entries = 0
ITLB entries = 0
DTLB associativity = off
ITLB associativity = off
L2 4-Kbyte TLB:
DTLB entries = 512
ITLB entries = 512
DTLB associativity = 4
ITLB associativity = 4
More information about the Beowulf
mailing list