Can you run Direct3D apps on XenApp? What about WPF apps?

Direct3D, part of Microsoft’s DirectX API, is used to render 3D graphics in applications where high performance is required. Direct3D apps are not generally supported on XenApp because they require hardware acceleration. That’s what kicked off the 3D acceleration technology being developed by Citrix under project Apollo. However, some Direct3D apps will fall back to software rendering, so they can be hosted on XenApp. It depends on whether the software developer has enabled fallback to the software rasterizer. Be aware that Direct3D apps may consume a lot of CPU to do the graphics rendering, especially if they make use of a lot of fancy effects. You’ll probably want a multi-core server with lots of memory to deliver these apps.

WPF (Windows Presentation Foundation, the graphical subsystem of .NET Framework 3.0 and above), although Direct3D based, automatically falls back to software rendering when no GPU is available. WPF apps have been supported on XenApp as of PS 4.5 FP1 which was released in September 2007. They will run on XenApp for Windows Server 2003 when 16-bit or “5-6-5” color (also called “High color”) is configured. With Windows Server 2008, 24-bit or “8-8-8” color (“True color”) is also supported.

Depending on the WPF functionality that is leveraged by the application, performance and scalability on XenApp will vary. SpeedScreen Progressive Display optimizes the delivery of rendered graphics to the client device via compression and auto-sharpening. However, WPF applications using intensive 3D graphics or fading effects will consume more CPU and memory than typical GDI applications, so you can expect server scalability to be lower. Another challenge for project Apollo . . .

Derek Thorslund
Product Strategist, Multimedia Virtualization