Minimal amount of Reliable Memory in ESXi
search cancel

Minimal amount of Reliable Memory in ESXi

book

Article ID: 301399

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

This article explains the Reliable Memory feature in ESXi.

Environment

vSphere ESXi 5.5
vSphere ESXi 6.x
vSphere ESXi 7.x
vSphere ESXi 8.0.x



Resolution

 
Reliable Memory is a unique feature introduced in vSphere 5.5. If the hardware on the server platform supports the reliable memory feature, ESXi can put memory pages consumed by critical services onto more reliable memory regions. The memory scheduler will do its best at putting all critical code and data in reliable memory. However, if at any point in time the system is short in reliable memory, the ESXi host will fall back to allocating regular memory. At that point, using the reliable memory for critical services is at best effort.
 
ESXi tries to remap any pages from and to reliable memory to recover from a reliable memory shortage. However, not all pages are eligible for remapping so ESXi might not be able to put all critical services back into reliable memory.
 
If the amount of reliable memory on a system is too small to contain all the critical services at boot time, the host might hang or PSOD. As a minimum, it is recommended booting ESXi with 3GB of reliable memory. In case of a system with multiple NUMA nodes, it is also recommended to evenly distribute the reliable memory between NUMA nodes if possible.
 
To maintain that all critical services remain in reliable memory, it is recommended not to exhaust the reliable memory. Therefore configuring virtual machines with more reliable memory than the host capacity is not recommended.

Additional Information

View Reliable Memory:

Procedure:

  1. Browse to the host in the vSphere Client.
  2. Click the Configure tab and click System.
  3. Select Licensing.
  4. Under Licensed Features verify Reliable Memory is displayed.

Check how much memory is considered reliable by using the ESXCLI hardware memory get command.
$ esxcli hardware memory get