Optimizing desktop images with the Citrix Optimizer
My last article was about the impact of different Windows 10 builds on the performance and scalability of your VDI environment. If you’d like to get more bang for your buck there is a new kid on the block: The Citrix Optimizer. Today we are going to look at what it does and how well it does that.
It is a fact that by default Microsoft Windows desktop images contain a lot of features that you wouldn’t necessary need in a VDI environment but finding these services, background tasks and other nifty performance optimization tricks can be quite a challenge, however the performance gains can be huge. I’ve been testing the effects of optimizing your desktop images and how to perform these steps in your VDI environment.
These are the five typical ways used to optimize the performance of a VDI desktop as I see them:
- No optimizations at all
- The sysadmins know ‘a trick’ that worked very well in the past
- VMware’s operating system optimization toolkit is used
- Microsoft’s recommended settings for VDI desktops are applied
- The Citrix Optimizer is used
In this post, I will focus on Citrix Optimizer, as I’m very curious to see how this new tool created by long term Citrites will perform in our labs. Since the last article I have not been able to find the time to test Microsoft’s recommendations for VDI Performance (reading it takes 24 minutes). But perhaps in the future.
The installation is as simple as can be:
When you open the Citrix Optimizer (CTXO) it asks you to select the template that’s most appropriate for your system. In my case running Windows 10 build 1709 I chose the closest one Citrix_Windows_10_1703.xml. The simple (this is a good thing!) wizard takes me to the next step where I can analyze my system.
Citrix Optimizer performs a full scan of your desktop image and advises you on optimizations that you can apply. The list is very extensive. Please note that performance tuning templates are made for absolute performance. Your desktop will be fast but make sure it also delivers what your users need. (e.g. a Formula 1 car is really fast, but taking it for grocery shopping is not that great).
While disabling search and indexing increases your VDI scalability you will probably be searching for emails for a long time, and would you still use a system without smooth screen fonts? – Blair Parkhill
I’m a fierce believer in automation, and you should automate as much as you can. I’ve observed so many times that manual steps, especially when repeated many times, leave small errors in your desktop images that can cause mayhem. So, does Citrix Optimizer allow automation? Yes, it does and looking at the file structure seeing a lot of PowerShell and XML files it will do so well (not surprisingly knowing Martin). I’ve integrated it nicely into our Microsoft Deployment Toolkit (MDT) environment but the same thing should work for other systems like SCCM.
How did I automate it? Well I’ve gone for basic automation which does not yet detect the operating system and decide on the best template for that operating system by itself like VMware’s OSOT but I’ve added it to the right task sequence in MDT so all is good. Here is the example:
powershell.exe -executionpolicy Bypass -FILE "%~DP0CtxOptimizerEngine.ps1"
Citrix_Windows10_x64_1703.xml" -Mode Execute
xcopy "%~dp0Logs\*.log" c:\audit\ /e /y
xcopy "%~dp0Logs\*.xml" c:\audit\ /e /y
rmdir "%~dp0Logs" /s /q
As you can see I’ve gone for the following parameters:
Execute, to execute the optimization of my desktop template
The optimization template of choice
The moment we’ve all been waiting for how good does Citrix Optimizer tune my system? To keep it fair, I will do all the comparisons on default settings and then perform 10 runs with Login VSI to determine the VSImax and the Baseline. I’ve chosen to do these tests on three Windows 10 builds of which I’ve updated one (1703u) with all the available Windows Updates to see how they impact performance.
Although the Citrix Optimizer is new I like the fact that they are conservatively disabling services that users need running. The game is not to get the highest VSImax but to get the best user experience. I’m confident that the Citrix Optimizer team will continue to deliver updates and its therefore interesting to keep a close look on these guys.