Troubleshooting vGPU on XenServer

vGPU on XenServer is awsome technology. But as with any other software, it can happen that you run into issues. For example, when starting a VM which has a vGPU profile assigned, the VM can fail with the dreaded “vgpu exited unexpectedly” error. To be more precise, such an error could read:

Internal error: xenopsd internal error: Device.Ioemu_failed("vgpu exited unexpectedly")

In XenCenter, the log tab will display the following entry:

vGPU error displayed when starting VM
vGPU error displayed when starting VM

In this article, I’ll describe some steps troubleshoot vGPU issues and possible solutions to fix failing vGPU-enabled VMs.

Read More

Upgrading the NVIDIA GRID vGPU driver on XenServer

Last week, NVIDIA released an update for the vGPU driver and manager (also described on The Citrix Blog). Besides bug fixes, this release introduces 3 new vGPU profiles, 1 new profile for the GRID K2 card (K280Q) and 2 new profiles for the GRID K1 card (K160Q and K180Q).

Card Profile Frame buffer Virtual display heads Max resolution per head Max vGPUs per GPU Max vGPUs per board
K1 K180Q 4096Mb 4 2560×1600 1 4
K1 K160Q 2048Mb 4 2560×1600 2 8
K2 K280Q 4096Mb 4 2560×1600 1 2

As you can see, the K180Q and K280Q profiles will assign an entire GPU to a VM. This can be compared to GPU pass-through, but leveriging the functionality of vGPU.

Read More

Fullscreen applications with HDX 3D Pro – Part 3

A few days ago, I wrote a post about Citrix’s fix for fullscreen applications in HDX 3D Pro connections. In that post I mentioned the fact that by default, an application launched in a resolution larger than the session’s resolution, will be trimmed off. Rachel Berry (Product Manager HDX Graphics for XenDesktop/XenApp, twitter @rhbBSE) provided me with some feedback on my article. Especially this part:

I understand why the application behaves in this way. The best way to fix such an challenge is to “scale” the application (I don’t even know if this would be possible programmatically) so that it scales while it maintains the aspect ratio. This way you would always see the entire application, no matter what the resolution is.

One feature of Citrix Receiver, which I knew exists, but never used, is the ability to scale the session completely. I investigated this feature as solution for the trimming of high-resolution applications.

Read More

Performance impact of HDX 3D Pro in virtual desktop environments

Implementing GPUs in your virtual desktop environment (for example vGPU or GPU pass-though) allows better use of graphical intensive applications (like Catia, AutoCAD, Photoshop, etc.). These applications have an impact on utilization (CPU, memory, disk I/O) in your infrastructure. Not only the applications will impact your infrastructure, sending the graphical intensive data over the LAN or WAN will at least impact your network and the CPU on the end-point and inside your virtual desktop. In this article I will explain the impact on network level.

Read More

Fullscreen applications with HDX 3D Pro

If you’ve been working with GPU deployment in your virtual desktop environment (XenDesktop or XenApp), you probably also installed HDX 3D Pro. Leveraging the GPU, you can use more graphic-intensive applications. Some of these graphic-intensive applications sometimes launch in fullscreen mode by default (think of benchmarking tools or videogames). The result of starting an application in fullscreen mode could be the following error:

---------------------------
Citrix HDX 3D Pro Warning!
---------------------------
Full Screen Applications are not supported in Citrix HDX 3D Pro.
Press Ok to exit.
---------------------------
OK 
---------------------------

Read More

Planning GPU deployment in virtualized environments – Part 2

In my previous post, I explained some planning considerations when implementing GPUs in a virtualized environment. There are a few other considerations, especially in terms of hardware, when you implement GPUs in your virtualized environment. This article will contain some of these considerations.

Blade hardware

When planning to implement GPUs in existing hardware, be sure that the current hardware does support the installation of a GPU. If your current environment, for example, consists of blade servers (like Cisco UCS B-series or HP BL series), your environment will not be able to be upgraded with a GPU. This means that you have to invest in new hardware.

Read More

Planning GPU deployment in virtualized environments

Implementing a graphics card in your server allows better performance for GPU-intensive applications in VDI and SBC environments. With Citrix and NVIDIA’s vGPU innovations, this is becoming more popular. However, if you don’t plan your GPU deployment correctly, user acceptance of these new innovations will be difficult. This article will contain some things to keep in mind while planning your GPU deployment in virtualized environment. While I created this article with XenDesktop in mind, it does apply to any other VDI or SBC technology like Vmware View, RemoteFX and XenApp.

Read More

Disconnecting a Citrix Session with CTXDiscon

Windows has a command line tool which allows you to disconnect any RDS Session. The command line tool is “TSDISCON”, available in the System32 folder. Now, if you have connected using XenApp or XenDesktop, this tools does work. However, the Citrix Client will not know that the session has been disconnected, thus the Citrix Client window will remain active on the client’s end device.

There is no built-in tool from Citrix which has the same functionality as TSDISCON has. So I compiled a little tool which allows you to disconnect your Citrix sessions.

Read More

Monitoring XenApp with WMI – Part 2: Citrix Servers

In part 1 of this series I talked about the basics of the Citrix WMI providers. In this part, I will talk about getting all information about a XenApp server, like which farm it belongs to, what applications are published, etc.

Again, I will be using PowerShell to get the WMI classes. I will assume that you are logged in to the XenApp server to do the WMI calls. But all of these calls can be done from another server (as long as you have the correct permissions and WMI isn’t blocked by a firewall). See part 1 to get more information about remote WMI calls.

Read More

ICAConnect version 1.2

I’ve update my command line tool to connect to XenApp server, ICAConnect. The new version has two new features:

  • Support 32bit color depth
    My fine colleague, Dennis Geerlings, has updated the option to connect to a XenApp server using 32bit colors. To use this, just use the “/color 32bit” switch.
  • Support seamless windows
    I’ve added support for seamless connections. Just use the “/seamless” switch to start an application in seamless mode.

Head over to the Tools section to grab the new version of ICAConnect. If you have any questions or feature requests, feel free to leave a comment or send me an e-mail.