The shift towards cloud-based virtual desktops is increasingly popular among businesses, driven by many compelling reasons. Key among these is enhanced security, ensuring that sensitive data is protected with robust, cloud-level safeguards. Equally important is the promise of a consistent user experience, where employees can access their work environment seamlessly from any location, fostering productivity and flexibility. The ease of maintenance is another significant advantage; cloud virtual desktops simplify updates and troubleshooting, reducing the IT workload.
Additionally, compliance management becomes more streamlined in the cloud, with better control over regulatory requirements. This setup also offers unparalleled support for legacy applications, ensuring essential older software functions smoothly alongside newer technologies.
Finally, mobility cannot be overstated – virtual desktops in the cloud empower a mobile workforce, allowing employees to work effectively from anywhere, at any time. This comprehensive list of advantages makes transitioning to cloud-based virtual desktops an increasingly attractive option for businesses seeking efficiency, security, and scalability.
While beneficial, transitioning to virtual desktops in the cloud presents its challenges. These include the complexity of the initial setup, which can be daunting for many IT departments. Scalability and resource planning are critical issues, as miscalculations can lead to either resource wastage or performance bottlenecks. Network dependency is another significant concern; virtual desktops rely heavily on stable and fast internet connections for optimal functionality.
Image handling, which involves managing and deploying desktop images, adds another layer of complexity. However, the most crucial aspect that often determines the success or failure of virtual desktop implementation is the user experience.
A poor user experience can severely hinder the acceptance and effective use of the platform. Common issues impacting user satisfaction include:
Addressing these challenges is imperative for a successful virtual desktop experience. It requires a well-thought-out strategy focusing on robust resource allocation, network infrastructure enhancement, and continuous monitoring and adjustment to meet evolving needs.
Many challenges leading to poor user experiences in virtual desktop environments can be traced back to the foundational computing resources – CPU, GPU, Memory, Network, and Disk – not adequately designed, provisioned, or managed. Let's break down how each of these can impact the virtual desktop experience:
CPU (Central Processing Unit): The CPU is crucial for processing instructions and running applications. If the CPU resources are insufficient, users will experience slow application performance, delayed response times, and overall sluggishness in their virtual desktops.
GPU (Graphics Processing Unit): For virtual desktops running graphics-intensive applications (like video editing, 3D modelling, or even high-quality video streaming), an inadequately provisioned GPU can lead to poor graphics performance, lag, and rendering issues.
Memory (RAM): Insufficient RAM can lead to performance bottlenecks. When memory is inadequate, the system may use disk space as 'virtual memory,' significantly slowing down operations. This can result in slow application performance and reduced ability to multitask effectively.
Network: Network performance is critical in a virtual desktop infrastructure since all data transfer between the client device and the server occurs over the network. Insufficient bandwidth, high latency, or unreliable connectivity can lead to slow logins, disconnections, and frustrating user experiences.
Disk (Storage I/O): Disk speed and capacity are essential for the overall performance of virtual desktops. Slow or inadequate storage can lead to long load times for applications and files and can also impact the performance of the virtual desktops if swapping is needed due to insufficient RAM.
Now to add to the complexity - a High CPU may not necessarily be CPU problem, but can be low memory that cause swaps, so there is never more than one constraint at a time, it simply moves. So isolating impact and cause can be, at the very best, tricky.
So, how do we ensure that the user experience is good? We ensure we have enough resources – i.e. we deploy enough to get the desired user experience level. But with increased resources, you increase cost! Most companies need to operate effectively, so we are down to a balance between cost and user experience.
Let's compare the two worlds, the local desktop and the Virtual desktop and why performance management is complex in the latter.
A local desktop has reserved CPU, GPU, memory and Local disk where apps are installed. It only depends on the outside world for the user to work for Network access (Files, WEB and network applications). Because the resources (CPU, memory, GPU, Disk) are reserved, the performance is relatively predictable and constant. Yes, local devices can have problems or have a power user that maxs out the performance – but it's easy to troubleshoot and fix.
Standard Microsoft Virtual Desktop Architecture diagram
The technology stack is much more complex than a reserved local Desktop client with applications installed. For a start, the user operates on a Client (this can be a thin client or average fat client) and then a Virtual Desktop, running on a server in a data centre, so if we look at the technology stack and where resources are placed, it clears it more complex.
To add to the complexity of the technology stack, when trying to troubleshoot user experience (read performance issues), the virtual desktop is typically shared on a virtual host device where multiple users share the host. The users may not have the same load patterns, there is a big difference between a typical HR person and a graphics designed or a Design Engineer.
Creating an optimal virtual desktop environment ensuring a positive user experience is complex. Several considerations come into play when considering performance and factors influencing the system's load.
Load Pattern of Used ApplicationsSo how do you design the virtual system so it leads to excellent user experience all the time – one approach is of cause to overprovision all resources (CPU, memory, Disk size, Network).
On-premises, you did not have a choice but to dimension the system to handle peak load – which also meant that you usually pay for idle resources. In cloud deployment like Azure virtual desktop, the flexibility of the compute resources means you can do a much better job of allocating the right amount of resources and, by that, balance cost/user experience.
As effectively you are trying to reach the optimal, land in a place where you have low operational cost (actual money and resources to manage it) and an excellent user experience.
This is a complex area because load patterns are a significant driver of the resources needed to ensure an excellent user experience. You need to understand the variables that impact resources. For more details and understanding, I recommend downloading our AVD Load Considerations short white paper that gives some background on the factors and possible solutions to strike the optimal balance between user experience and cost. An alternative look at our AVD assessment service that will get you started right