VirtualBox

source: vbox/trunk/doc/manual/en_US/dita/topics/nestedpaging.dita

Last change on this file was 109119, checked in by vboxsync, 10 days ago

Docs: bugref:10705. The following commits from doc's team git repo has been applied:

deef6a8040814e47beebafea601983c428769e5e Vbp 1622 gui changes

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.1 KB
Line 
1<?xml version='1.0' encoding='UTF-8'?>
2<!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd">
3<topic xml:lang="en-us" id="nestedpaging">
4 <title><?oxy_comment_start author="Mhari Duncan" timestamp="20250115T154133+0000" comment="Put this in context of configuring VM"?>Nested Paging and VPIDs<?oxy_comment_end?></title>
5
6 <body>
7 <p>In addition to normal hardware virtualization, your processor may also support the following additional sophisticated techniques:</p>
8 <ul>
9 <li>
10 <p>
11 Nested paging implements some memory management in hardware,
12 which can greatly accelerate hardware virtualization since
13 these tasks no longer need to be performed by the
14 virtualization software.
15 </p>
16 <p>
17 With nested paging, the hardware provides another level of
18 indirection when translating linear to physical addresses.
19 Page tables function as before, but linear addresses are now
20 translated to "guest physical" addresses first and not
21 physical addresses directly. A new set of paging registers now
22 exists under the traditional paging mechanism and translates
23 from guest physical addresses to host physical addresses,
24 which are used to access memory.
25 </p>
26 <p>
27 Nested paging eliminates the overhead caused by VM exits and
28 page table accesses. In essence, with nested page tables the
29 guest can handle paging without intervention from the
30 hypervisor. Nested paging thus significantly improves
31 virtualization performance.
32 </p>
33 <p>
34 On AMD processors, nested paging has been available starting
35 with the Barcelona (K10) architecture. They now call it rapid
36 virtualization indexing (RVI). Intel added support for nested
37 paging, which they call extended page tables (EPT), with their
38 Core i7 (Nehalem) processors.
39 </p>
40 <p> If nested paging is enabled, the <ph conkeyref="vbox-conkeyref-phrases/product-name"/> hypervisor can also use <i>large pages</i> to reduce TLB usage and overhead. This can yield a performance improvement of up to 5%. To enable this feature for a VM, you use the <userinput>VBoxManage modifyvm --large-pages</userinput> command. See <xref href="../cli_topics/vboxmanage-modifyvm.dita"/>.</p>
41 <p>
42 If you have an Intel CPU with EPT, please consult
43 <xref href="sec-rec-cve-2018-3646.dita#sec-rec-cve-2018-3646"/> for security concerns
44 regarding EPT.
45 </p>
46 </li>
47 <li>
48 <p>
49 On Intel CPUs, a hardware feature called Virtual Processor
50 Identifiers (VPIDs) can greatly accelerate context switching
51 by reducing the need for expensive flushing of the processor's
52 Translation Lookaside Buffers (TLBs).
53 </p>
54 <p> To enable these features for a VM, you use the <userinput>VBoxManage modifyvm --vtx-vpid</userinput> and <userinput>VBoxManage modifyvm --large-pages</userinput> commands. See <xref href="../cli_topics/vboxmanage-modifyvm.dita"/>.</p>
55 </li>
56 </ul>
57 </body>
58
59</topic>
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette