VMware Blast Extreme Optimization Guide

VMware Horizon
VMware Horizon Cloud Service on Microsoft Azure

Introduction

Blast Extreme is a next-generation display protocol, developed by VMware. Although Blast Extreme is designed to provide an excellent, out-of-the-box configuration for most use cases, some network conditions and applications require additional tuning. This guide provides detailed information on how to configure and optimize Blast Extreme for these situations.

This guide is intended for IT administrators and implementors who want to provide end users with the best possible remote display experience. You should have:

  • A solid understanding of desktop and application virtualization
  • Familiarity with VMware Horizon® and VMware vSphere®
  • A good working knowledge of networking and infrastructure, covering topics such as Active Directory, Group Policy, and supporting technologies

Blast Extreme Technology

In order to optimize Blast Extreme, it is important to understand two key configurable components: the transport protocol and display protocol codec.

Transport Protocol

Blast Extreme supports two transport protocols to carry the display traffic between clients and the Horizon infrastructure: TCP (Transmission Control Protocol) and UDP (User Datagram Protocol).

  • TCP, the most common transport protocol on the Internet, has built-in data integrity checking and control to ensure that packets arrive at their intended destination without errors. Although this strategy makes for reliable delivery, the process adds overhead.
  • UDP does not employ such controls and is therefore well suited for applications like streaming video and online gaming, which need to efficiently send large amounts of data to the client but can tolerate occasional errors. Streaming video, for example, may freeze for a moment or pixelate briefly, but otherwise continue playing. Display protocols have similar performance characteristics.

Because of its efficiency and excellent performance, UDP, which is the default transport protocol Blast Extreme uses, should not be changed, with two exceptions. For the following conditions, VMware recommends that you use TCP rather than UDP:

  • When traffic must pass through a UDP-hostile network service or device such as a TCP-based SSL VPN, which re-packages UDP in TCP packets
  • If WAN circuits are experiencing very high latency (250 milliseconds and greater)

For all other network conditions, VMware recommends that you use UDP for the best user experience. And if Blast Extreme encounters problems making its initial connection over UDP, it will automatically switch and use TCP for the session instead.

Display Protocol Codecs

The second key configurable component is the codec used to encode and decode the screen content transferred by Blast Extreme. Blast Extreme now supports four codecs: JPG/PNG, H.264, High Efficiency Video Coding (HEVC), and the new Blast Codec.

JPG/PNG

As its name implies, the JPG/PNG codec leverages two image formats, JPG and PNG, to encode and decode display content. These formats employ compression to reduce the size of the content before it is transferred across the network.

  • JPG is a lossy compression format. This means that some of the original image data is discarded (lost) as part of the compression process. While the JPG algorithm attempts to remove only redundant data, in practice other data is lost as well. Therefore, images compressed using JPG cannot be decoded and restored to the same quality they had before compression.
  • PNG is a lossless format. This means that display content encoded and compressed using PNG alone can be restored to match the quality of the original content.

Used together, the JPG/PNG codec is ideally suited for typical Windows and Linux applications, including Microsoft Office. It is especially good at reproducing intricate fonts and other screen content with fine details, including still images and low-motion 3D modeling used by design and engineering applications.

JPG/PNG can also be configured to use build-to-lossless mode. In this mode, the codec is able to support applications that require the display protocol to be lossless, ensuring nothing is lost in transmission. However, it is important to note that building-to-lossless increases session bandwidth utilization because more display information is sent across the network. Information on how to enable build-to-lossless mode is covered in the next chapter, How to Configure Blast Extreme.

Blast Codec

The latest innovation for Blast Extreme is the Blast Codec. The future successor to JPG/PNG, the Blast Codec provides a high-quality user experience while using significantly less CPU and network bandwidth required by other codecs. It is designed to support the majority of customer use cases, including not just typical Windows and Linux apps like Microsoft Office, but also SaaS applications, line-of-business apps like Point of Sale, plus any that require low-motion, high-quality graphics support such as CATIA, Photoshop, and AutoCAD.

  • First introduced in Horizon 7.10, the Blast Codec is rapidly evolving but does not yet support all the optimizations and configuration options available to the other codecs.
  • The Blast Codec should be evaluated for use whenever network bandwidth or display protocol CPU utilization is a primary concern. If testing reveals the Blast Codec is not yet able to fully support an application or use case, simply switch to one of the other three codecs for now. The Blast Codec will continue to evolve.
  • Blast Codec support for the encoder switch was added in Horizon 7.11.

    Important: Many of the optimizations available to the other codecs have not yet been developed for the Blast Codec, including the ability to set custom image qualities.

Information on how to enable the new Blast Codec is covered in the next chapter, How to Configure Blast Extreme.

H.264

Although JPG/PNG and the Blast Codec are ideal for ensuring still image quality, this capability hinders their ability to efficiently support rapidly moving screen content and motion graphics such as streaming video, video editing, and gaming. Fortunately, Blast Extreme supports the H.264 codec for precisely this type of content. H.264, the most commonly used codec in the world, was designed specifically to support entertainment content and is known for its use in encoding Blu-ray movies. Because H.264 also provides good support for most Windows, Linux, and macOS applications, it is also the default Blast Extreme codec option.

However, compared to other codecs, H.264 requires more processing power to perform its encoding and decoding operations. Fortunately, this processing can be offloaded from the CPU to graphics cards (GPU) in the device.

  • On the client, this means near universal H.264 GPU decode support, because nearly all devices with graphics cards manufactured since 2013 have hardware H.264 decode support, including cell phones and most thin clients.
  • On the server side, H.264 encoding can be offloaded to NVIDIA Tesla GPUs, freeing the costly CPUs in VMware ESXi™ hosts to support other tasks, which ultimately increases scalability.

HEVC (High Efficiency Video Coding, H.265)

The fourth Blast Extreme codec option is HEVC. High Efficiency Video Coding, or HEVC for short, is also known as H.265 and is the industry successor to H.264. HEVC provides up to 50 percent better compression with the same quality as H.264. Although this results in a similar reduction in the network bandwidth required, it uses substantially more CPU processing power to encode and decode.

HEVC can also support higher quality at similar compression ratios as H.264, but again at the cost of more processing power with no bandwidth savings. For this reason, HEVC in Blast Extreme requires that the ESXi hosts supporting the virtual desktops and RDSH servers have NVIDIA Tesla or newer GPUs to offload its encoding. HEVC will not work with ESXi CPU encoding alone. HEVC also requires clients to have physical GPUs with H.265 decode support, but fortunately, as with H.264, most client devices manufactured since 2015 have them.

Codec Options

In addition to the four codecs, Blast Extreme supports several codec options that can be used to help support different use cases and network conditions.

H.264 with High Color Accuracy

If users are experiencing poor text or image clarity in certain applications with H.264 alone, Blast Extreme can be configured to use High Color Accuracy (HCA). HCA turns off 4:2:0 chroma subsampling, providing a 4:4:4 sample rate instead. This means the encoder preserves all of the information related to color instead of sacrificing some to increase codec efficiency.

By default, H.264 in Blast Extreme uses a 4:2:0 sample rate, with the 2:0 indicating that only a quarter of the information about image color is included, compared to HCA’s 4:4:4. The 4:2:0 sample rate can result in color “washout” as well as text or image fuzziness when using some applications (for example, CAD) or some color combinations. If users experience any of these issues, HCA can be enabled to improve quality while preserving H.264’s multimedia efficiency.

Note: This additional color information with HCA increases session bandwidth utilization by 5 percent on average. H.264’s 4:4:4 GPU decoding is also not supported by many GPUs. This means the client resorts to CPU decoding, which can result in degraded performance on weak client hardware, particularly when using high-resolution monitors.

Encoder Switch

Another key Blast Extreme innovation is the encoder switch. The encoder switch dynamically switches between either the JPG/PNG codec or the Blast Codec, and H.264, depending on the screen content type. In this mode, under typical application conditions, Blast Extreme uses the Blast Codec or JPG/PNG codec, both of which are optimized for text and still image quality.

But when rapidly changing screen content such as streaming video is detected, Blast Extreme automatically switches to multimedia optimized H.264. This capability not only provides a better user experience but also reduces the resources required for display protocol encoding overall. This provides increased scalability and better performance, especially in CPU-constrained ESXi environments without NVIDIA GPUs.

The encoder switch switches the codec for an entire screen, not just a portion of a screen (screen region). In systems with multiple monitors, the encoder switch will use the best codec for each screen. This can result in H.264 being used for one display and JPG/PNG or the Blast Codec being used for another simultaneously. The encoder switch also supports High Color Accuracy (HCA) for H.264, enabling it to be used for multimedia content that exhibits color problems or lack of clarity with H.264 alone. Note, however, that the encoder switch cannot currently be used with High Efficiency Video Coding (HEVC) or when H.264 and H.264 with High Color Accuracy encoding is offloaded to an NVIDIA GPU.

Offloading H.264 and H.264 with High Color Accuracy to an NVIDIA GPU

Like HEVC, the encoding for H.264 and H.264 with HCA can be offloaded to NVIDIA GPUs installed in the ESXi hosts. This not only provides a genuine hardware GPU to accelerate system and application graphics, it also frees the virtual CPUs for other tasks, helping to improve user experience and system scalability.

Offloading the display protocol encoding is enabled by default but can also be turned off if the GPUs must be dedicated to supporting other tasks. Instructions for configuring all of the Blast Extreme codec options are provided in the next chapter, How to Configure Blast Extreme.

HEVC with High Dynamic Range (HDR) Encoding

Introduced in Horizon 8 (2106) is support for High Dynamic Range (HDR) encoding to provide higher graphical quality with vastly improved color range and contrast. This configuration is ideal for digital photography, design and video production.

Note that HDR is an optional capability of HEVC (High Efficiency Video Coding, H.265) and requires an NVIDIA hardware GPU. HDR also requires Horizon 8 (210) or later with Horizon Agent build 2106-8.3.0-18287218 or later and Horizon Client build 2106-8.3.0-18287501 or later. It is not supported in Horizon 7.

Ideal Applications for Each Codec

The following table provides guidance on which codecs to use for various types of applications. It also tells whether a GPU is required on the client or server.

Table 1: Best Codecs to Use for Various Applications 

Codec

Ideal Applications

Supports
Encoding Offload to GPU?

NVIDIA GPU Required?

JPG/PNG

Typical productivity applications such as Microsoft Office, plus those requiring support for fine details and higher still image quality.

No

No

Blast Codec

Typical productivity applications such as Microsoft Office, plus those requiring support for fine details and higher still image quality.

Note: Requires Horizon Agent 7.10 and VMware Horizon® Client 5.2 or later. Horizon Client 5.2 requires a special client setting. Clients 5.3 and later do not.

No

No

PNG (Build-to-Lossless)

Applications requiring lossless reproduction of original screen content such as non-diagnostic medical imaging.

No

No

H.264

Multimedia applications such as streaming video, video games, and productivity applications with rapidly changing content.

Yes

No

H.264 with High Color Accuracy (HCA)

H.264 applications that require higher color quality or that exhibit lack of clarity with H.264 alone.

Yes

No

Encoder Switch:
JPG/PNG and H.264

Same applications as for the JPG/PNG codec and the H.264 codec.

Note: Requires Horizon Agent 7.10 and Horizon Client 5.2 or later.

No

No

Encoder Switch: Blast Codec and H.264

Same applications as for the Blast Codec and the H.264 codec.

Note: Requires Horizon Agent 7.11 and Horizon Client 5.3 or later.

No

No

Encoder Switch:
JPG/PNG and H.264 with HCA

Same applications as for the JPG/PNG codec and the H.264 with HCA codec.

Note: Requires Horizon Agent 7.10 and Horizon Client 5.2 or later.

No

No

Encoder Switch: Blast Codec and H.264 with HCA

Same applications as for the Blast Codec and the H.264 with HCA codec.

Note: Requires Horizon Agent 7.11 and Horizon Client 5.3 or later.

No

No

High Efficiency
Video Coding (HEVC)

Applications that require the same quality as H.264 with less bandwidth utilization or that require higher quality with similar bandwidth utilization as H.264.

Yes

Yes

HEVC with High Dynamic Range (HDR) Encoding

Applications that require higher graphical quality with improved color range and contrast, such as digital photography.

Yes

Yes

NVIDIA Encoded H.264 (H.264 Offloaded to GPU)

Same applications that are ideal for H.264 while offloading the encoding from the ESXi host CPUs to an NVIDIA GPU.

Yes

Yes

NVIDIA H.264 with HCA

Same applications that are ideal for H.264 with HCA while offloading the encoding from the ESXi host CPUs to an NVIDIA GPU.

Yes

Yes

How to Configure Blast Extreme

To use Blast Extreme, the virtual or physical desktop pool or RDSH server farm must first be configured to use the protocol as the default, or be configured to allow users to choose it. For information about configuring this setting, see the guides Setting Up Virtual Desktops in Horizon, Setting Up Published Desktops and Applications in Horizon, and Administering Cloud Pod Architecture in Horizon, available from the VMware Horizon Documentation site.

Client Settings

If users are permitted by the pool configuration to select a display protocol, Blast Extreme must be selected for each connection’s properties using the Horizon Client.

What is VMware Blast? Sometimes called the Horizon Client udp, or vmware horizon blast, or even vdi blast, vm blast, or blast udp, it is the best remote display protocol.</p>
<p>

Figure 1: Choosing Blast Extreme in the Horizon Client Options

Enabling Codecs and Codec Options

Some of the codecs and codec options can be enabled using the Horizon Client, as shown in the following screenshot.

A certain vmware blast port number or horizon blast ports are used with this display protocol.<br />

Figure 2: Codec Options Available in the Horizon Client

Other codec options can only be enabled by administrators and also require a corresponding Horizon Client setting. The following table details the requirements for each codec. More information about the admin settings is provided in the next section of this chapter.

Table 2: Client and Admin Settings for Blast Extreme Options

Codec

Client Setting Required?

Admin Setting Required?

JPG/PNG

Yes: Deselect all codecs and codec options (uncheck: H.264, Allow High Color Accuracy, and Allow High Efficiency Video Coding).

No

Blast Codec

Yes: Deselect all codecs and codec options (uncheck: H.264, Allow High Color Accuracy, and Allow High Efficiency Video Coding).

Horizon Client version 5.2 only also requires a special configuration file on the client (see the note following this table).

Yes: EncoderBlastCodecEnable = 1

PNG (Build-to- Lossless)

Yes: Deselect all codecs and codec options (uncheck: H.264, Allow High Color Accuracy, and Allow High Efficiency Video Coding)

Yes:
EncoderBuildToPNG = 1

H.264

Yes: Select Allow H.264 Decoding. Deselect all other codecs and codec options.

No

H.264 with High Color Accuracy (HCA)

Yes: Select Allow H.264 Decoding, and select Allow High Color Accuracy. Deselect all other codecs and codec options.

No

Encoder Switch: JPG/PNG and H.264

Yes: Select Allow H.264 Decoding. Deselect all other codecs and codec options.

Note: Requires Horizon Agent 7.10 and Horizon Client 5.2 or later.

Yes:
EncoderSwitchEnabled = 1

Encoder Switch: Blast Codec and H.264

Yes: Select Allow H.264 on the client. Deselect all other codecs and codec options.

Note: Requires Horizon Agent 7.11 and Horizon Client 5.3 or later.

Yes:
EncoderSwitchEnabled = 1

and

EncoderBlastCodecEnabled = 1

Encoder Switch: JPG/PNG and H.264 with HCA

Yes: Select Allow H.264 Decoding, and select Allow High Color Accuracy. Deselect all other codecs and codec options.

Note: Requires Horizon Agent 7.10 and Horizon Client 5.2 or later.

Yes:
EncoderSwitchEnabled = 1

Encoder Switch: Blast Codec and H.264 with HCA

Yes: Select Allow H.264 Decoding and Allow High Color Accuracy. Deselect all other codecs and codec options.

Note: Requires Horizon Agent 7.11 and Horizon Client 5.3 or later.

Yes:
EncoderSwitchEnabled = 1

and

EncoderBlastCodecEnabled = 1

High Efficiency Video Coding (HEVC)

Yes: Select Allow High Efficiency Video Coding. Deselect all other codecs and codec options.

No

New in Horizon 8 (2106): HEVC with High Dynamic Range (HDR) Encoding.

Yes: Select Allow High Efficiency Video Coding and Allow High Dynamic Range Decoding (HDR). Deselect all other codecs and codec options.

A Windows Registry value also needs to be set to 1 on the Client under HKLM\SOFTWARE\VMware, Inc.\Vmware VDM\Client\AllowClientHDR to enable HDR.

No

NVIDIA Encoded H.264 (H.264 offloaded to GPU)

Yes: Select Allow H.264 Decoding. Deselect all other codecs and codec options.

No

NVIDIA Encoded H.264 (H.264 offloaded to GPU) with HCA

Yes: Select Allow H.264 Decoding and Allow High Color Accuracy. Deselect all other codecs and codec options.

No

Note: To enable the new Blast Codec with Horizon Client 5.2, create a file named: config.ini in %appdata%/Vmware in each user’s profile on their virtual desktop or shared RDSH server. In this file, add the single line: RemoteDisplay.allowClientBlastCodec = “TRUE”.

Configuration Settings for Administrators

Many of the codec options and Blast Extreme settings can be controlled by administrators. The settings are configured in the Windows Registry of the Windows virtual and physical desktops and Microsoft RDSH servers. There are several ways that these settings can be applied.

One of the easiest methods is to use the Windows Group Policy template provided with each release of VMware Horizon. The Blast Extreme template is named: vdm_blast.admx and can be found in the VMware-Horizon-Extras-Bundle-xxx.zip file, with xxx indicating the corresponding version of Horizon.

Graphical user interface, text, application</p>
<p>Description automatically generated

Figure 3: Group Policy Settings for Blast Extreme

For more information about the specific Group Policy settings and how to import the ADMX template, see VMware Blast Policy Settings in Configuring Remote Desktop Features in Horizon.

While most of the Blast Extreme settings are included in the ADMX template, some are not, including those related to the Blast Codec and encoder switch. Most configuration settings can be made directly in the Windows Registry of each virtual and physical desktop and RDSH server using your preferred tool for making such registry changes. VMware recommends using VMware Dynamic Environment Manager™ (formerly known as User Environment Manager). Settings made directly in the registry are dynamic and take effect immediately, whereas those requiring a client setting will take effect only after the client disconnects and reconnects to a live session.

Codec settings can also be set in the registry of the templates used to deploy pools of desktops and farms of RDSH servers. This ensures that all systems deployed from these templates are configured properly for Blast Extreme.

The registry location to configure Blast Extreme is:

HKEY_LOCAL_MACHINE\SOFTWARE\Vmware, Inc.\Vmware Blast\Config

Note: Dynamic Environment Manager also provides optimization templates for Blast Extreme. If this functionality is used, configuration settings are created within each user’s profile in the following registry key:

HKEY_CURRENT_USER\SOFTWARE\Vmware, Inc.\Vmware Blast\Config

These settings will override all other Blast Extreme settings. Because this Dynamic Environment Manager functionality needs to evolve to match advances in Blast Extreme, the author of this guide recommends not using the Blast policies included with Dynamic Environment Manager until covered in a future guide release. If other optimizations are not working as expected, verify there are no settings in HKEY_CURRENT_USER.

Each setting is a string value (REG_SZ). The following table documents the key codec and transport settings. Most settings make the option available to be used (set to 1) or not (set to 0). In other words, the settings do not directly enable the feature, such as forcing all connections to use H.264. However, this example can be achieved by disabling support for the H.264 codec’s competing options: JPG/PNG and HEVC.

Note: for all settings in the following table, if the key is set to 1 support is enabled; if it is set to 0 support is turned off.

Table 3: Codec and Transport Registry Settings 

Setting

Registry Name and Description

Default

H.264 Codec

EncoderH264Enabled – Enables or turns off support for H.264.

1
(enabled)

H.264 High Color Accuracy

EncoderH264YUV444 – Enables or turns off support for High Color Accuracy for H.264.

1

HEVC (H.265) Codec

EncoderHEVCEnabled – Enables or turns off support for the HEVC codec (H.265).

1

New in Horizon 8 (2106): HEVC with High Dynamic Range (HDR) Encoding

TopologyHDREnabled = 1

1

JPG/PNG Codec

EncoderAdaptiveEnabled – Enables or turns off support for the VMware JPG/PNG codec.

1

Build-to- Lossless Mode (PNG)

EncoderBuildToPNG – Enables or turns off build-to-lossless mode for the JPG/PNG codec.

0
(turned off)

Blast Codec

EncoderBlastCodecEnabled – Enables or turns off the Blast Codec.

0

Encoder Switch

EncoderSwitchEnabled – Enables or turns off automatic switching between H.264 and JPG/PNG based on screen content.

0

NVIDIA H.264 Offload

EncoderNvidiaH264Enabled – Enables or turns off support for offloading H.264 encoding to NVIDIA GPUs installed in the ESXi hosts.

1

NVIDIA H.265 Offload

EncoderNvidiaHEVCEnabled – Enables or turns off support for offloading HEVC encoding to NVIDIA GPUs installed in the ESXi hosts.

1

UDP Transport

UdpEnabled – Enables or turns off support for the UDP transport protocol.

1

Audio Support

AudioEnabled – Enables or turns off audio support.

1

How to Verify the Configuration

If the end user can be interrupted, or if you are performing configuration testing, the easiest way to see the running session configuration is to use the Horizon Performance Tracker if it is installed. The Horizon Performance Tracker is an option that can be selected during the Horizon Agent installation on the virtual desktop, physical desktop, or RDSH server.

In the following screenshot, the Horizon Performance Tracker is reporting that the Blast session is using UDP and the NVIDIA HEVC codec. Audio is also enabled, but is not currently being used. The display protocol is transferring 6 frames per second, and estimates of network bandwidth and latency are provided.

Graphical user interface, application</p>
<p>Description automatically generated

Figure 4: Horizon Performance Tracker Reports Details of a Blast Extreme Session

Table 4: Names the Performance Tracker Uses for Codec Options

Codec / Code Option

Horizon Performance Tracker Encoder Name

Blast Codec

BlastCodec

JPG/PNG

adaptive

H.264

h264 4:2:0

H.264 with High Color Accuracy

h264 4:4:4

NVIDIA Encoded H.264

NVIDIA NvEnc H264

NVIDIA Encoded H.264 with High Color Accuracy

NVIDIA NvEnc H264

The Horizon Performance Tracker does not currently indicate HCA mode when NVIDIA encoding is used. To verify operation, examine the logs.

High Efficiency Video Coding (HEVC). Requires NVIDIA GPU

NVIDIA NvEnc HEVC

Encoder Switch

switch

Encoder Switch in Operation

The Horizon Performance Tracker does not currently display the codec currently being used per screen by the encoder switch. This detail can be observed by reviewing the logs.

If the Horizon Performance Tracker cannot be used or does not provide the desired details, the most effective way to verify the Blast Extreme configuration is to examine the log files on the virtual desktops, physical desktops, or RDSH servers. The log files are located in:

<SystemDrive>:\ProgramData\VMware\VMware Blast\

To determine whether the session is using UDP or TCP, review the latest entries in the Blast-Worker-SessionId<#>.log file, and look for the entries such as those shown in the following table.

Table 5: Log Entries for Determining the Transport Protocol Used

Codec / Codec Option

Log File Entry

UDP

[VVCSessionManager] BlastSocketDataSockActivatedCb: Data Connection:UDP

TCP

[VVCSessionManager] BlastSocketDataSockActivatedCb: Data Connection:TCP

The running codec and codec options can also be identified by examining the latest entries in the Blast-Worker-SessionId<#>.log file, as detailed in the following table. With the exception of Build-to-Lossless which impacts all screens at all resolutions, each logfile entry denotes the codec used, the number of the screen (monitor) being configured of the total number, and its display resolution.

Table 6: Log Entries for Determining the Codec Used 

Codec / Codec Option

Logfile Entry

Blast Codec

VNCRegionEncoder_Create: region encoder BlastCodec. Screen 0/1 @ Resolution: 3840 x 2160

JPG/PNG
(Adaptive Codec)

VNCRegionEncoder_Create: region encoder adaptive. Screen 0/1 @ Resolution: 3840 x 2160.

Build-to-Lossless

MainApp::OnEncoderConfigChanged: Encoder config changed: EncoderBuildToPNG = 1.

H.264

VNCRegionEncoder_Create: region encoder h264 4:2:0. Screen 0/1 @ Resolution: 1920 x 1080.

H.264 with High Color Accuracy

VNCRegionEncoder_Create: region encoder h264 4:4:4. Screen 0/1 @ Resolution: 3840 x 2160.

Encoder Switch

VNCRegionEncoder_Create: region encoder switch. Screen 0/1 @ Resolution: 3840 x 2160.

Encoder Switch in Operation

SwitchEnc: 1 Screen 1 switching to h264 4:2:0 encoder.
SwitchEnc: 1 Screen 0 switching to h264 4:4:4 encoder.
SwitchEnc: 1 Screen 2 switching to adaptive encoder.
SwitchEnc: 1 Screen 4 switching to BlastCodec encoder.

NVIDIA Encoded H.264
(Requires NVIDIA GPU)

VNCRegionEncoder_Create: region encoder NVIDIA NvEnc H264. Screen 0/1 @ Resolution: 3840 x 2160

VNCEncodeRegionNvEncGetHandle: region encoder NVIDIA NvEnc H264 using YUV 4:2:0 color space.

NVIDIA H.264 with High Color Accuracy
(Requires NVIDIA GPU)

VNCRegionEncoder_Create: region encoder NVIDIA NvEnc H264. Screen 0/1 @ Resolution: 3840 x 2160

VNCEncodeRegionNvEncGetHandle: region encoder NVIDIA NvEnc H264 using YUV 4:4:4 color space.

High Efficiency Video Coding (HEVC)
(Requires NVIDIA GPU)

VNCRegionEncoder_Create: region encoder NVIDIA NvEnc HEVC. Screen 0/1 @ Resolution: 3840 x 2160

New in Horizon 8 (2106): HEVC with High Dynamic Range (HDR) Encoding

VNCSERVER-WIN32: Enabled HDR on display \\.\DISPLAY9
VNCSERVER-WIN32: Successfully changed the NV display.
VNCSERVER-WIN32: ***Setting topology completed by Nvidia Display***

Optimizing Blast Extreme

One of the goals for Blast Extreme is to provide an excellent out-of-the-box configuration for most local area network (LAN) use cases, negating the need to perform complex tuning or learn hundreds of policy settings. However, some use cases and situations require additional tuning, especially for wide area networks (WANs).

  • Desktop and RDSH server sizing and optimization – Before tuning Blast Extreme, it is critical to properly size and optimize the virtual desktops, physical desktops, Microsoft RDSH servers, and supporting infrastructure. When helping customers troubleshoot poorly performing infrastructures, VMware Professional Services routinely finds that the virtual desktops have not been sized properly and are consequently running out of critical resources such as virtual CPUs.
  • ESXi host sizing and resource allocation – We also frequently discover that the underlying ESXi hosts are overutilized and are exhibiting clear indicators of problems impacting user experience such as high CPU Ready times. Therefore, it is imperative to start by verifying that all components are sized properly and have sufficient resources and available capacity. 
  • Multiple monitors and display resolution – Another important aspect to consider is the size of the monitor (or monitors) to be used, and their screen resolutions. Monitors with higher screen resolutions, and use cases with multiple monitors, require more system resources, especially CPU and network bandwidth.
  • The same workload on a 4K display requires up to six times the resources required by 1920 x 1080p, regardless of display protocol and codec used. This is simply due to the larger number of pixels that must be supported at higher resolutions.
  • Operating system optimization – The next component to optimize is the Windows operating system. Windows desktop and server operating systems are not designed for efficient virtualization. By default, they are expected to be installed on dedicated, physical hardware, and not separated from their intended users by networks and display protocols.
  • Fortunately, VMware has developed a free tool to optimize Windows desktops and servers. It turns off or tunes the elements that unnecessarily waste system resources when used in shared, virtual environments. The VMware Operating System Optimization Tool can be downloaded from https://flings.vmware.com/vmware-os-optimization-tool and includes optimization templates for both Windows desktop and server operating systems.

Once infrastructure resources and capacity have been verified, and the desktops and servers have been optimized, the performance of the display protocol can be tuned as necessary. 

The following registry settings have been determined through extensive testing to provide the biggest impact on system resources and user experience. Like the codec and transport options, they can be set using Group Policy or using your preferred method of making registry changes.

Table 7: Optimization Settings 

Setting

Registry Name and Description

Default

Max Session Bandwidth

MaxBandwidthKbps – The maximum bandwidth used by all services (display, keyboard and mouse, audio, file transfer, clipboard, and so on), in kilobits per second.

1000000

Minimum Session Bandwidth

MinBandwidthKbps– The minimum bandwidth used by all services, in kilobits per second.

256

Maximum Screen Bandwidth

MaxBandwidthKbpsPerMegaPixelSlope – The maximum bandwidth used to transfer screen contents per megapixel remoted, in kilobits per second.

Note: This parameter does not impact the bandwidth of other services such as audio and file transfer, which are unrelated to transfer of the screen.

6200

Lowest Starting H.264 Quality

H264maxQP – The lowest quality that H.264 will start with before building the screen to higher quality. The range is 1–36, where 1 is the highest quality.

36

Lowest JPG Quality

JpegQualityLow – The lowest quality JPG/PNG will start with before building the screen to higher quality.

25

Mid JPG Quality

JpegQualityMid – JPG/PNG medium quality.

35

Highest JPG Quality

JpegQualityHigh – The highest quality that JPG/PNG will achieve. Note: Setting this option to 100 will not provide a lossless image. For lossless support, enable Build-to-Lossless (EncoderBuildToPNG = 1).

90

HDR: Relative Brightness of the Paperwhite Level

PixelProviderHDRReferenceWhite - Introduced in Horizon 8 (2106). Controls the relative brightness of the paperwhite level. Accepts integer value greater than 0.

80

Max Frames per Second

EncoderMaxFPS – The maximum frames per second that Blast Extreme will display.

30

Audio Support

AudioEnabled – Enables or turns off audio support.

0 – turned off
1 – enabled

1

Client-Drive Redirection

FileTransferState

0 – turn off upload and download
1 – enable upload and download
2 – enable file upload only
3 – enable file download only

1

Clipboard Support

ClipboardState

0 – turned off in both directions
1 – enabled in both directions
2 – enabled client to server only
3 – enabled server to client only

2

Encoder Image Cache Size (KB)

 

EncoderImageCacheSizeKB – Introduced in Horizon 8 (2111). Set on the virtual desktop and RDSH server (agent side). The actual size of the cache will be the lesser of this value, and the value of DecoderImageCacheSizeKB set on the client but cannot exceed half of the available RAM.

256

Decoder Image Cache Size (KB)

 

DecoderImageCacheSizeKB – Introduced in Horizon 8 (2111).Set on the client. The actual size of the cache will be the lesser of this value, and the value of EncoderImageCacheSizeKB set on the agent side but cannot exceed half of the available RAM.

256

Tuning Blast Extreme for Wide Area Networks

The most common reason to tune all display protocols is to enable them to support wide area networks (WANs). WANs typically have just a fraction of the bandwidth that is available on local area networks (LANs). Because WANs involve long-haul circuits or even satellite connections, they also impose latency (delay), extending how long it takes packets to travel from sender to receiver. Some even suffer from packet loss, where packets never arrive at the destination at all! Fortunately, Blast Extreme can be tuned to handle all of these situations.

It is important to recognize, however, that no display protocol can provide a perfect LAN experience over typical WANs. Some tradeoff in system configuration, supportable applications, and user experience is to be expected. Remember that you are separating the user and their keyboard, monitor, and mouse from the system they are actually using. It is remarkable that this setup can be made to work over a WAN at all!

The following tuning recommendations apply to all WAN conditions. These optimizations directly reduce both CPU and network bandwidth. Reducing network bandwidth is key to enabling support for all adverse network conditions.

  • Optimize the desktops and RDSH servers using the VMware Operating System Optimization Tool.
  • Test the new Blast Codec. With non-multimedia workloads, the Blast Codec uses the least bandwidth compared to all other codec options. If the testing in your environment is not successful, use JPG/PNG.
  • Adust the Blast Encoder Image Cache Size and the Decoder Image Cache Size. Introduced in Horizon 8 (2111) is the ability to adjust the size of the Blast codec cache. In testing this has been shown to decrease the amount of network bandwidth used by Blast Extreme. By default the encoder and decoder caches are set to 256 MB. Internal testing resulted In a 12 percent bandwidth savings by doubling the size of both caches to 512 MB. Actual results will depend on the application workloads and usage patterns.
  • Use a single monitor with the lowest screen resolution supported by the use case. This will reduce both network bandwidth and CPU utilization. Depending on application workload, 4K displays can use up to six times the resources as 1080P.
  • Display resource-intensive multimedia content in a window instead of full screen. If extensive use of graphically intensive content such as streaming video must be supported, consider asking users to view this content in a window, instead of full-screen mode. In testing with a single 4K display, viewing a typical YouTube video in standard windowed mode used 53 percent less bandwidth and 23 percent less virtual desktop CPU than watching the same video full-screen.
  • If full-motion graphics must be supported, such as streaming video, use the encoder switch to dynamically switch between the Blast Codec or JPG/PNG and the H.264 codec. H.264 will provide support for full-motion graphics, whereas the encoder switch will ensure that the most efficient codec is dynamically used for each screen based on screen content.
  • Do not use client-drive redirection unless absolutely required. Set FileTransferState to 0 to turn off client-drive redirection.
  • Use Blast Extreme clipboard settings to reduce or block using the clipboard. Set ClipboardState to 0 to turn off clipboard support.
  • Turn off audio unless absolutely required. Set AudioEnabled to 0 to turn off audio support.
  • Use Group Policy to prohibit use of desktop wallpaper. Desktop wallpaper unnecessarily expends both CPU resources to encode and network bandwidth to transfer. Use of a solid color with no image or pattern is recommended.
  • Use Adobe Flash redirection if extensive use of Adobe Flash must be supported. Flash redirection causes the client to download and execute Flash content instead of rendering it in the virtual desktop and sending it across the WAN. See Configuring Flash Redirection in Configuring Remote Desktop Features in Horizon 7.
  • Use HTML5 multimedia redirection if resource-intensive web-browser-based content such as YouTube or eLearning streaming video must be supported. HTML5 multimedia redirection transfers this screen content to the client as HTML5 code instead of far less efficient display protocol traffic. Testing has revealed this reduces desktop and per-user RDSH server CPU utilization by up to 60 percent and per-user session bandwidth by up to 80 percent.

    However, it does increase client CPU utilization by up to 200 percent for the duration of the redirection (from an average of 8 to 24 percent on a sample test system). It also causes some screen content to letterbox, which may impair user experience. Be certain to test key applications and multimedia content before widespread deployment. For more information see Configuring HTML5 Multimedia Redirection in Configuring Remote Desktop Features in Horizon 7.

  • Use Network QoS (Quality of Service). VMware recommends use of Network QoS to prioritize display protocol network traffic, not just on constrained WAN circuits, but even on the LAN as well. Without QoS, there is nothing to prevent “lower value” network traffic from impairing the performance of time-sensitive applications including Voice over IP and virtual desktops supported by display protocols like Blast Extreme.

    The goal is to configure QoS to prioritize Blast Extreme above general network traffic, but below the few applications that are even more sensitive to delay. Follow these guidelines:

    • VMware recommends configuring QoS to prioritize Blast Extreme one level below Voice over IP traffic, commonly the highest prioritized application. This is typically achieved using a Differentiated Services Code Point (DSCP) marking of AF41.
    • However, if the network also supports interactive video, Blast Extreme is often marked one-level lower with a DSCP marking of AF31.
    • Be certain to test any QoS configuration extensively to ensure not just proper performance for Blast Extreme, but that the configuration does not negatively impair other applications and services that the network must also support.
    • For further information about configuring Blast Extreme to use DSCP marking reference, see VMware Blast Policy Settings.
  • If the H.264 codec is used, set H264maxQP (the lowest starting H.264 quality) to 28. This will force H.264 to start at higher quality and prevent it from expending bandwidth to send initial low-quality screens.
  • What about frame rate? After comprehensive testing, we have determined that limiting frame rate provides little to no reduction in bandwidth or CPU utilization for typical applications and use cases. Typical Microsoft Office use, for example, results in a very low display protocol frame rate. And limiting frame rate for multimedia use cases such as streaming video simply impairs playback quality and user experience. It is better to leverage HTML5 multimedia redirection to optimize such use cases.
  • Special note about NVIDIA GPU supported use cases: Using NVIDIA GPUs to support H.264 and High Efficiency Video Coding (HEVC) substantially increases session bandwidth. This is due to the much higher graphical quality this hardware-enabled configuration provides. Keep in mind that this may complicate WAN use cases.

Note that while the optimizations in this section are typically used with WANs, they can also be used on the LAN if Blast Extreme’s default settings use more bandwidth or other resources than desired.

Additional Optimizations for Low Bandwidth

The following settings are specifically helpful for handling low-bandwidth conditions:

  • In testing, Blast Extreme has been measured using essentially the same amount of bandwidth with both TCP and UDP. Therefore, Blast Extreme can typically be left using its default setting of UDP unless the traffic must pass through a UDP-hostile network device such as a TCP-based SSL VPN.
  • Set MinBandwidthKbps (minimum session bandwidth) to 128 (the lowest currently supported setting).
  • Set MaxBandwidthKbps (maximum session bandwidth) and MaxBandwidthKbpsPerMegaPixelSlope (maximum display bandwidth) to the maximum desired bandwidth utilization per user.

Note that these minimum and maximum bandwidth settings are best effort, not hard limits. Blast Extreme will always resort to using more bandwidth, if necessary, to prevent the session from crashing. Keep in mind that MinBandwidthKbp and MaxBandwidthKbps also impact all services, including audio and file transfer, while MaxBandwidthKbpsPerMegaPixelSlope only limits the bandwidth used to transfer the screen contents.

Additional Optimizations for High Latency

Tuning to handle high latency starts with reducing bandwidth. The fewer packets the display protocol has to transfer across the network, the fewer that will be affected by high latency.

  • Use TCP if latency is greater than 250 milliseconds. In testing, TCP has been shown to handle high latency better than UDP.
  • Set MinBandwidthKbps (minimum session bandwidth) to 128 (the lowest supported setting).
  • Set MaxBandwidthKbps (maximum session bandwidth) and MaxBandwidthKbpsPerMegaPixelSlope (maximum display bandwidth) to either the circuit speed or the maximum desired bandwidth utilization per user.

    The former option allows Blast Extreme to “burst” and use more bandwidth when necessary, while the latter attempts to more strictly control it. Keep in mind, however, that Blast Extreme will always resort to using more bandwidth, if necessary, to prevent the session from crashing.

    MinBandwidthKbp and MaxBandwidthKbps also impact all services, including audio and file transfer, while MaxBandwidthKbpsPerMegaPixelSlope only limits the bandwidth used to transfer the screen contents.

Additional Optimizations for Packet Loss

Like high latency, tuning for packet loss starts with reducing bandwidth. The fewer packets the display protocol puts on the network, the fewer that will be affected by packet loss.

  • Fix the network if packet loss is greater than 5 percent.

    Although Blast Extreme has been able to provide a functional desktop and application experience when packet loss is in excess of 20 percent, it is with noticeable degradation to user experience. Work with network partners and circuit providers to fix the network.

  • Use UDP unless the traffic must pass through a UDP-hostile network device such as a TCP-based SSL VPN. In testing, UDP has been shown to handle packet loss better than TCP in most situations.
  • Set MinBandwidthKbps (minimum session bandwidth) to 128 (the lowest supported setting).
  • Set MaxBandwidthKbps (maximum session bandwidth) and MaxBandwidthKbpsPerMegaPixelSlope (maximum display bandwidth) to either the circuit speed or the maximum desired bandwidth utilization per user.The former option allows Blast to “burst” and use more bandwidth when necessary, while the latter attempts to more strictly control it. Keep in mind, however, that Blast Extreme will always resort to using more bandwidth, if necessary, to prevent the session from crashing. MinBandwidthKbp and MaxBandwidthKbps also impact all services, including audio and file transfer, while MaxBandwidthKbpsPerMegaPixelSlope only limits the bandwidth used to transfer the screen contents.

Guidance for Work-from-Home and Home-Office-to-Cloud Use Cases

There are some special considerations when supporting work-from-home and home-office-to-cloud use cases:

  • While typically supporting just a single user, most households do not yet have LAN-speed Internet connections (gigabit Ethernet). This means most should be considered medium- to high-speed WAN use cases.
  • Do not forget the incoming Internet circuits. These were typically not sized to handle organizations rapidly shifting their workforces to work-from-home deployments. For many customers, maximizing the capacity of these circuits will lead them to optimize Blast Extreme before the needs of any individual home user.
  • If possible, implement network Quality of Service (QoS) to further help maximize the capacity of these Internet circuits and prevent competing network traffic from degrading the performance of Blast Extreme.
  • Use the new Blast Codec plus H.264 with the encoder switch to provide efficient support for nearly all work-from-home and home-office-to-cloud use cases.
  • If bandwidth needs to be limited, start with the MaxBandwidthKbpsPerMegaPixelSlope setting, which limits only the display traffic without negatively impacting audio, file transfer, or other supporting services.
  • MaxBandwidthKbps, which uniformly limits the bandwidth of all Blast Extreme services, can also be used to support more difficult network conditions.
  • If possible, prevent or encourage only limited use of bandwidth-intensive services such as file transfer.
  • Limiting the resolution of employees’ monitors also greatly reduces Internet circuit bandwidth utilization. A monitor at 4K resolution requires up to six times the bandwidth for the same application workload as 1080p.
  • Running traditionally full-screen applications in a window instead of full-screen can also slash bandwidth utilization. In testing, viewing a YouTube video in a standard window instead of full-screen reduced bandwidth utilization by 53 percent.
  • Be sure to also leverage HTML5 multimedia redirection if browser-based HTML5 content must be supported. Testing has shown this reduces the bandwidth required to support such content by up to 80 percent. However, it does increase client CPU utilization by up to 200 percent for the duration of the redirection (from an average of 8 to 24 percent on a sample test system). It also causes some streaming video to letterbox, which may impair user experience. Be certain to test key applications and multimedia content before embarking on widespread deployment.

Optimizing for Quality

The other common reason to tune display protocols is to increase quality. By design, Blast Extreme provides an excellent out-of-the-box user experience for typical applications and use cases on LANs. However, some applications and use cases require higher quality. Fortunately, these can typically be supported with additional resources and special tuning.

It is extremely important to recognize that optimizing for higher quality nearly always results in more system resources being used, not less. Except under unique conditions, it is not possible to increase quality while limiting system resources.

The following tuning options are recommended to increase display protocol quality for all use cases and applications. Start with these recommendations before moving on to more specialized settings.

  • Do not starve the virtual desktops and RDSH servers of resources.
  • Demanding graphical applications commonly require more than two virtual CPUs, even with hardware GPU support.
  • Ensure that ESXi hosts have sufficient resources, especially CPU. Monitor for high CPU Ready times (which are evidence of processor contention).
  • Deploy virtual desktops and RDSH servers on fast virtual disks (all-flash or flash-optimized).
  • Although RAM is rarely the bottleneck, monitor RAM to ensure it is not being over utilized by applications.
  • Test the new Blast Codec unless this use-case is primarily in support of full motion video or high-speed motion graphics such as gaming. If the testing is not successful, use JPG/PNG.
  • If the primary use-case is full motion video or high-speed motion graphics such as gaming, use the H.264, H.264 with High Color Accuracy or High Efficiency Video Coding (codecs), offloaded to an NVIDIA Tesla or newer GPU.
  • For mixed workloads, use the encoder switch to dynamically switch between the new Blast Codec or JPG/PNG and H.264 codecs. The encoder switch ensures that the most efficient codec is dynamically used based on screen content.
  • Do not attempt to support high-quality use cases over a WAN or poorly functioning network.  Except in unique situations, optimizing quality increases bandwidth utilization, whereas optimizations for WANs require limiting quality to function over poor network conditions.
    • Even when there might be sufficient bandwidth, such as for a home-based user with a high-speed cable network connection, be certain to validate end-to-end bandwidth, latency, and packet loss before deciding if the use case can be supported.
    • Note that this guidance does not include Metropolitan Area Networks (MANs) or similar “LANs over long distance,” which typically have as much, if not more, bandwidth than common user LANs.
  • Optimize the Windows operating system in virtual desktops and RDSH servers using the VMware Operating System Optimization Tool, but recognize that some optimizations applied by default might reduce quality or turn off features required to support higher-quality applications.
  • Use HTML5 multimedia redirection if resource-intensive web-browser-based content such as YouTube or eLearning streaming video must be supported at high screen resolutions without NVIDIA GPUs. HTML5 multimedia redirection transfers this screen content to the client as HTML5 code instead of far less efficient display protocol traffic. Testing has shown this enables smooth 4K video playback without need for hardware GPUs.

    However, it does increase client CPU utilization by up to 200 percent for the duration of the redirection (from an average of 8 to 24 percent on a sample test system). It also causes some screen content to letterbox, which may impair user experience. Be certain to test key applications and multimedia content before widespread deployment. For more information, see Configuring HTML5 Multimedia Redirection in Configuring Remote Desktop Features in Horizon 7.

When to Leverage NVIDIA GPUs

Consider using NVIDIA GPUs to:

  • Provide a hardware GPU to support graphically demanding applications such as 3D design, gaming, and photo editing.
  • Offload H.264 and High Efficiency Video Coding (HEVC) encoding from the ESXi hosts.
  • Introduced in Horizon 8 (2106): Enable support for High Dynamic Range (HDR) color
  • Support full-motion video at 4K display resolution or above without HTML5 redirection.

Additional Optimizations for Still Image, 3D Design, and Font Quality

To further increase quality:

  • Test the new Blast Codec. The Blast Codec was designed to be the ideal codec for these types of applications. However, it is a new and rapidly evolving codec. If the testing is not successful, use JPG/PNG.
  • Use NVIDIA GPUs. Applications and use-cases that require higher quality typically have demanding graphical requirements that can only be supported by hardware GPUs.
  • Enable build-to-lossless mode if supporting a use case such as non-diagnostic medical imaging, which requires the display to be transferred without loss of quality. Note that this increases bandwidth and virtual desktop CPU utilization.
  • Enable High Color Accuracy (HCA) for H.264 if supporting an H.264 preferred use case that has exhibited display fuzziness, lack of font or image sharpness, or problems with color reproduction.
  • Consider using HCA for H.264 with the encoder switch to dynamically match the highest-quality H.264 configuration with the Blast Codec or JPG/PNG.
  • Experiment with increasing MaxBandwidthKbpsPerMegaPixelSlope.
    • The default setting of 6200 is geared towards efficiently supporting a medium-quality use case.
    • Increasing this setting helps improve display quality at the expense of higher bandwidth utilization. Although it has more of an impact on multimedia and video gaming, experiment with different values, up to the maximum of 100,000 to identify the best quality at an acceptable level of bandwidth utilization.
  • Introduced in Horizon 8 (2106): Leverage High Efficiency Video Coding (HEVC) with High Dynamic Range (HDR) encoding to provide higher graphical quality with improved color range and contrast. This configuration is ideal for digital photography, design, and video production but requires an NVIDIA hardware GPU to support HEVC.

Additional Optimizations for High-End Multimedia and Video Gaming

In addition to leveraging all of the optimizations described in the preceding section for still images, 3D design, and font quality, try the following suggestions:

  • Use NVIDIA Tesla or newer GPUs. Use cases of this caliber nearly always require hardware GPUs to provide the necessary graphics capabilities and acceleration.
    Note: NVIDIA GPUs will also offload H.264 and HEVC encoding.
  • Increase virtual desktop resources. More than 8 virtual CPUs might be required to support the most demanding use cases, especially video gaming, even with NVIDIA hardware GPUs.
  • Consider using the HEVC codec. HEVC supports higher-quality imaging with less bandwidth utilization than H.264. HEVC requires NVIDIA GPUs to be installed in the ESXi hosts to offload encoding. HEVC also requires a client device capable of HEVC GPU decoding.
  • Increase the frame rate. By default, Blast Extreme is capped at 30 frames per second (FPS). You can increase the rate, up to 60 FPS, by using the Windows Registry setting EncoderMaxFPS. In testing, video gaming workloads have been routinely benchmarked performing at 60 FPS.

GPU Capabilities with Physical Desktops

VMware Horizon and Blast Extreme support not just virtual desktops, but physical ones too. This is ideal for providing remote access to user PCs. But it can also be used to support graphically intensive applications by leveraging the desktop’s physical GPU.

However, in testing it has been determined that only Intel GPUs support OpenGL applications in a remote session. NVIDIA and AMD GPUs are not able to support OpenGL due to a limitation of their video drivers. All three however—NVIDIA, AMD, and Intel—are able to support Microsoft DirectX.

Table 8: OpenGL and DirectX Support Per Brand

GPU Brand

OpenGL Support?

Microsoft DirectX Support?

NVIDIA, including GTX 10xx and 20xx series models

No

Yes

AMD, including Radeon RX and Vega RX models

No

Yes

Intel, including Intel HD Graphics 530, UHD Graphics 620, and Iris Plus Graphics 650

Yes

Yes

Note: Despite the presence of a physical GPU, Blast Extreme with physical desktops is not able to offload H.264, H.264 with High Color Accuracy, or High Efficiency Video Coding (HEVC) encoding, even with NVIDIA GPUs. This is also due to a limitation of desktop-class video drivers. Refer to Using Horizon to Access Physical Windows Machines for more information about using Blast Extreme with physical desktops.

Summary and Additional Resources

Blast Extreme was carefully designed to provide an excellent out-of-the-box experience, with no additional configuration required in almost all cases. For extreme low-bandwidth, high-latency, or high-performance uses cases, however, Blast Extreme comes equipped with several tuning options, as described in this guide.

Additional Resources

Blast Extreme Display Protocol in VMware Horizon Technical Guide

VMware Horizon Documentation

VMware Horizon Client documentation

Configuring Remote Desktop Features in Horizon 7

Using Horizon to Access Physical Windows Machines

VMware Workspace ONE and VMware Horizon Reference Architecture

Deploying Hardware-Accelerated Graphics with VMware Horizon

Using Horizon Performance Tracker

VMware OS Optimization Tool

VMware Windows Operating System Optimization Tool Guide

Changelog

The following updates were made to this guide.

Date

Description of Changes

2021/12/13

  • Updated to cover Horizon 8 (2111) and Horizon Cloud November 2021.
  • Added guidance for:

    • HEVC with High Dynamic Range (HDR) Encoding

    • Adjustable Encoder Image Cache Size and Decoder Image Cache Size settings

2020/03/26

  • Added information about the Blast Codec, which was introduced in the Horizon 7.10 release, and new information about the encoder switch.
  • Expanded the guidance on how to enable different codecs and verify the running configuration.
  • Added guidance on using Network Quality-of-Service (Qos) to prioritize Blast.
  • Added recommendations for supporting work-at-home and home-office-to-cloud use cases.
  • Added information about OpenGL and DirectX compatibility with hardware GPUs in remoted physical PCs.
  • Added guidance on the benefits of HTML5 multimedia redirection.
  • Added new observations on the impact of increasing screen resolution on key system resources.

About the Author and Contributors

Mark Ewert has been working in IT for over 25 years, with nearly two decades’ hands-on experience with VMware technologies. Specializing in IT architecture on every scale, Mark has designed hundreds of successful solutions for organizations of all sizes and verticals. Since first joining VMware in 2008, Mark has focused on helping customers succeed with their end-user computing endeavors. One of his key roles as Senior Product Line Manager on the VMware Desktop Product Management team is leading the effort to benchmark and develop comprehensive guidance for VMware Blast Extreme. 

The author wishes to thank the following people for their contributions to this paper and the growing knowledge of how to optimize VMware Blast Extreme:

  • Anirban Chakraborty, Senior Product Line Manager, Desktop Product Management, VMware
  • Kiran Rao, Senior Director, Desktop Product Management, VMware
  • Sandro Moiron, Staff Engineer, Virtual Workspace R&D, VMware
  • Sean Samenfeld-Specht, Director of Engineering, Virtual Workspace R&D, VMWare
  • Chris Halstead, EUC Staff Architect, EUC Mobile Marketing, VMware
  • Hilko Lantinga, Staff EUC Architect, Desktop Technical Marketing, VMware
  • Valeria Pressler, Staff Engineer, Virtual Workspace R&D, VMware
  • Mike Oliver, Staff Engineer, Virtual Workspace R&D, VMware
  • Jim Yanik, Senior Manager, EUC Technical Marketing, Desktop Technical Marketing, VMware

To comment on this paper, contact VMware End-User-Computing Technical Marketing at euc_tech_content_feedback@vmware.com.

 

 

 

 

 

Filter Tags

Horizon Horizon Horizon Apps Horizon Cloud Service Document Deployment Considerations Intermediate Deploy Optimize Windows Delivery