This issue occurs because of changes in the architecture of certain CPUs. These changes affect the way that ESX hosts perform COW (Copy-on-Write) memory operations when using vSMP in a virtual machine.
There are two common ways to workaround this problem. Perform one of the following workarounds:
-
Instead of rebooting the virtual machine, power it off, then power it back on. This resolves the issue because the COW memory is cleared and repopulated upon startup of the virtual machine.
-
Disable page-sharing to resolve the slow performance. Page-sharing is used to reclaim duplicated memory pages across and within virtual machines. If page-sharing is disabled, virtual machines do not share memory in this way and therefore the virtual machine consumes more physical memory because all memory pages are duplicated for each virtual machine running on the ESX host.
Note: Turning page-sharing off can potentially increase the amount of swapping if you are over-committing the ESX host memory resources.
To disable page-sharing on the ESX host:
-
Log in to VirtualCenter (or the ESX host directly) with an administrative account using the VMware Infrastructure (VI) Client.
-
Click on the ESX host on which you want to disable page-sharing.
-
Click the Configuration tab.
-
Click the Advanced Settings link.
-
Click Mem in the Advanced Settings window.
-
Look for the Mem.ShareScanGHz option and set the value to 0.
Note: By default, Mem.ShareScanGHz is set to 4.
-
Click OK.
-
Reboot the ESX host.
If disabling page-sharing for the ESX is not an option, you can disable page-sharing for the virtual machine.
To disable page-sharing in a virtual machine:
- Right-click on the virtual machine in the VI Client Inventory and choose Edit Settings.
- Click Options and click Advanced > General.
- Click Configuration Parameters.
- In the dialog box that appears, click Add Row.
- Enter sched.mem.pshare.enable and set its value to False.