It’s a common question: "Are there any BIOS settings Dell recommends for VMware ESX/vSphere?" Primarily, Dell recommends reading and following VMware’s best practices. Specifically, Performance Best Practices for VMware vSphere™ 4.1, Performance Best Practices for VMware vSphere 5.0," and the VMware Best Practices guide for ESXi 5.5. For ESXi 5.5, Dell has taken a new step with its Server Configuration Profile technology. The Dell Hypervisor Engineering team has built a Server Configuration Profile that can be used to configure a PowerEdge R720 according to the VMware Best Practices guide for ESXi 5.5. This Server Configuration Profile can be used to configure every part of your server – BIOS, iDRAC, NIC, HBA, and even Storage – in a single operation. The profile is in xml format and can be modified to fit any custom requirements for a specific environment.
For more information about using Server Configuration Profiles, please review these two papers: Server Configuration Profile Workflows and Server Configuration Profile File Structure.
Here are a list of additional points of interest specifically regarding Dell PowerEdge servers:
- Hardware-Assisted Virtualization: As the VMware best practices state, this technology provides hardware-assisted CPU and MMU virtualization. In the Dell PowerEdge BIOS, this is known as "Virtualization Technology" under the "Processor Settings" screen. Depending upon server model, this may be Disabled by default. In order to utilize these technologies, Dell recommends setting this to Enabled.
- Intel Turbo Boost Technology and Hyper-Threading Technology: These technologies, known as "Turbo Mode" and "Logical Processor" respectively in the Dell BIOS under the "Processor Settings" screen, are recommended by VMware to be Enabled for applicable processors; this is the Dell factory default setting.
- Non-Uniform Memory Access (NUMA): VMware states that in most cases, disabling "Node Interleaving" (which enables NUMA) provides the best performance, as the VMware kernel scheduler is NUMA-aware and optimizes memory accesses to the processor it belongs to. This is the Dell factory default.
- Power Management: VMware states "For the highest performance, potentially at the expense of higher power consumption, set any BIOS power-saving options to high-performance mode." In the Dell BIOS, this is accomplished by setting "Power Management" to Maximum Performance.
- Integrated Devices: VMware states "Disable from within the BIOS any unneeded devices, such as serial and USB ports." These devices can be turned off under the "Integrated Devices" screen within the Dell BIOS.
- C1E: VMware recommends disabling the C1E halt state for multi-threaded, I/O latency sensitive workloads. This option is Enabled by default, and may be set to Disabled under the "Processor Settings" screen of the Dell BIOS.
- Processor Prefetchers: Certain processor architectures may have additional options under the "Processor Settings" screen, such as Hardware Prefetcher, Adjacent Cache Line Prefetch, DCU Streamer Prefetcher, Data Reuse, DRAM Prefetcher, etc. The default settings for these options is Enabled, and in general, Dell does not recommend disabling them, as they typically improve performance. However, for very random, memory-intensive workloads, you can try disabling these settings to evaluate whether that may increase performance of your virtualized workloads.
For more information on these and other BIOS options, see the "Using the System Setup Program" section of your Hardware Owner’s Manual.
For general performance issues in a vSphere environment, a great resource is Troubleshooting Performance Related Problems in vSphere 4.1 Environments.