Find Virtual Machine Monitor (VMM) execution mode
In VMware ESX/ESXi hypervisor, for each virtual machine there will be one VMM running parallel in side the hypervisor kernel . The VMM is the heart of every virtual machine, the VMM sits in between the Virtual machine and hypervisor kernel. The VMM translates the Virtual machine requests like CPU, RAM, IO etc to the VMkernel, then the VMkernel will schedule and executes those virtual machine requests.
So to understand how the VMM works and what kind of execution engine is used by the VMM ? etc is important and this can be easily found from the virtual machine log file.
In the ESX/ESXi host, browse the datastore, open the virtual machine log and check the below lines, the red line indicates the current VMM execution engine is it using, whether the processor is capable of hardware memory management unit which is used or memory virtualization.
2012-04-15T09:30:43.171Z| vmx| MONITOR MODE: allowed modes : BT32 HV HWMMU
2012-04-15T09:30:43.171Z| vmx| MONITOR MODE: user requested modes : BT32 HV HWMMU
2012-04-15T09:30:43.171Z| vmx| MONITOR MODE: guestOS preferred modes: HWMMU HV BT32
2012-04-15T09:30:43.171Z| vmx| MONITOR MODE: filtered list : HWMMU HV BT32
2012-04-15T09:30:43.171Z| vmx| HV Settings: virtual exec = ‘hardware’; virtual mmu = ‘hardware’
2012-04-15T09:30:43.171Z| vmx| VPID and EPT Capabilities (0x00000f0106114141)
2012-04-15T09:30:43.171Z| vmx| EPT memory type WB yes
2012-04-15T09:30:43.171Z| vmx| 2MB super-page yes
2012-04-15T09:30:43.171Z| vmx| INVEPT support yes
2012-04-15T09:30:43.171Z| vmx| Type 1 INVEPT yes
2012-04-15T09:30:43.171Z| vmx| Type 2 INVEPT yes
HWMMU = Hardware memory management unit
– The processor should have EPT or RVI, EPT (Extended Page Tables) for Intel and RVI (Rapid Virtualization Index) for AMD
HV (means processor is capable of Hardware assistance and the vm can use)
BT32 = Binary Translation 32 (When using BT32 (BT32 you can see only in Intel processors), the virtual machine runs with software virtualization for as long as possible, but it dynamically switches to hardware virtualization if the virtual machine enters 64‐bit mode.)
BT = Binary Translation invented by the VMware, this is a software based technique to virtualize a CPU, that it will translates the virtual CPU instructions to the real physical CPU instructions.
You can change the VMM execution mode for a virtual machine, as below
1 – Power off the VM
2- Edit the VM settings
3- Go to “Options” menu bar > select the “CPU/MMU Virtualization” section
4 – There you can change
NOTE – It is not recommended to change these settings, in some workloads and some specific scenarios we can change.