Google Chrome 45.x Blocks GPU Acceleration for WebGL, Direct2D, DirectWrite with Citrix XenApp on Windows 2008R2/2012/2012R2

Solution: Google Chrome 45.x Blocks GPU Acceleration for WebGL, Direct2D, DirectWrite with Citrix XenApp on Windows 2008R2/2012/2012R2

Google Chrome v. 45  have changed their behaviour of their web browser, so they are blacklisting GPUs, which means hardware acceleration is disabled by default in a Remote session this behaviour is seen in Microsoft RDS with RemoteFX, Citrix XenApp 6.5 -> 7.6 with vGPU/GPU pass-through. Behaviour is also seen on Linux environments with Google Chrome.

Issue highlightet in a Citrix XenApp 7.6 (2008R2/2012/2012R2) with GPU

Open Google Chrome and type in chrome://gpu and then you will see if your RDS/XenApp with a GPU is working or not.
With Google Chrome v 45 the default behaviour is now that Google choose to disabling the GPU.

browser - chrome xa 2012r2 cpu issue - graphics feature issue

Google Chrome experience with a GPU (Citrix XenDesktop vs Citrix XenApp)

browser - chrome xd vs xa gpu - 2008R2 vs Win7

above picture confirms the GPU is not enabled in Google Chrome with RDS/XenApp

interesting is that Multiple Raster Threads in Win7 with a GPU is disable… why lets find out.

This is properly because you haven’t configured the CPU correctly in the hypervisor for the virtual machine.
* hint I did on purpose so you can understand it can be complex to troubleshoot if you don’t configure your environment correctly.

browser - chrome win7 cpu issue fix
best practices with HDX 3D Pro is 4 vCPU and in XenServer 6.5 you configure it 2:2

Then Multiple Raster Threads works in Win7 after you changed the configuration of the CPU on the Win7 vm.

browser - chrome win7 cpu fix

browser - chrome win7 cpu issue fixed

below picture confirms the GPU is not enabled in Google Chrome with RDS/XenApp in Server 2012R2

browser - chrome xd vs xa gpu - 2012r2 vs win81

Now we have validated that the GPU is blacklisted in RDS/XA with a GPU, lets see if we can fix this.

Performance with a WebGL web app in Google Chrome

CPU is very high when the Google Chrome is running the WebGL application. This is because its using the CPU to do software rasterize of the GPU and this makes your user able to run a webgl application without a GPU, but wait. We actually have a GPU in our RDS/XA server now, why is this not offloading the CPU, thats because Google desided to turn off GPU and blacklist them.

browser - chrome xa 2012r2 cpu issue

Solution

  1. Edit Google Chrome link and after the chrome.exe add
    –ignore-gpu-blacklistgooglechrome
  2. Open Google Chrome and run chrome://gpu in the browser
  3. Check if Hardware acceleration is now working for all functions in Google Chrome

browser - chrome xa 2012r2 cpu issue - graphics feature

GPU hardware acceleration is now working in RDS/XA with a GPU in Google Chrome and CPU is now offloaded to the GPU as you can see in the below picture.

browser - chrome xa 2012r2 cpu issue fixed

 

 

 

NVIDIA GRID 2.0

Nvidia grid 2.0 2x

NVIDIA GRID 2.0

NVIDIA have released the next generation of GRID 2.0. GRID 2.0 is based on the Maxwell architecture and the GRID 1.0 (K1/K2) was based on the Kepler architecture. I have been working with the GRID 1.0 technology since 2012 and it have matured alot in its 2 years of history. When the K1/K2 was released they was first working with GPU pass-through and then vGPU got introduced and you could virtualize the GPUs and increase density, which people wanted. Citrix was with their hypervisor the first company that supported NVIDIA GRID 1.0 and they was also the first company integrating vGPU into their Citrix Studio, so companies could easier provisioning machines with either MCS technology or PVS technology. VMware supported GRID 1.0 vGPU technology in 2015 in their hypervisor VMware vSphere 6.0 and fully integrated with their EUC stack VMware View, so companies can fully provisioning machines. The great thing about GRID 2.0 is that there is no need for a conversation when to choose either a K1 or a K2, if you required GPU compute or GPU framebuffer, M60 are being added to the tope end of the range  and bringing 2x the performance, and if you have bladeserver’s, you can add the powerfull vGPU technology into the bladeserver’s with the M6.

Please notice that M6 will 0nly be supporting newer architecture of vendors not old platforms.

Maxwell architecture

Maxwell architecture is the new architecture of GPUs and a powerful GPU you might know is the Titan X

New GPUs GRID 2.0 and specifications

In GRID 2.0 NVIDIA now have a GPU for blade servers a MXM single socket, High-end GPU called M6

In GRID 2.0 NVIDIA replaces K1/K2 with the new PCIe 3.0 Dual Socket, Dual High-end GPU called M60
The M60 delivers 4096 CUDA or compute and 16GB GDDR5 memory/framebuffer

The M60 has 6x the h.264 encoders of the K2, and also Maxwell supports 4:4:4 chroma sub sampling, which is great news for encoders.

maxwell_grid

Certified GRID 2.0 servers

Click the link to see which servers are certified for M60 and M6
http://www.nvidia.com/object/grid-certified-servers.html

M6 have following servers supported:

m6 certifiedM60 have following servers supported:

m60 certificed

vGPU software editions and license

nvidiagrid20licensemodel

NVIDIA GRID 2.0 software is available in three editions that deliver accelerated virtual desktops to support the needs of your users. These editions include Virtual PC, Virtual Workstation, and Virtual Workstation Extended. GRID perpetual licenses are sold by Concurrent User (CCU).

NVIDIA GRID 2.0 (CCU) stands for ConCurrent User. So basically, per running VM as regardless of whether the user is connected to the VM or not, the VM is connected to the GPU and so consumes a license

NVIDIA GRID 2.0 software is much more than a “driver”. While the software package does include a guest driver for Windows and Linux, it also includes the NVIDIA GRID vGPU manager for VMware vSphere and Citrix XenServer, as well as the license server and M6/M60 mode switching utility.

NVIDIA Tesla M6 and M60 profiles are specific to the M6 and M60. There will be similar profiles as to what NVIDIA had on K1 and K2 (512 MB through 4 GB), all with twice the number of users on M6/ M60 compared to K1/K2. Plus, there is an additional 8 GB profile on M6/M60 which also adds support for CUDA, which wasn’t available on K1/K2.

NVIDIA GRID 2.0 is Maxwell only. If you are an existing customer K1/K2 are unchanged and will remain as a parallel option.

nvidiagrid20licensemodel 2

 

nvidiagrid20licensemodel 3

The NVIDIA GRID 2.0 solution

nvidiagrid20

Summary

GA of NVIDIA GRID 2.0 (M60 and M6) will be 15 September 2015.

To get NVIDIA GRID 2.0 if you are a Citrix customer you need:
Server hardware that supports NVIDIA GRID 2.0 +NVIDIA GPU M60 or M6 + NVIDIA vGPU Software license + Citrix XenDesktop or XenApp License (XenServer is included in XD/XA licenses)

To get NVIDIA GRID 2.0 if you are a VMware customer you need:
Server hardware that supports NVIDIA GRID 2.0 +NVIDIA GPU M60 or M6  + NVIDIA vGPU Software license + VMware Horizon license (Horizon includes vSphere for Desktop)

If you are a Citrix customer that wants to run on VMware vSphere you need:

Server hardware that supports NVIDIA GRID 2.0 + NVIDIA GPU M60 or M6 + NVIDIA vGPU Software license + Citrix XenDesktop or XenApp License + VMware vSphere Enterprise Plus license or vSphere for Desktop license

Source

NVIDIA GRID Test Drive

NVIDIA GRID Website

NVIDIA GRID News

NVIDIA GRID YouTube Channel

Questions? Ask on our Forums

NVIDIA GRID on LinkedIn

Follow NVIDIAGRID on Twitter

Citrix License FAQ regarding vGPU 

Vmware License FAQ regarding vGPU

 

Free Webinar “GPU in virtualization, learn why it’s important 11th February 2014

Hi all

I am next week doing a free live Webinar with fellow CTP, Trond Eirik Håvarstein from XenAppBlog.com, 11th February 2014. (time 14:00 EST (GMT-5))

xenappblog ervik                  poppelgaard_com   Thomas Poppelgaard

This is my favorite topic and I am travel to different parts of the World taking about this subject both at Citrix, NVIDIA GTC, Citrix User Groups, VMware User Groups, other Partner Events, now this is your chance to see my webinar free and live at XenAppBlog.

FYI – there is limited seats so hurry up and sign on here https://xenapptraining.leadpages.net/gpu-in-virtualization-learn-why-its-important/

My topic is “GPU in virtualization, learn why it’s important”

  • Evolution of Virtualized Graphics (Citrix vs VMware)
  • Business drivers for virtualizing applications that requires GPU
  • User Experience – VDI with a GPU vs Shared Desktop with a GPU
  • NVIDIA GRID vGPU, Buzz, How to use it, Sizing, Limitations – Q&A

Source

Join the Free Webinar here *Limited Seats

Citrix XenDesktop 7.1

Citrix XenDesktop 7.1 is now finally released and vGPU is now in the product and build in with MCS, very very cool. You can configure GPU pass-through with any GPU card or vGPU profiles with NVIDIA GRID, the brilliant thing about this its now build in to the product, you only have to choose a GPU profile and XenDesktop takes care of the High Availability with XenServer and find the resources that free and connects the GPU to the Virtual Machine. Microsoft have just released Windows 8.1 and Server 2012R2 and in this release of Citrix XenDesktop 7.1, Citrix are supporting Microsoft newest Operating System Platforms.

One of the things that have been fixed in the XenDesktop 7.1 Virtual Delivery Agent is following:

  • With HDX 3D Pro enabled, the NVIDIA card might not support certain resolutions. This enhancement introduces support of up to 2560×1600 pixel resolutions.
  • With HDX 3D Pro enabled, client connections to a XenDesktop 5.6 VDA do not support resolutions beyond 1900×1200 pixels. This enhancement introduces support for a wide range of additional resolution ratios, including:
    • 1920×1200
    • 2048×1152
    • 2560×1440
    • 2560×1600

What’s new in XenDesktop 7.1

  • GPU — The Graphical Processing Unit (GPU) capabilities feature provides graphics virtualization, offering a superior experience for users who use graphic-intensive applications and often manipulate 3-D models. The GPU feature also can improve the graphics experience for a large number of users. Administrators can evaluate workflows for the creation of GPU-capable connections and machine catalogs created with an MCS-provisioned master image. If problems are encountered, then Administrators may need to manually create the machines.

When you install Citrix XenDesktop 7.1 on the Controller, you can now choose a GPU type and group which its getting from XenServer.

 

vgpu_option_in_XenServer_-_build_XD

If you have NVIDIA GRID with XenServer, XenDesktop 7.1 takes care of creating a GPU type attached to the GPU group.

vgpu_option_in_XenServer_done_-_build_XD

in above example I am choosing a vGPU type: K140Q. It have 960MB video RAM per VM)

If you have 1 GRID K1 card and choose a K140Q type, you can have maximum 16 virtual machines assigned to this card. If you have 2 GRID K1 and choose  K140Q type, then you can have 32 virtual machines assigned to the GROUP K1, and XenDesktop 7.1/XenServer vGPU takes care of the HA of GPU assignment.

Look at below chart to get an understanding of which vGPU types you can choose in XenDesktop 7.1 with NVIDIA GRID K1 & K2.

Read my blogpost about vGPU profiles

vgpu-profile

The above numbers are from NVIDIA but the vGPU types Citrix have defined in XenDesktop 7.1 are following:

for NVIDIA GRID K1 vGPU options:

  • GRID K100 (256B video RAM per VM)
  • GRID K140Q (960MB video RAM per VM)
  • Passthrough – GK107 GL GRID K1

for NVIDIA GRID K2 vGPU options:

  • GRID K260Q (1920MB video RAM per VM)
  • GRID K240Q (960MB video RAM per VM)
  • GRID K200 (256MB video RAM per VM)
  • Passthrough – GK104GL

 

  • Windows Server 2012 R2 and Windows 8.1 support — Deliver a high-definition user experience on Windows 8.1 virtual desktops and physical machines. HDX 3D Pro has also been upgraded to support Windows 8.1.

vda-platform-support

 

Upgrade XenDesktop 7 components to 7.1

When you run the installer AutoSelect, the wizard checks whether certain Site components (such as the Delivery Controllers, Director, and VDAs), need to be upgraded. If you opt not to upgrade some components during this process, when you run Studio, it performs a component check and notifies you when components need to be upgraded. You cannot proceed to manage your Site until you upgrade these components.

Upgrade Site with components deployed on different machines

The following figure shows the high-level processes involved when upgrading a XenDesktop 7 to XenDesktop 7.1 in which Studio components are deployed on different machines.

Perform the upgrade procedures in the following order.

Check the licenses

Make sure that your Subscription Advantage date for licenses is no earlier than 2013.0522.

Upgrade StoreFront

If StoreFront is deployed on a separate machine, follow the steps described in Upgrade core components from eDocs

Upgrade Director

If Director is deployed on a separate machine, follow the steps described in Upgrade core components from eDocs

Upgrade Provisioning Services

If you are using Provisioning Services, follow the procedures described in Upgrading Provisioning Services from eDocs

Upgrade the Virtual Delivery Agent

For Remote PC Access deployments, Citrix recommends that you upgrade a VDA in a remote PC using a command-line method. For detailed information, see Install using the command line.

  1. Log on to the server using a local administrator account and run the installer by inserting the media or mounting the ISO drive for this release, and double-clickingAutoSelect.
  2. On the Welcome page, click Start. The wizard detects what components need to be upgraded and displays the Upgrade options page, activating the components you can upgrade.
  3. On the Upgrade options page, select:
    • Virtual Delivery Agent for Windows Desktop OS for Desktop OS, and earlier XenDesktop versions
    • Virtual Delivery Agent for Windows Server OS for Server OS
  4. On the Firewall page review the default ports and configure firewall rules.
  5. On the Summary review the prerequisites to be installed and the components to be upgraded then click Upgrade.
  6. On the Finish Upgrade page one of the following messages appears upon completion:
    • Success — Upgrade successful appears when the upgrade completes without errors.
    • Failed — The Upgrade failed appears with a list of failed components. Click Why did this fail to review what you must do to fix the problem. Other components that installed successfully are retained; you do not need to reinstall them.
  7. Click Finish to complete the upgrade.

Upgrade Delivery Controllers

Citrix recommends that you upgrade Delivery Controllers as follows:
  1. Upgrade half of your Site’s Delivery Controllers.
  2. Use the upgraded version of Studio to perform the Site upgrade as described in Upgrade core components.
  3. Upgrade your remaining Delivery Controllers.

Upgrade Databases using Studio

Use Studio to upgrade the Database.

Automatically upgrade Databases

  1. Start Studio. The wizard detects what components need to be upgraded and displays the Mandatory upgrade page.
  2. Select Start the Site upgrade automatically.
  3. At the prompt, select I am ready to upgrade.The wizard displays the upgrade progress. After the upgrade completes, the wizard performs tests. This takes several minutes.
  4. At the Site Upgrade Complete window, you can optionally view a data migration report and then click Finish.
  5. At the Upgrade successful page, click Finish upgrade and return to the Site overview.

Manually upgrade Databases

To minimize Site down time when performing a manual upgrade, it is important that the XenDesktop Administrator closely coordinates with the Database Administrator. This process requires that you run a script that temporarily disables Xendesktop Services while the manual upgrade scripts are run by the Database Administrator using a preferred tool (for example, SQL Server Management Studio). Ideally, immediately after these scripts complete, the XenDesktop Administrator should enable XenDesktop Services and complete the upgrade using Studio.

Manual upgrade requires:

  • Backing up the databases
  • Running the generated scripts in the following order:
  1. DisableServices.ps1 — PowerShell script to be run by the XenDesktop administrator on an XenDesktop Controller.
  2. UpgradeSiteDatabase.sql — SQL script run where the Site databases resides
  3. UpgradeMonitorDatabase.sql — SQL script run where the Monitor databases resides.
  4. UpgradeLoggingDatabase.sql — SQL script run where the Logging database resides.
    Note: You should only run this script if the Logging database changes. For example, run it after applying a hotfix.
  5. EnableServices.ps1 — PowerShell script to be run by the XenDesktop administrator on an XenDesktop Controller.

To upgrade manually

  1. Start Studio. The wizard detects what components need to be upgraded and displays the Mandatory upgrade page.
  2. Select Manually upgrade this site.
  3. The wizard checks for License Server compatibility. Make sure your License Server and license files are compatible with XenDesktop 7.1. Select the confirmation check box and click Continue.
  4. The wizard prompts you to backup the Database. When you have done so, select the confirmation check box and click Continue.
    • The wizard generates the manual upgrade scripts that you must run and displays them in a window
    • The Mandatory Upgrade page changes to display a checklist of the manual upgrade steps
  5. Make sure you have completed the checklist tasks and click Finish upgrade and return to Common Tasks.

Upgrade core components

The installer automatically upgrades core components such as Delivery Controllers, Studio, and Director if they were previously installed.

  1. Log on to the server using a local administrator account and run the installer by inserting the media or mounting the ISO drive for this release, and double-clickingAutoSelect.
  2. On the Welcome page, click Start. The wizard detects what components need to be upgraded and displays the Upgrade options page, activating the components you can upgrade.
  3. Click Delivery Controller.
  4. Accept the license agreement.
  5. Review the upgrade steps, click I’m ready to continue and click Next.
  6. On the Core Components page review the components available for upgrade.
  7. On the Firewall page review the default ports and configure firewall rules.
  8. On the Upgrade page review the prerequisites to be installed and the components to be upgraded and then click Upgrade.
  9. On the Finish Upgrade page one of the following messages appears upon completion:
    • Success — Upgrade successful appears when the upgrade completes without errors.
    • Failed — The Upgrade failed appears with a list of failed components. Click Why did this fail to review what you must do to fix the problem. Other components that installed successfully are retained; you do not need to reinstall them.
  10. Click Finish to complete the upgrade.

Upgrade a Site with components deployed on the same machine

The following figure shows the high-level processes involved when upgrading a Site in which all components are deployed on the same machine.

Upgrade XD7 on a single machinePerform the upgrade procedures in the following order:

  1. Make sure that your Subscription Advantage date for licenses is no earlier than 2013.0522.
  2. Back up the Controller databases.
  3. Optionally back up templates and upgrade Hypervisor.
  4. Upgrade PVS servers and agents as described in Upgrade Provisioning Services from eDocs
  5. Upgrade the core components as described in Upgrade core components from eDocs
  6. Upgrade Virtual Desktop Agents as described in Upgrade the Virtual Delivery Agent from eDocs
  7. Upgrade the Database using Studio as described in Upgrade Databases using Studio from eDocs
  8. Upgrade the remaining Delivery Controllers.

Post upgrade processes

After the upgrade and data migration is complete, you can run environment and configuration tests to make sure that the Site is in functional order.

To test the upgraded site, select Test Site n the Site Configuration pane of the Studio Common Tasks page.

Source

If you want to upgrade your current Citrix XenDesktop 7 environment to XenDesktop 7.1. environment look here

fixes in XenDesktop 7.1 – Virtual Delivery Agent

fixes in XenDesktop 7.1 – Controller 

Download Citrix XenDesktop 7.1 here (Require MyCitrix ID)