Session Planning with PCoIP Ultra¶
PCoIP Ultra offers three modes that optimize system performance dependent on use case demands:
- CPU Offload for high resolution content at highest image quality.
- GPU Offload for CPU relief.
- Auto Offload provides both build-to-lossless image quality and optimum bandwidth and CPU savings for dynamic content.
This section provides video playback benchmarks to help you plan your PCoIP Ultra deployment.
The following table outlines the CPU and GPU offload that work with specific system requirements:
Requirement | CPU Offload - AVX2 RGB 8|8|8 | GPU Offload - NVENC YUV 4:4:4 | GPU Offload - NVENC YUV 4:2:0 |
---|---|---|---|
Highest Image Quality Desktop (Up to 25x16 at 60 fps or 4K/UHD @ 30fps) | ✔ | ||
CPU Relief e.g. VFX Render Applications (Up to 25x16 at 60 fps, 4K/UHD) | ✔ | ||
Bandwidth Preservation (e.g. constrained WAN) | ✔ | ||
Highest frame rate from a low-cost thin client | ✔ |
CPU and GPU Offload¶
The CPU optimization mode targets up to dual 4K/UHD display resolutions, leveraging the CPU's AVX2 instruction set to provide efficient content encoding at very high color accuracy, including the option for Build-to-Lossless image quality. The GPU optimization modes targets up to dual 2560x1600 display resolutions, leveraging the NVIDIA NVENC hardware encoder if present, which provides CPU relief for applications such as interactive rendering where CPU clock cycles may be premium. PCoIP Policies can be used to configure NVENC for either YUV 4:4:4 or YUV 4:2:0 chroma sub-sampling schemes.
PCoIP Ultra Auto-Offload¶
The auto-offload feature with PCoIP Ultra enables users to allow PCoIP Ultra to select the best protocol, whether that is CPU or GPU, based on display rate change. CPU Offload is used by default to provide the best image fidelity, GPU Offload is used during periods of high display activity to provide improved frame rates and bandwidth optimization. This setting is only effective if the remote host and client endpoints are capable of both CPU and GPU Offload. You can select this option when you are enabling PCoIP Ultra.
For information on how to do this, see PCoIP Ultra - Windows, and PCoIP Ultra - Linux.
Benefits of Auto-Offload¶
Using the auto-offload feature ensures that the best codec is used and enables a solid quality vs efficiency balance. Depending on the amount of display change PCoIP Ultra CPU or PCoIP Ultra GP will be used. If there is a large amount of change picked up the protocol will transition to PCoIP Ultra GPU to allow for higher frame rates and lower bandwidth. Auto-offload also ensures:
- No per-workload admin tuning required.
- No burst stealing of CPU or GPU cycles.
- No transitionary image artifacts.
- No aggressive network consumption.
PCoIP Ultra System Requirements¶
To take advantage of PCoIP Ultra, you need:
- A Anyware Agent (any type), 19.11.0 or later
- A Anyware Software Client (any type), 19.11.0 or later
Anyware Tera2 Zero Clients do not support PCoIP Ultra
PCoIP Ultra is only available through Anyware Software Clients.
- CPU offload requires CPU support for the AVX2 instruction set on both the agent and client machines.
- GPU offload requires an NVIDIA graphics card that supports NVENC on the agent machine.
For more information the requirements for PCoIP Ultra, see:
- Anyware Graphics Agent for Windows
- Anyware Graphics Agent for Linux
- Anyware Standard Agent for Windows
- Anyware Standard Agent for Linux
Client Device Requirements¶
The following client device requirements are nescessary to utilize PCoIP Ultra:
-
PCoIP Ultra with CPU Offload enabled: Intel 8th Generation Core i5/i7 processors with dual memory banks are required to achieve 4K30 FPS. An example of this includes NUC10i5FNH (Intel Corei5-10210U processor).
-
PCoIP Ultra with GPU Offload enabled: On Linux and Windows clients, hardware decoding is available for GPU Offload when YUV 4:2:0 chroma-subsampling is enabled. Software-based H.264 decoding is used in YUV 4:4:4 mode. We recommend Intel 8th Generation Core i5/i7 processors or newer with dual memory banks.
For more information on the Technical Requirements required for PCoIP Ultra, see here.
PCoIP Ultra Compatibility Matrix¶
The following table outlines PCoIP Host and Anyware Client configurations across Windows, Linux and Mac OS for PCoIP Ultra.
Windows Client | Linux Client | macOS Client | |
---|---|---|---|
Anyware Graphics Agent for Windows or Linux Nvidia NVENC or AMD RapidFire |
PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder or GPU Offload with H.264 software decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder or GPU Offload with H.264 hardware decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder or GPU Offload with H.264 software decoder. |
Anyware Graphics Agent for Windows Nvidia GeForce graphics |
PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. |
Anyware Standard Agents for Windows or Linux | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. | PCoIP Ultra: CPU Offload with PCoIP AVX2 decoder. |
Important: Anyware Tera2 Zero Clients are not supported
PCoIP Ultra is supported only by Anyware Software Clients for Windows, Linux, and macOS.
PCoIP Ultra Benchmarks¶
The following benchmarks give some idea of the bandwidth consumption used with PCoIP Ultra sessions. The benchmarks were generated using the following system configuration:
Description | |
---|---|
Host Platform | Supermicro SYS1019GP-TT (Xeon Gold 6248 2.5 GHz, 20 cores) |
Hypervisor | VMware ESXi 6.7 |
Virtual Machine | Windows 10, 96 GB RAM, grid_rtx6000_12q, HP Anyware 21.07.4 |
Graphics | NVIDIA RTX 6000, GRID 11.1 |
Network | 1 Gbps LAN |
Client Endpoint | Intel NUC10FNHi5, Windows 10 |
Display | 4K/UHD 3840 x 2160 |
Anyware Agent | Version 21.07.4 |
Anyware Client | Version 21.07 |
Video Content | Big Buck Bunny 1080p 24fps (Opening 2 minutes) |
Network Bandwidth Consumption¶
The network bandwidth used in conjunction with PCoIP Ultra depends on several factors, including PCoIP Ultra mode (CPU Offload, GPU Offload or Auto-Offload modes), display resolution, and configured image quality policy.
This table shows the average bandwidth consumption for the opening scene of Big Buck Bunny with the default PCoIP Image Quality setting (Q80) and at the following resolutions: native 1080p, 1080p scaled to 1440p, and full-screen 2560p (4K/UHD) playback.
Bandwidth Consumption in Mbps
Auto-Offload* (YUV 4:2:0) | Auto-Offload* (YUV 4:4:4) | CPU Offload | ||
---|---|---|---|---|
1080p | 13.0 | 19.0 | 34.4 | |
1440p | 17.3 | 27.5 | 43.1 | |
2560p | 25.0 | 43.8 | 61.4 |
* PCoIP Ultra GPU-Offload mode consumes comparable bandwidth to PCoIP Ultra Auto-Offload mode.
On constrained networks, the PCoIP protocol dynamically adjusts image quality and frame rate to suit the available network bandwidth. In cases where it is preferred to proactively constrain the bandwidth, as might be required to limit service provider network charges, PCoIP image quality and frame rate can be capped. Refer to PCoIP settings section for policies that enforce bandwidth and/or frame rate limits.
The following table provides an example of network bandwidth savings and consumption using PCoIP Ultra Auto-Offload at different image quality settings. These rates are at .
Bandwidth Consumption using Auto-Offload (in Mbps)
Q60 | Q70 | Q80 | Q90 | |
---|---|---|---|---|
1080p Auto-Offload (YUV 4:2:0) | 3.7 | 6.6 | 13.0 | 34.8 |
Host CPU Utilization¶
PCoIP Ultra Auto Offload mode offers the highest host CPU efficiency by leveraging NVIDIA NVENC technology for display processing when the encoded pixel rate exceeds a programmed threshold.
The table below shows host virtual machine average CPU utilization when using PCoIP Ultra Auto-Offload and PCoIP Ultra CPU-Offload as measured by the VMware ESXi Performance Monitor at default image quality settings for various virtual machine vCPU allocations.
CPU Utilization with Auto-Offload and CPU-Offload
4 vCPU | 8 vCPU | 16 vCPU | 24 vCPU | |
---|---|---|---|---|
1080p (Auto-Offload) | 17% | 10% | 4% | 2% |
4K/UHD (Auto-Offload) | 19% | 11% | 4% | 3% |
1080p (CPU-Offload) | 38% | 18% | 9% | 2% |
4K/UHD (CPU-Offload) | 58% | 28% | 14% | 3% |
PCoIP Hyper-Threading
PCoIP Ultra CPU Offload does not distinguish between real and virtual cores. PCoIP will take advantage of hyper-threading but N hyper-threaded cores do not provide the same performance as the same number of N physical cores.
For troubleshooting information around implementing the PCoIP Ultra protocol enhancements, see the knowledge base article: Troubleshooting PCoIP Ultra.