RAM costs more for servers than it does for PCs. Because the cost of RAM is a high percentage of overall server hardware costs and total storage capacity needed, determining the correct memory allocation is crucial to planning your desktop deployment.

If the RAM allocation is too low, storage I/O can be negatively affected because too much Windows paging occurs. If the RAM allocation is too high, storage capacity can be negatively affected because the paging file in the guest operating system and the swap and suspend files for each virtual machine grow too large.

RAM Sizing Impact on Performance

When allocating RAM, avoid choosing an overly conservative setting. Take the following considerations into account:

  • Insufficient RAM allocations can cause excessive Windows paging, which can generate I/O that causes significant performance degradations and increases storage I/O load.

  • VMware ESXi supports sophisticated memory resource management algorithms such as transparent page sharing and memory ballooning, which can significantly reduce the physical RAM needed to support a given guest RAM allocation. For example, even though 2GB might be allocated to a virtual desktop, only a fraction of that number is consumed in physical RAM.

  • Because virtual desktop performance is sensitive to response times, on the ESXi host, set nonzero values for RAM reservation settings. Reserving some RAM guarantees that idle but in-use desktops are never completely swapped out to disk. It can also reduce storage space consumed by ESXi swap files. However, higher reservation settings affect your ability to overcommit memory on an ESXi host and might affect VMotion maintenance operations.

RAM Sizing Impact on Storage

The amount of RAM that you allocate to a virtual machine is directly related to the size of the certain files that the virtual machine uses. To access the files in the following list, use the Windows guest operating system to locate the Windows page and hibernate files, and use the ESXi host's file system to locate the ESXi swap and suspend files.

Windows page file

By default, this file is sized at 150 percent of guest RAM. This file, which is by default located at C:\pagefile.sys, causes thin-provisioned storage to grow because it is accessed frequently. On linked-clone virtual machines, the page file and temporary files can be redirected to a separate virtual disk that is deleted when the virtual machines are powered off. Disposable page-file redirection saves storage, slowing the growth of linked clones and also can improve performance. Although you can adjust the size from within Windows, doing so might have a negative effect on application performance.

Windows hibernate file for laptops

This file can equal 100 percent of guest RAM. You can safely delete this file because it is not needed in View deployments.

ESXi swap file

This file, which has a .vswp extension, is created if you reserve less than 100 percent of a virtual machine's RAM. The size of the swap file is equal to the unreserved portion of guest RAM. For example, if 50 percent of guest RAM is reserved and guest RAM is 2GB, the ESXi swap file is 1GB. This file can be stored on the local data store on the ESXi host or cluster.

ESXi suspend file

This file, which has a .vmss extension, is created if you set the desktop pool logoff policy so that the virtual desktop is suspended when the end user logs off. The size of this file is equal to the size of guest RAM.

RAM Sizing for Specific Monitor Configurations When Using PCoIP

If you use PCoIP, the display protocol from VMware, the amount of extra RAM that the ESXi host requires depends in part on the number of monitors configured for end users and on the display resolution. 1 lists the amount of overhead RAM required for various configurations. The amounts of memory listed in the columns are in addition to the amount of memory required for other PCoIP functionality.

Table 1. PCoIP Client Display Overhead

Display Resolution Standard

Width, in Pixels

Height, in Pixels

1-Monitor Overhead

2-Monitor Overhead

4-Monitor Overhead

VGA

640

480

2.34MB

4.69MB

9.38MB

SVGA

800

600

3.66MB

7.32MB

14.65MB

720p

1280

720

7.03MB

14.65MB

28.13MB

UXGA

1600

1200

14.65MB

29.30MB

58.59MB

1080p

1920

1080

15.82MB

31.64MB

63.28MB

WUXGA

1920

1200

17.58MB

35.16MB

70.31MB

QXGA

2048

1536

24.00MB

48.00MB

96.00MB

WQXGA

2560

1600

31.25MB

62.50MB

125.00MB

When you consider these requirements, note that virtual machine configuration of allocated RAM does not change. That is, you do not need to allocate 1GB of RAM for applications and another 31MB for dual 1080p monitors. Instead, consider the overhead RAM when calculating the total physical RAM required for each ESXi host. Add the guest operating system RAM to the overhead RAM and multiply by the number of virtual machines.

Important:

To use the 3D rendering feature, you must allocate sufficient VRAM for each remote desktop.

  • The software-accelerated graphics feature, available with vSphere 5.0 and later, allows you to use 3D applications such as Windows Aero themes or Google Earth. By default, the amount of VRAM set for this feature is 64MB.

  • The Virtual Shared Graphics Acceleration (vSGA) feature, available with vSphere 5.1 and later, allows multiple virtual machines to share the physical GPUs on the ESXi hosts. You can use 3D applications for design, modeling, and multimedia. By default, the amount of VRAM set for this feature is 96MB.

  • The Virtual Dedicated Graphics Acceleration (vDGA) feature, available with vSphere 5.5 and later, dedicates a single physical GPU (graphical processing unit) on an ESXi host to a single virtual machine. This feature provides high-end, hardware accelerated workstation graphics. When you create the virtual machine in vSphere, you are prompted to reserve all memory.

  • The NVIDIA GRID vGPU (shared GPU hardware acceleration) feature, available with vSphere 6.0 and later, allows a physical GPU on an ESXi host to be shared among virtual machines. This feature provides high-end, hardware accelerated workstation graphics. When you create the virtual machine in vSphere, you are prompted to reserve all memory.

When 3D rendering is enabled, the maximum number of monitors is 2 and the maximum resolution is 1920 x 1200.

RAM Sizing for Specific Workloads and Operating Systems

Because the amount of RAM required can vary widely, depending on the type of worker, many companies conduct a pilot phase to determine the correct setting for various pools of workers in their enterprise.

A good starting point is to allocate 1GB for 32-bit Windows 7 or later desktops and 2GB for 64-bit Windows 7 or later desktops. If you want to use one of the hardware accelerated graphics features for 3D workloads, VMware recommends 2 virtual CPUs and 4GB of RAM. During a pilot, monitor the performance and disk space used with various types of workers and make adjustments until you find the optimal setting for each pool of workers.