When you create certain Horizon 7 for Linux virtual machines, you must change the memory settings and configuration parameters to the minimum values recommended.
Virtual machines that are configured to use NVIDIA vDGA use the NVIDIA physical graphic card. Virtual machines that are configured to use NVIDIA GRID vGPU use the NVIDIA virtual graphic card, which is based on the NVIDIA physical graphic accelerator. You do not need to change the Video Memory (vRAM) settings and configuration parameters for these virtual machines.
Virtual machines that are configured to use 2D or vSGA graphics use the VMware virtual graphic card and you must change the following settings for these types of virtual machines:
- Video Memory (vRAM) settings
- Configuration parameters
- 3D Memory settings
- vCPU and virtual memory settings for performance requirement
Video Memory (vRAM) Settings
When you create a Linux virtual machine in vSphere Client, configure the vRAM size as shown in Table 1. Set the vRAM size that is recommended for the number and resolution of the monitors that you configure for the virtual machine.
|vRAM Size||Number of Monitors||Maximum Resolution|
|10 MB||1||1600x1200 or 1680x1050|
These vRAM sizes are the minimum recommendations. If more resources are available on the virtual machine, set the vRAM to larger values for improved video performance.
10 MB is the minimum vRAM size recommendation for a machine that is configured with a single monitor at the lowest resolution.
You must power off the virtual machine to set the number of displays and the amount of video memory to use, as described in Create a Virtual Machine and Install Linux.
Horizon Connection Server 7 does not automatically configure the vRAM settings on Linux virtual machines like it does on Windows virtual machines. You must manually configure the vRAM settings in vSphere Client.
If a Linux virtual machine is configured with a smaller vRAM size than is recommended, the following issues might occur:
- Desktop sessions might be disconnected right after the initial connection is made.
- Autofit might fail to work. The desktop is then displayed in a small area of the screen.
If a Linux virtual machine's Number of displays value is less than the actual required count, one or more monitors display blank for the desktop.
svga.vramSize = "268435456"
To display the Linux remote desktop on multiple monitors, you must set certain configuration parameters for the virtual machine. The general steps to set a configuration parameter for a virtual machine are as follows:
- Power off the virtual machine.
- In the vSphere Web Client, right-click the virtual machine and select Edit Settings.
- Click the VM Options tab and click Advanced.
- Click Edit Configuration and then Add Row.
- Enter the configuration parameter name and value.
- Click OK to save the changes.
- Calculate the
svga.maxHeightvalues according to the number and orientation (horizontal or vertical) of the display monitors. The general rule is that the
svga.maxHeightvalues must be large enough to support all the displays. For example, to support four displays at the maximum resolution of 2560x1600, you must set the following values:
- The desktop is displayed on some of the monitors and the other monitors are blank.
- A keystroke is displayed multiple times.
- The desktop becomes slow.
- The desktop is displayed in a small area of the screen.
Screen Size Limitation of 4096x4096 Monitors
For RHEL 6.8, CentOS 6.8, RHEL 7.3, CentOS 7.3, Ubuntu 16.04, SLED 12 SP2, and SLES 12 SP2, the maximum screen size for 2D and vSGA is 4096x4096. When you run the xrandr command, the first line of the output has maximum 4096x4096.
For Ubuntu 14.04, the limitation is also introduced if you install the latest patches from the official Ubuntu repositories.
If you have to use VMware Hardware version 11 (HWv11) or later for your virtual machine, add the following line into the virtual machine's VMX configuration file:
mks.enable3d = TRUE
With this solution, the Linux operating system can report 3D capabilities to software applications, such as Chrome. However, doing so might impact the Linux system's performance.
If your virtual machine can use VMware Hardware version 10, use the following line in your virtual machine's VMX file:
virtualHW.version = "10"
This solution is not applicable for RHEL 6.8 and CentOS 6.8.
To make this solution work on Ubuntu 16.04 systems, you must install the latest patches from the official Ubuntu repositories.
vCPU and Memory Settings
To improve the performance of a 2D or vSGA desktop, set more vCPUs and virtual memory for the Linux virtual machine. For example, set 2 vCPUs and 2 GB of virtual memory.
For the large screen of multiple monitors, such as four monitors, set 4 vCPUs and 4 GB of virtual memory for the virtual machine.
For the video playback purpose in a 2D or vSGA desktop, set 4 vCPUs and 4 GB of virtual memory for the virtual machine.
3D Memory Settings
To improve performance in a vSGA multiple monitor environment, set the 3D Memory setting for the virtual machine to 1 GB or larger.