Teradici recently introduced a new refreshed version of their PCoIP protocol, called “PCoIP Ultra.” This occupies a distinct place in the protocol market, but to understand the whole story, first, I’m going to cover a bit of the background for those who may not be aware.
The background on Teradici
Teradici were traditionally a company that made hardware particularly good at processing graphics and for remote access. This included server and end point cards and the like, that often were incorporated into a range of end points, including thin clients. To facilitate this, they developed sophisticated protocol and compression software to work with this hardware, as well as with more generic hardware. Later, brokering and management software followed, along with client software that meant you didn’t need to use Teradici’s dedicated hardware, and could instead repurpose generic PCs and laptops. They established themselves as one of the most sophisticated and mature vendors in this market, and naturally carved out a niche in the most demanding cutting-edge use cases where the mass protocols didn’t quite cut it, focused around their PCoIP protocol.
In 2008, VMware, lacking a performant protocol in-house, licensed Teradici PCoIP and included it for free with their products. Meanwhile, Teradici carried on working on their own standalone offerings, developing protocol enhancements that didn’t necessarily make it into the VMware offering. In recent years, VMware have moved to developing an in-house protocol (Blast Extreme), and, whilst they continue to support PCoIP which is popular with their users, it feels more like an offering in maintenance rather than development. This has often led to occasionally problematic “PCoIP” benchmarks in the EUC space, confusing whatever is included with VMware with Teradici’s own offerings. Additionally as Teradici’s own offerings have been targeted at the most demanding graphical uses the defaults and behavior are often out-of the-box tuned to those, so when compared on EUC cases, using EUC methods against protocols tuned for less demanding cases with different behaviors the comparisons and conclusions were often meaningless and flawed.
So, what do Teradici currently sell? Today, software-wise there are three offerings available direct from Teradici under the Cloud Access Software family: Desktop Access, Cloud Access, and Cloud Access Plus. Desktop Access is aimed at VMware Horizon or Amazon WorkSpaces users. If you closely examine the offerings, you’ll notice the recently announced “PCoIP Ultra” technology is included only in Teradici’s own Cloud Access and Cloud Access Plus offerings. Cloud Access is very much the core focus of Teradici’s development and feature offerings. As well as the PCoIP Ultra protocol (more of what that actually is later), the Cloud Access SKUs include brokering and management capabilities, plus there’s a cloud management plane option.
What Teradici offers is unusual, in that it is a protocol and some control/brokering functionality rather than a full-blown VDI solution. Many traditional EUC vendors already own a protocol generally tweaked to their own demands (e.g., Citrix with HDX, Microsoft’s RDP, VMware Blast Extreme, AWS Appstream 2.0 built with NICE DCV technologies), and many customers of those vendors are likely to stick with whatever is bundled with their cloud or VDI choice. Usually, only those with more demanding needs seek out Teradici, with notable examples being medical and VFX/media use cases. The VFX industry has been generally slow to uptake cloud and remoting interactive graphical applications from datacenters, mainly due to the extreme demands and high expectations of the software and users. However, it is notable that Jellyfish pictures (built around Azure) and DNEG, considered early adopters and experienced trailblazers in this field, have both opted to use Teradici technologies and protocols.
What Teradici offers is particularly appealing for CAD or 3-D graphical software ISVs looking to offer their own branded streamed/online solutions. With an API designed to facilitate this, and a wide range of public clouds (Azure, Amazon, Google) and on-premises and private cloud/datacenter platforms supported, along with some brokering and management tools (Cloud Access Manager) and all the usual end points (iOS, Mac, Android, Windows, Linux), we start to see graphical software vendors leveraging Teradici to offer their software via cloud and subscription models.
One of the first integrations with Avid around their Media Composer video editing suite has already been announced. On those end points it’s worth noting that whilst Teradici and their partners do offer hardware clients, they also offer software clients to repurpose generic endpoints. This offers ISVs an option to build a vendor-neutral, multi-cloud, and hardware neutral branded solution, and avoid vendor lock-in. This abstracts their user from whatever hardware and cloud the ISV chooses, which the bigger vendors in particular may find attractive.
Teradici are one of the most mature protocols vendors and have a core focus on handling graphics, unlike VDI vendors distracted by MDM, MAM, AD and Storage features. The graphics have remained at the core of their development, which means that they have often been earliest to market with various features. They have often done things in a slightly different way, or for the benefit of the most demanding 10% of users, rather than where the mass market usually ends up converging with a “good enough” solution.
Often, bakeoffs using Teradici technologies, especially in the EUC community and ecosystem, have been fatally flawed and misleading simply due to how their protocols work and how they are designed to be configured of integrated; something not understood by those in EUC. The PCoIP Ultra announcement, though, released some details that we can use to explore what’s under the hood a little deeper.
The initial PR text around PCoIP Ultra was not particularly exciting or insightful, but when you dig further—there’s actually a lot of substance. The first release announced support for:
- 4K/UHD high-frame-rate content
- Efficient scaling across multicore CPUs, leveraging AVX2 instruction sets
- Expanded multi-codec architecture for third-party codecs, including H.264/HEVC
When it came to the first point, my first thought was surely they must have already supported 3820x2160?! (This has become your commodity 4K television or monitor.) Indeed, they already did; the announcement is around the high frame rate. Previously, Teradici, like most protocols, considered 30 fps the desirable standard on 4K, but now Teradici are supporting 60 fps on heavyweight graphics.
This ties in with point two, under the hood the architecture has undergone a pretty major overhaul to upgrade the support for Streaming SIMD Extensions 2 (SSE2) CPUs to SSE4 and AVX hardware and GPUs. The net result is a fourfold increase in pixel throughput. Bottlenecks have been removed and scalability increased—historically limits could be reached where adding further CPU attained no benefit due to the overhead of managing the parallelization, but now they’re working beyond these limits.
I spoke to Technical Marketing Principal Ian Main at Teradici (who has a genuine engineering background in signal processing – he can explain how H.264 works and probably debug it himself!) to get more details on how significant the re-architecture had been, and two slides he showed me stood out. For me, they really hit home that “PCoIP Ultra” really isn’t the same thing as legacy PCoIP and what is bundled with VMware. In particular, the lifting on CPU scalability is particularly well explained.
Probably the most significant change in terms of product, though, is the decision to support third-party codecs and hardware alongside their existing offerings, the first being H.264 and NVIDIA hardware encoding for it. Teradici-NVIDIA integrations entered preview over the last few months and there have yet to be any significant third-party benchmarks released. Understanding this is key to understanding the confusion around PCoIP that has often led to some very misleading benchmarking. Teradici have just added H.264… which means they weren’t using it before… This leads to the question, what on earth were they using before?
H.264 was designed as a video compression codec, not for remoting. The now ubiquitous support in hardware GPUs has led to a rise in its use within remoting protocols, but it has lots of limitations. H.264 4:4:4 is often referred to “visually lossless.” It’s based around scaled approximated discrete cosine transforms, and floating-point errors are introduced. For many users this is perfectly acceptable, but for high-end VFX/video editing, medical applications, and designers, it’s not, so Teradici went with an alternative. Many suspect a rather sophisticated multiscale wavelet codec (to protocol gurus that means rather clever and cunning). Most protocols use 8-bit color channels, whereas to achieve true color fidelity and lossless compression under-the-hood, Teradici have always had extra bits going on to ensure the 8-bit channel has fidelity.
All this means that in terms of bandwidth, PCoIP has often been measured to be heavier on bandwidth against protocols that aren’t intending to achieve fidelity. With the addition of the H.264 codec better like-for-like comparisons will be possible. This also means that Teradici are, by virtue of their architecture, probably best placed to offer a 10-bit or higher channel; an increasing want from the VFX and media sectors. As Teradici have always been one of very few niche players in those markets, their products have traditionally also been configured to favor quality over low bandwidth by the demands of their customers.
Their products were also designed to be hardware-optimized only on their own PCoIP hardware, so comparisons against protocols with other hardware were somewhat contrived as PCoIP users had a different hardware option available. Another flaw in most benchmarks is the failure to quantify the image quality and the build-to-lossless codec capabilities—that final 10% of image quality and snappiness will come at a bandwidth cost. And, whilst you limit Teradici technologies, often they are compared simply doing something other EUC protocols aren’t or can’t do.
What this means in the market
Whilst supporting generic and third-party codecs for the masses but also enhancing their own rather sophisticated methods, Teradici can now reach a lot of use cases in a way EUC pros find easier to understand and adopt. Benchmarking Teradici’s strengths is particularly tricky, as the strengths of their cunning voodoo wavelet stuff is often on complex visual details, where other protocols struggle, so you rarely see other vendors publishing data where they come up short.
In particular, I’ve never seen a protocol as strong on poor quality text as PCoIP. Most of the published data you’ll find is on good quality text; but with increasing digitization of legacy documents, this may suit the needs of finance and legal firms drowning in PDF scans well.
Anyone looking to understand PCoIP should seek out the obscure and little circulated “Session Planning Guide;” if you are looking to use Teradici in low-bandwidth scenarios or EUC, you’ll probably want to do a bit of tuning to optimize and get a fair assessment against protocols that are less tuned to high-end graphics out of the box.
PCoIP already had a lot of features that covered higher end users,. In particular, low latency support for a wide range of USB peripherals, very few EUC or graphics-via-a-browser vendors offer support for devices such as Wacom drawing or signature tablets or specialist spacemice.
Cloud gaming and streaming is also a niche well suited to Teradici’s core tech, as it involves high-frame rate interactive graphics. Though with some very big players making moves in this area such as Google Stadia, Teradici’s place in that market may well be driven by politics and partnerships.
So are the protocol wars over? No of course not...