Page tree
Skip to end of metadata
Go to start of metadata

Disclaimer

My postings are my own and don’t necessarily represent VMware’s positions, strategies or opinions.

External links:

General Tips

  • Turn Hardware Acceleration in all software:
    • Browsers: IE, FireFox, Chrome
    • MSOffice 2013+: Word, Excel properties
  • PCoIP Tuning:
    • Lower audio quality 500kbps → 150kbps. If audio is not needed, disable it (Enable/Disable Audio in the PCoIP session).
    • Lower FPS 30 → 12-15 (Configure PCoIP Image Quality Levels)
    • Check the image quality levels, try Minimum Image Quality = 40% , Maximum Image Quality = 70% OR Minimum Image Quality = 60% , Maximum Image Quality = 80%
    • Turn off "Build to Lossless"

Blast Tuning

Dynamic Environment Manager

Tuning in PoC

 ENCODERMAXFPS

ENCODERMAXFPS

  • Description  The Encoder Maximum Frame Rate setting dictates the speed at which updates are sent to the remote Horizon client. Most users cannot distinguish a Blast Extreme setting running at 24fps form a session running at 30fps. Lowering this value can reduce the quantity of bandwidth required per session resulting in better overall performance.
  • Tuning methodology  starting at 30, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by 1 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
  • Default value  30
  • PoC final value  23
  • Range  1/120
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\EncoderMaxFPS
 AUDIOENABLED

AUDIOENABLED

  • Description  The Audio Enable setting enables or disables audio on the virtual desktop. Since audio can consume significant bandwidth, this setting should be at zero for all use cases where audio is not required.
  • Default value  1
  • PoC final value  0
  • Range  0/1
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\AudioEnabled
 H264MAXQP

H264MAXQP

  • Description  The H.264 maximum Quantization Parameter setting controls how much the resulting image is quantized, i.e. lossy compressed. This maximum QP sets the upper bound for quantization, i.e. the lowest quality.
  • Tuning methodology  starting at 28, increase the value by 1 and perform a series of consistent visual tests. Continue increasing the value by 1 through several test cycles until the value is so high that the tests yield undesirable results. Return the setting to a value of -1 under the highest observed number with acceptable results. We advise keeping these values within +/- 5 of the defaults, as more significant changes can have drastic effects.
  • Default value  36
  • PoC final value  38
  • Range  0/51
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\H264maxQP
 H264MINQP

H264MINQP

  • Description  The H.264 minimum Quantization Parameter setting controls how much the resulting image is quantized, i.e. lossily compressed. This minimum QP sets the lower bound for quantization, i.e. the best quality.
  • Tuning methodology  starting at 15, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by 1 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results. We advise keeping these values within +/- 5 of the defaults, as more significant changes can have drastic effects.
  • Default value  10
  • PoC final value  10
  • Range  0/51
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\H264minQP
 JPEGQUALITYHIGH

JPEGQUALITYHIGH

  • Description  The JPEG Quality High setting specifies the image quality of the desktop display for JPEG/PNG encoding. The high-quality settings are for areas of the screen that are more static, resulting in a better image quality. Lowering this value can reduce the quantity of bandwidth required per session resulting in better overall performance.
  • Tuning methodology  starting at 90, reduce the value by 2 and perform a series of consistent visual tests. Continue reducing the value by 2 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
  • Default value  90
  • PoC final value  75
  • Range  1/100
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\JpegQualityHigh
 JPEGQUALITYMID

JPEGQUALITYMID

  • Description  The JPEG Quality Mid setting specifies the image quality of the desktop display for JPEG/PNG encoding. The mid-quality settings are for areas of the screen that change periodically, resulting in a better image quality. Lowering this value can reduce the quantity of bandwidth required per session resulting in better overall performance.
  • Tuning methodology  starting at 35, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by 1 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
  • Default value  30
  • PoC final value  30
  • Range  1/100
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\JpegQualityMid
 JPEGQUALITYLOW

JPEGQUALITYLOW

  • Description  The JPEG Quality Low setting specifies the image quality of the desktop display for JPEG/PNG encoding. The mid-quality settings are for areas of the screen that change frequently, resulting in a better image quality. Lowering this value can reduce the quantity of bandwidth required per session resulting in better overall performance.
  • Tuning methodology  starting at 25, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by 1 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
  • Default value  25
  • PoC final value  20
  • Range  1/100
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\JpegQualityLow
 MINBANDWIDTHKBPS

MINBANDWIDTHKBPS

  • Description  Similar to the PCoIP bandwidth floor, the Minimum Bandwidth Kbps setting specifies a reservation of bandwidth for Blast Extreme. The protocol will immediately begin consuming this quantity of bandwidth if the pixel rates demand it without any throttling.
  • Tuning methodology  starting at 256, increase the value by 1024 and perform a series of consistent visual tests. The perceived performance of the session should eventually improve as the value increases. Continue increasing the value by intervals of ~1024 through test cycles until the tests results stop improving. Return the setting to a value of ~1024 over the lowest observed number with acceptable results.
  • Default value  256
  • PoC final value  7168
  • Range  1/100000000
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\ MinBandwidthKbps
 UDPENABLED

UDPENABLED

  • Description  In Horizon 7.6, Blast Extreme uses an “Adaptive Transport” technology to detect sub-optimal network conditions and if necessary, respond by transitioning the Blast Extreme data stream from TCP to UDP. On networks with consistent packet loss (drops) due to network congestion or other adverse conditions, UDP may yield better performance. However, on many high intensity workloads, TCP has been observed to perform better.
  • Tuning methodology  With all other Blast Extreme settings at their defaults, set the registry value to 1 and disconnect from the VM. Log back into the VM and perform a series of consistent visual tests. Switch the registry value from 1 to 0 and disconnect from the VM. Log back into the VM and perform a series of consistent visual tests. Choose the option that yields the best test results.
  • Default value  1
  • PoC final value  0
  • Range  1/0
  • HKLM\SOFTWARE\Policies\VMware, Inc.\VMware Blast\Config\UdpEnabled

PCoIP Tuning

Dynamic Environment Manager

PCoIP Profile

Suggested BW for Profile (Mbps)

Max Session BW (kbps)

Min Session BW (kbps)

Enable BTL

Max Initial Image Quality

Minimum Image Quality

Max FPS

Max Audio BW (kbps)

Image Quality Performance

Workstation

20

900000

100

Yes

100

50

60

1600

50

LAN

10

900000

100

Yes

90

50

30

1600

50

Default

5

900000

100

No

80

40

30

500

50

Low Speed Broadband

2

5000

100

No

70

40

20

500

50

T1

1

2000

100

No

70

30

15

200

25

Sub T1

0.5

1000

100

No

70

30

5

90

0

Tuning in PoC

 PCOIP.EVENT_FILTER_MODE

PCOIP.EVENT_FILTER_MODE

  • Description  The event filter mode setting dictates the level of PCoIP event logging. All tuning and troubleshooting should be done with the log at level 3 (debug). This setting should be backed down to level 2 under normal, production conditions.
  • Default value  2
  • Optimal value  3
  • Range  0/3
  • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.event_filter_mode
  • Type: REG_DWORD
 PCOIP.MAXIMUM_FRAME_RATE

PCOIP.MAXIMUM_FRAME_RATE

  • Description  The maximum frame rate setting dictates the speed at which updates are sent to the remote Horizon client. Most users cannot distinguish a PCoIP setting running at 24fps form a session running at 30fps. Lowering this value can reduce the quantity of bandwidth required per session resulting in better overall performance.
  • Tuning methodology  starting at 30, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by 1 through several test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
  • Default value  30
  • PoC final value  23
  • Range  1/120
  • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.maximum_frame_rate
  • Type: REG_DWORD
 PCOIP.MAXIMUM_INITIAL_IMAGE_QUALITY

PCOIP.MAXIMUM_INITIAL_IMAGE_QUALITY

  • Description  The maximum image quality setting dictates the quality of still or mostly still graphics being sent to the Horizon client. Lowering this value can reduce the quantity of bandwidth required per session resulting the perception of a faster, snappier user interface. Most users cannot distinguish a PCoIP session running at a value of 70 over a value of 80. Regardless of this settings value, all images are built out to a near-lossless quality over time.
    • Tuning methodology  starting at 80, reduce the value by 5 and perform a series of consistent visual tests. Continue reducing the value by intervals of 5 through test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +5 over the lowest observed number with acceptable results.
    • Default value  80
    • PoC final value  70
    • Range  30/100
    • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.maximum_initial_image_quality
    • Type: REG_DWORD
 PCOIP.MINIMUM_IMAGE_QUALITY

PCOIP.MINIMUM_IMAGE_QUALITY

  • Description  The minimum image quality setting dictates the quality of moving or rapidly changing graphics being sent to the Horizon client. Lowering this setting will make the user perceive that they are experiencing a faster framerate. However, reducing this value lowers the image quality which can become problematic. Most users cannot distinguish a PCoIP session running at a value of 35 over a value of 40.
    • Tuning methodology  starting at 40, reduce the value by 1 and perform a series of consistent visual tests. Continue reducing the value by intervals of 1 through test cycles until the value is so low that the tests yield undesirable results. Return the setting to a value of +1 over the lowest observed number with acceptable results.
    • Default value  80
    • PoC final value  
    • Range  30  100
    • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.minimum_image_quality
    • Type: REG_DWORD
 PCOIP.USE_CLIENT_IMG_SETTINGS

PCOIP.USE_CLIENT_IMG_SETTINGS

  • Description  The use client image settings value dictates if PCoIP settings specified at the Horizon client will be honored thus overriding what is set in the VDI VMs registry or via GPO. During tuning sessions, this value should always be set to 0 (zero).
    • Default value  1
    • PoC final value  0
    • Range  0/1
    • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.use_client_img_settings
    • REG_DWORD
 PCOIP.ENABLE_AUDIO

PCOIP.ENABLE_AUDIO

  • Description  The PCoIP audio enable setting enables or disables audio on the virtual desktop. Since audio can consume significant bandwidth, this setting should be at zero for all use cases where audio is not required.
  • Default value  1
  • PoC final value  0
  • Range  0/1
  • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_ admin_defaults\pcoip.enable_audio
  • REG_DWORD
 PCOIP.DEVICE_BANDWIDTH_FLOOR

PCOIP.DEVICE_BANDWIDTH_FLOOR

  • Description  The PCoIP device bandwidth floor setting modifies the minimum expected bandwidth transmission rate for the session in kpb/s. When you use this setting to reserve bandwidth for an endpoint, the session does not have to wait for bandwidth to become available, which improves session responsiveness. The default value is 0, which means that no minimum bandwidth is reserved.
  • Tuning methodology  starting at 0, increase the value by 5000 and perform a series of consistent visual tests. The perceived performance of the session should eventually improve as the value increases. Continue increasing the value by intervals of ~5000 through test cycles until the tests results stop improving. Return the setting to a value of ~1000 over the lowest observed number with acceptable results.
  • Default value  0
  • PoC final value  30000 (this value is very high for a long-haul WAN link)
  • Range  0/100000000
  • HKLM\SOFTWARE\Policies\Teradici\PCoIP\pcoip_admin_defaults\pcoip.device_bandwidth_floor
  • REG_DWORD

Performance counters

Perfmon:

  • PCoIP latency (record for several hours during user work)

Check that VM is not utilizing CPU more than 90% - or it may not have the resource to process the PCoIP codec.