|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] 2MB page PV guest support clarification
Mick Jordan wrote:
I was inspired by the talk from Ben Serebrin at this weeks' summit to
investigate using 2MB pages in my Java VM on Xen for x86-64.
I think I have done everything correctly, but Xen (3.1.4) rejects my
attempt to set the PSE bit in the L2 frame for the 2MB page. Looking
at the Xen code the L2_DISALLOW_MASK (0xFF800180U) simply rejects the
update if the PSE bit is set.
Yes. Xen doesn't support large mappings for PV guests. However,
there's a lot less to worry about for PV guests compared to hvm guests.
A PV guest directly uses the CPU's pagetable+tlb hardware, and so a tlb
miss results in a single simple walk of the pagetable, and the overall
tlb pressure is a lot less. The desire to use large pages for hvm
guests is driven by the cost of a tlb miss when you have 4k guest pages
layered on 4k host pages, resulting in 24 memory accesses in the worst
case; a PV tlb miss is no more expensive than a native tlb miss by
comparison.
Large pages could potentially reduce the cost of a PV tlb miss as well,
but also pose quite a few tradeoffs. You can't generally use large
mappings for the kernel, as you can native, because of all the pages
which need RO mappings (pagetables, gdt, etc). Also, IO and the balloon
driver operate at 4k page resolution, so breaking a contiguous 2M page
would require the mapping to be shattered.
I found some posts from quite a while ago on xen-devel discussing
patches to allow large pages, so my question is for clarification on
the status of this feature. I.e., is it in any stable release and if
so what version?
Its a work in progress, but there's nothing usable yet, as far as I know.
J
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|