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.

    Note:

    Transparent page sharing increases total consolidation ratios by reducing the total host memory consumed by all desktops. Over a period of time, for desktop images running on the same host, the transparent page sharing (TPS) feature collapses common memory blocks. The benefits of TPS accrue over time and depend on the number of common memory blocks. For Windows 7, the expected TPS ratio is between 20 and 40 percent.

  • 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 Windows 7 or later 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. This features requires 11.8MB to 512MB (for vSphere 5.1 U1 and later virtual machines) or 64MB (for vSphere 5.0 virtual machines). The default 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. This feature requires 64MB to 512MB of VRAM. The default 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 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 Windows XP desktops and 32-bit Windows Vista and 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.