首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置KVM VM使用影子页表?

如何设置KVM VM使用影子页表?
EN

Stack Overflow用户
提问于 2017-10-05 23:14:49
回答 1查看 1.2K关注 0票数 1

我想测量影子页表与EPT的性能。我知道在kvm代码路径中,EPT和影子页表共享一些代码路径。有一个开关可用于检查是否启用了EPT。

因此,我关闭了EPT,我认为这是在KVM中使用影子页表的一种方式。我在主机上执行了一些命令:

代码语言:javascript
复制
# cat /sys/module/kvm_intel/parameters/ept
 Y   //check if EPT is enabled, Yes it is
# rmmod kvm_intel
# modprobe kvm_intel ept=0,vpid=0  //Re-modprobe kvm_intel, but turn off EPT and VPID
# cat /sys/module/kvm_intel/parameters/ept
 N   // EPT is disabled
# cat /sys/module/kvm_intel/parameters/vpid
 Y   //VPID is still enabled

在这些通信之后,我期望EPT被禁用,然而,我创建了一个具有4个vcpu的VM,但是在VM中,我在VM中使用htop只找到I个vcpu。我也不知道原因。

因此,我再次打开ept,我可以看到在使用htop的vm中有4个vcpu。但是,在另一台服务器上,我关闭了ept,在VM中,我仍然可以找到4个vcpu。

在主机中,我测试了QEMU线程数:

代码语言:javascript
复制
pstree -p | grep qemu
       |-qemu-kvm(20594)-+-{qemu-kvm}(20612)
       |                 |-{qemu-kvm}(20613)
       |                 |-{qemu-kvm}(20614)
       |                 |-{qemu-kvm}(20615)
       |                 |-{qemu-kvm}(20618)
       |                 `-{qemu-kvm}(23429)

仍然有多个线程。

在KVM中,我使用lscpu检查:

代码语言:javascript
复制
    # lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0
Off-line CPU(s) list:  1-3
Thread(s) per core:    1
Core(s) per socket:    1
座:                 1
NUMA 节点:         1
厂商 ID:           GenuineIntel
CPU 系列:          6
型号:              62
型号名称:        Intel(R) Xeon(R) CPU E5-2640 v2 @ 2.00GHz
步进:              4
CPU MHz:             1999.999
BogoMIPS:            3999.99
超管理器厂商:  KVM
虚拟化类型:     完全
L1d 缓存:          32K
L1i 缓存:          32K
L2 缓存:           4096K
NUMA 节点0 CPU:    0
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm fsgsbase tsc_adjust smep erms xsaveopt
EN

回答 1

Stack Overflow用户

发布于 2018-05-25 17:33:49

由于命令格式不正确,VPID仍处于启用状态

代码语言:javascript
复制
# modprobe kvm_intel ept=0 vpid=0(Use spaces instead of commas)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46589149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档