Update (27/12/2015) – Citrix Ready Thin-Client Certification Improved: https://virtuallyvisual.wordpress.com/2015/12/27/understanding-thin-clients-for-citrix-just-got-a-whole-lot-easier/
A few days ago a user (Vikash Jhagroe) posted this blog about the Citrix Ready HDX Certification program. This is in fact something the Citrix Ready team are looking to re-design to clear up the confusing current situation. Vikash has to some extent done a good job of explaining the situation, the information on-line is out of date (awaiting the Citrix Ready redesign) and there is a fair bit of background missing. When partial information becomes common knowledge, I usually find it’s best to be straight with users and give them all the facts.
Linux Thin Clients
The situation is particularly complex on Linux, OEMs and Linux OS vendors can take the Linux Receiver and incorporate it within their products. The Linux Receiver provides these vendors with hooks to utilise hardware and software acceleration. To a large extent I think the certification kit has historically focused on windows thin-clients and overlooked the complexities of the Linux Receiver and the Linux thin-client OEM ecosystem.
The Architectural Model of the Linux Receiver
- Even if the hardware of the thin-client can support e.g. H.264 if the OEM or OS vendor has chosen not to “connect” the hardware to receiver or supply appropriate plugins the thin-client will not be accelerated in certain ways
- Some vendors choose to charge per codec and for certain acceleration options
- Some vendors choose to limit themselves to certain types of acceleration to support a limited support matrix
- Some hardware doesn’t support H.264 or SoC acceleration
Why doesn’t Citrix supply these plug-ins and connections?
- Use of the hardware is very specific to each device and OEM, they are in a better position to have the skills to do this integration optimised for their hardware
- Many codecs and plugins are third parties and customers and OEMs pick and choose those best suited to the price-point and intended use of the thin-client. Managing the licensing and pricing within Linux Receiver (a free product) is unfeasible
- Firmware and OS updates have broken intergrations, with over 300+ thin-clients on the Citrix Ready marketplace, ensuring Citrix learns of firmware updates and can regression test them is unfeasible. The OEM/OS vendor is in a better position to take that responsibility
The graphics mode used
Looking at the “architectural model” above, it can be seen that OEMs/OS vendors can choose to add hardware or software acceleration for H.264 and/or Jpeg technologies. HDX graphics has multiple graphics modes using different technologies and compression techniques. These graphics modes also have different footprints in terms of CPU, server scalability and bandwidth usage.
- Thinwire (as used in XA6.5/XD5.6), legacy graphics mode and the emerging thinwire+ technologies all use Jpeg heavily
- 264 modes as used by default in XA/XD7.x and up (if the client can support it) is of course H.264 based. (This is the default mode for HDX 3D Pro).
You can find information on how to determine which graphics mode you are using here: http://blogs.citrix.com/2015/02/16/citrix-xendesktopxenapp-how-to-determine-hdx-display-mode/
Examples of OEM/OS integrations – that help explain why it is so complicated to certify Linux thin-clients
- The Raspberry Pi2 now supports the default Linux Receiver
- We have in-house a prototype H.264 plugin (CTXH264 in the architectural diagram). As we do not ship plugins ourselves we have not been able to support or certify a Raspberry Pi distribution performant using H264 when an OEM (e.g. Raspberry Pi themselves) or an OS vendor does a supportedLinux OS with an H.264 plugin this will be a supported solution. Muhammad’s blogs details using this prototype/unsupported H.264 plugin: http://blogs.citrix.com/2014/03/17/raspberry-pi-xendesktop-pt-3-download-receiver-here/
- The Debian Jessie Linux OS supports libjpeg-turbo, when a Pi2 image distribution becomes available based on Debian Jessie. A supported solution will be available using thinwire/thinwire+ modes as Jessie contains the jpeg plugins to accelerate the Pi2. Martin’s Blog details his explorations using Jpeg acceleration: http://www.martinrowan.co.uk/2015/08/citrix-receiver-linux-raspberry-pi-2-using-raspbian-wheezy/
HP and “True Graphics”
- Have incorporated H.264 plugin support in the OS they supply on their thin clients and this is branded “True Graphics”, here are some links on that integration
ThinLinx OS used on Intel NUC
- Intel (an OEM) do not make an HDX optimised OS with plugins for acceleration. However partner ThinLinx do (ThinLinx support the OS and HDX acceleration). Other OS vendors e.g. Unicon do similar. In Unicon’s case they make an OS that is supported on a large number of OEM manufacturers, allowing customers to manage their legacy and disparate thin-clients via a single management suite.
- We demo’d a $150 single-core Intel NUC doing 55fps+ at Synergy, the ThinLinx OS and the HDX acceleration plugins it contains was the key to the performance, if the NUC had been tested with a vanilla Linux OS the H.264 hardware acceleration would not have occurred. You can ready about that demo here: https://virtuallyvisual.wordpress.com/2015/08/02/did-i-really-see-a-165-thin-client-doing-55fps-with-borderlands-2-with-hdx-3d-pro-citrix-xendesktop/
- Over the years many may have noticed Citrix Community Guru Tobias Kreidl post frequently on his legacy Dell Xenith thin-clients. Many have asked us to “enable” better support and performance. The integration is down to Dell though and shows the importance of firmware. Recent firmware improvements from Dell have “connected” their OS and hardware to HDX, on this thread Tobias reports the improvements he is seeing from a firmware update from Dell.
- Tobias says: “Got the new Dell/Wyse beta firmware incorporating a supercodec finally to work, and now the Dell/Wyse Xenith 2 units are able to keep up with GPU-rendered graphics. ArcGIS, Google Earth, Redit, all perform drastically better. Very impressive and something to lend hope to our Xenith 2 investment being able to be extended. Full-frame 1080p HD video runs now very well, natively (using no GPU) and Google Earth is much better, as well. -=Tobias”
So what does Citrix Ready Certify?
- Citrix Ready tests thin-clients with a specific OS and firmware version
- The tests check if certain features are available
- The tests check the thin-clients can achieve a certain level of performance when used with standardise back-end servers, monitor resolutions and specific applications
So what does “HDX 3D Pro”, “HDX Premium”, “HDX Ready” certification mean?
Citrix Ready has 3 levels of certification. They are hierarchical with the highest level of performance and functionality in the “HDX 3D Pro” level, this means a thin-client certified at that level is also “HDX Premium” and “HDX Ready”. Likewise “HDX Premium” covers all the certification of the lowest basic level, which is “HDX Ready”.
When you go to the Citrix Ready Marketplace at https://citrixready.citrix.com/ you will currently be able to select thin-client listings from the “Browse drop-down.
When you select “Thin Clients” you get taken to a page with filters, where you will see “HDX Level” including “HDX 3D Pro”, “HDX Premium” and “HDX Ready”; with no explanation as to what they mean 😦
As Vikash found, if you google enough you will find this page designed for the OEMs when the certification program was established: http://www.citrix.com/cms/ready/citrix-ready-soc-builder/hdx-ready-soc/
- Unfortunately this page is out-of-date and the feature matrix has changed (what is currently there is not complete as the program has evolved)
- There is also no real explanation of what any of those features mean
So where can I actually find the up-to-date feature matrix?
To actually find the feature matrix you currently need to go to the actual certification tests and forms supplied to the manufacturers, which are online: Citrix XenDesktop 7.x HDX Ready Thin Client Test Kit. Currently you will find in the doc CRVF_XenDesktop7.x_HDXReady_ThinClient_Nov2014.docx:
Inside Citrix XenDesktop 7.x HDX Ready Thin Client Test Kit you will find details of the reference server and hardware, monitor resolutions and what each test involves (see XenDesktop7.x_HDXReady_TestKit_Nov2014.pdf). Tests range in requiring framerates of between 12-22fps to be achieved.
The “HDX 3D Pro” tests now include tests for multi-monitor, 3D spacemouse support. They are detailed in Citrix XenDesktop 7.x HDX Ready Thin Client Test Kit (see doc XenDesktop7.x_HDX3D_ThinClient_TestKit_28May2014.pdf) – I couldn’t actually find an up-to-date test matrix table for this class of thin-client
What information do you need to make sense of a certification?
- The hardware specification and model
- The firmware version
- The server and monitor resolution specifications, the performance of the thin-client will be affected by how demanding the resolution is and the power of the backend server in the datacenter and its ability to supply a high-frame rate
- The OS installed and used and the supplied plugins and acceleration libraries e.g. CTXH264, libjpeg-turbo
- The graphics mode used in the certification (H.264, legacy mode, thinwire+, DCR)
- The features included in certification levels – HDX 3D Pro, HDX Premium, HDX Ready
- The performance levels and criteria for each test in all the certification levels e.g. what frame rate per second has been verified to achieve “HDX 3D Pro” level
- The feature matrix for each thin-client e.g. if the optional DCR test was performed
Problems in the listings
- Currently the listings have been historically supplied by the vendors and many details are missing
- The information users care about e.g. what the minimum frame rates for each HDX “level” is very hard to find
- Sometimes the OEM/OS used and plugins enabled are not listed
- Graphics modes against which a thin-client performed are not recorded. It has been thought that provided a thin-client performed using one mode e.g. thinwire or H.264 and achieved the framerate that should suffice. However some customers have expressed constraints or preferences to use certain modes e.g. H.264 for 3D Pro, or thinwire/thinwire+ for high server scalability in WAN scenarios.
The Citrix Ready team are working on redesigning the test kit so all the relevant information is captured. They are also working on redesigning their website so it makes the information easier to find. Please do leave any feedback you’d like on this, either on the comments on this blog or better still on the discussion forums on this thread: http://discussions.citrix.com/topic/354523-thinclient-for-hdx-3d-pro/