Before proceeding with these steps, ensure that:
- there are no problems in your external infrastructure like faulty hardware or possible misconfigurations (common configuration problems are IP conflicts, unintended traffic shaping, misconfigured trunk and EtherChannel ports)
- the network is not congested
- the network the ESXi host is on is stable and performs as expected
- the virtual machines are configured with the VMXNET3 network adapter
- the hardware drivers and firmware versions are recent
- the BIOS is recent and configured appropriately
- the virtual machine is running the latest version of VMware Tools (they contain the drivers for the virtual hardware)
- any security software like intrusion detection/prevention systems or packet inspectors have enough resources available and are configured correctly (check the logs for incorrectly filtered traffic or dropped packets)
After you have confirmed that your infrastructure is healthy and all components are configured correctly, check the power saving configuration. For virtual machines with more than one virtual CPU, also check if high CPU %RDY
times have a negative impact on these virtual machines.
The final step is to check the RSS settings. Changing the RSS settings should only be done by trained network administrators. VMware also recommends confirming that all relevant applications (including the operating system) support changes to the RSS configuration.
Power plan
To ensure that the system takes advantage of the available resources, it is important to disable all power saving features while investigating performance issues. If the power saving configuration appears to be related to the performance problems, a customized power plan based on the performance and power saving requirements should be created. If you are unsure about which power saving configuration is recommended for your system, engage your hardware vendor.
To adjust the power plan settings on a Windows Server:
- Click Start, type
powercfg.cpl
, and press Enter.
- Ensure that the High performance option is selected.
Note: Steps 3 through 6 are optional.
- Click Change plan settings.
- Click Change advanced power settings.
- To enable access to all settings, click Change settings that are currently unavailable.
- Browse the available settings and adjust as necessary.
- Click OK to confirm and close all windows.
Note: Some changes might require a reboot of the guest system.
Checking CPU %RDY times
To determine if a virtual machine is impacted by high CPU %RDY
times, use one of these methods:
- Count all virtual CPUs on a particular host or cluster, and divide by the number of logical CPUs. A result of one or higher means that the host or cluster is overcommitted and should be investigated. Values of four or higher are considered overloaded and must be investigated immediately.
Notes:
- The intent of this method is to quickly determine if a host is overcommitted, rather than determining if it is not. VMware recommends using
esxtop
to observe detailed host performance.
- Although hyper-threading doubles the number of logical processors, it cannot provide the same performance as two physical processor cores. If it is likely that the host is overcommitted, calculate using the number of physical CPUs, rather than logical CPUs.
- The
esxtop
command displays the values for the CPU %RDY
time when run on the host with the affected virtual machines.
- The
vm-support
command provides the capability to create performance snapshots. For more information, see Collecting performance snapshots using vm-support (1967).
To relieve an overcommitted host, use one of these methods:
- Move the affected virtual machine to a host with more available resources
- Move other virtual machines off the host
- Decrease the number of virtual CPUs on the affected virtual machine
Note: Changing the CPU count might not be supported by the guest operating system. For more information, contact the operating system vendor.
Enabling and configuring Receive Side Scaling (RSS)
Before enabling RSS:
- Ensure that the hardware version of the virtual machine is set to Version 7 or higher. For more information, see Virtual machine hardware versions (1003746).
- Ensure that the virtual network adapter is set to VMXNET3 and that the operating system is supported by this adapter. For more information, see Choosing a network adapter for your virtual machine (1001805).
- Ensure that RSS is enabled in the guest operating system. To verify this in a Windows guest operating system, open a command prompt and run the command:
netsh int tcp show global
The output indicates whether Receive-Side Scaling State is enabled or not.
To see more details about current RSS settings you can use Powershell commands shared below:
Get-NetAdapterRss -Name "MyAdapter" - This example gets the RSS properties of the network adapter named MyAdapter.
- Ensure that the network adapter in the virtual machine is configured to use RSS. To verify this in a Windows guest operating system:
- Open the Device Manager, navigate to Network adapters, and right-click the adapter you wish to enable RSS on.
- In the Properties window, click the Advanced tab, then click RSS in the list on the left side.
- Change the Value to Enabled and click OK to close the window. A reboot might be necessary for the changes to take effect.
Note: Enabling/disabling the RSS feature interrupts the network connection on the adapter for several seconds. If you are accessing the system via a remote desktop session, ensure that you can access the system in another way in case an issue occurs that causes the network connection to not return.