Image Optimization Tools Comparison Matrix

This article offers an image optimization tools comparison matrix and shows you where these tools overlap each other and what separates them.

A big thank you to Wolfgang Thürr for his assistance in writing this article.

Change Log
20.09.2018: updated article to latest versions of all tools
01.05.2019: updated article to latest versions of all tools (e.g. v.2.1.1.23 of Citrix Optimizer)

Table of Contents

Optimization tools comparison matrix

Optimizing your golden master image can give you quite a performance boost, but without comparing the available image optimization tools, how do you know which one or ones to choose?

Below you find a detailed comparison matrix of the main image optimization tools. The output format is Excel. This was the best option to break down to the desired level of detail. Also, a big thank you to Citrite (and fellow CTA) Daniel Feller for his comprehensive overview of Windows Default Apps across multiple Windows 10 versions.

Note: please be aware that in the Excel sheet below only true optimizations are compared (with some minor exceptions to this rule). Mainly, only those optimizations that improve the performance of the VM (higher user density), lead to faster user logon times, or improve the user experience are listed. Customizations such as changes to the sound or color scheme and changes that lead to weaker security (e.g. disabling UAC, Windows Firewall) have been deliberately left out, except for Data Execution Prevention (DEP).
Also, customizations based on the HKCU registry hive (= current user) have been left out. This relates especially to the VMWare OS Optimization Tool. I do recommend you go through the current user settings as defined in the VMWare OSOT tool and select the ones you would like to configure in your environment. However, I recommend using a Microsoft Group Policy to deploy these settings and not to include them in the image itself.
Last but not least, most optimizations concern non-persistent machines, so make sure that you understand which settings could have a negative impact when it comes to persistent devices (e.g. disable Windows Update, minimize event log, disable last access time stamp, remove recycle bin, etc.).

Optimization Tools Comparison Matrix v1.4 (05/2019)

A closer look at the optimization tools compared in this article

The following paragraphs describe each of the optimization tools compared in this article. Also included is a subjective opinion on the ‘likes and dislikes’ of each tool. You are very welcome to challenge or add to these opinions! Simply leave a comment at the end of this article and your voice will be heard.

Citrix Optimizer

  • Vendor: Citrix
  • Supported desktop operating systems:
    • Windows 7 SP1
    • Windows 8.1
    • Windows 10 version 1607
    • Windows 10 version 1703
    • Windows 10 version 1709
    • Windows 10 version 1803
    • Windows 10 version 1809
  • Supported server operating systems:
    • Windows Server 2008 R2
    • Windows Server 2012 R2
    • Windows Server 2016 build 1607
    • Windows Server 2019 build 1809
  • Version compared in this article: 2.1.1.23 (March 2019)
  • Version (newest / latest): 2.1.1.23 (March 2019)
  • Download: https://support.citrix.com/article/CTX224676

Before you continue reading, I recommend you to first read the Citrix TechBytes article Citrix Optimizer written by Citrite and fellow CTA Martin Zugec.

Citrix Optimizer contains 11 different configuration templates (XML files). The latest version of the tool offers the following templates:

  • Windows 7
  • Windows 8.1
  • Windows 10 version 1607
  • Windows 10 version 1703
  • Windows 10 version 1709
  • Windows 10 version 1803
  • Windows 10 version 1809
  • Windows Server 2008 R2
  • Windows Server 2012 R2
  • Windows Server 2016 version 1607
  • Windows Server 2019 version 1809

The tool offers both a GUI and a command line option (PowerShell).

Image Optimization Tools Comparison Matrix - Citrix Optimizer V2 GUI

There are multiple ways to execute this tool on the command line. For an overview of all command line switches open (edit) the PowerShell file CtxOptimizerEngine.ps1. Here you find several examples.

Image Optimization Tools Comparison Matrix - Citrix Optimizer command line switches

Below you see an example showing you how to execute Citrix Optimizer when using PowerShell.

Image Optimization Tools Comparison Matrix - Citrix Optimizer PowerShell

Citrix Optimizer is a great tool. It is very easy to use and the GUI is modern and slick. There are still some optimizations that could be added though, for example:

  • Various miscellaneous options (which are not always pure optimizations) such as:
    • Cleanup local profiles
    • Cleanup temporary files
    • Delete Windows event logs
    • Disable Cortana (registry) with enabled Windows Search service
    • Disable Customer Experience Improvement Program (completely)
    • Disable hibernation
    • Disable TCP/IP Task Offload (especially important for Provisioning Server)
  • Options that are configured by the Provisioning Services (PVS) Target Device Optimization Tool could be included as well, such as:
    • Clear page file at shutdown
    • Reduce event log size (this is not required when the event log is redirected to a persistent hard disk such as the PVS write-cache disk)

A little bird told me that many of the above settings will be included in one of the upcoming releases of Citrix Optimizer in 2019.

Optimizations that may require different configurations depending on the environment will most likely never be included in Citrix Optimizer. Citrix can only add optimizations that can be configured in any environment. Here are some examples of such settings:

  • Disable Active Setup
  • Delete Ghost devices
  • Disable IPv6

For this reason, I created my own custom template for Windows Server 2016 that includes some of the settings that Citrix simply cannot add to their own templates. For more information, see the article Citrix Optimizer custom template for Windows Server 2016 on this website.

All-in-all Citrix Optimizer is a great tool and I highly recommend you to use it in your environment. And since this tool is under constant development it will only get better and better in the future. One of the coolest newest features is the Template Builder to make it easier to create custom templates and the feature Marketplace that allows easy integration of custom (third-party) templates.

  • Supports all commonly used Windows operating systems
  • The tool was created by Citrix for Citrix, thus compatible with your Citrix environment including deployment methods
  • Template-based (11 XML templates are included out-of-the-box)
  • Allows for custom templates and includes a template builder that makes it easy to create your own templates
  • Includes both a GUI and command line option
  • Includes an “analyze only” option
  • Includes a rollback option (available in PowerShell only for Beta release)
  • Includes a marketplace for custom templates
  • The templates currently miss some settings, but I have been told that many of them will be added in one of the upcoming releases in 2019

VMWare OS Optimization Tool

  • Vendor: VMWare
  • Supported desktop operating systems:
    • Windows 7
    • Windows 8 and 8.1
    • Windows 10
  • Supported server operating systems:
    • Windows Server 2008 (R2)
    • Windows Server 2012 (R2)
    • Windows Server 2016
  • Version compared in this article: b1100 (July 2018) -> BETA
  • Version (newest / latest): b1100 (July 2018) -> BETA
  • Download: VMWare OS Optimization Tool for Windows

Before you continue, please be aware that this tool has been created to be used with VMWare products. This tool was not created with Citrix in mind, so do not expect all Citrix best practices to be in place. This is especially true concerning Citrix deployment technologies such as Machine Creation Services (MCS) and Provisioning Server (PVS).

The VMWare OS Optimization Tool contains 13 different configuration templates (XML files). The latest version of the tool offers the following templates:

  • App Volumes Packaging Machine
  • Windows 7
  • Windows 8
  • Windows 8.1
  • Windows 10 – LoginVSI.com
  • Windows 10
  • Windows 10 (Horizon Cloud)
  • Windows Server 2008-2012
  • Windows 2016 – LoginVSI.com
  • Windows Server 2016 – Desktop
  • Windows Server 2016 – RDSH
  • Windows Server 2016 – Server

The tool offers both a GUI and a command line option.

Image Optimization Tools Comparison Matrix - VMware OS Optimization Tool console

There are multiple ways to execute this tool on the command line. For an overview of all available switches and parameters, execute the command VMwareOSOptimizationTool.exe /?.

Image Optimization Tools Comparison Matrix - VMwareOSOptimizationTool command line switches

Please realize that this software is currently only available as Technology Preview Software (beta). According to the license agreement, the beta version of the software can be freely used for testing and evaluation purposes. It may happen that the future commercial version is not for free!

“(a) Limited License. Subject to the terms and conditions of this Agreement, VMware grants to Licensee a non-exclusive, non-transferable license (without the right to sublicense) (i) to use the Technology Preview Software in accordance with the Documentation solely for purposes of internal testing and evaluation on whether or not to license commercial versions of the Technology Preview Software if such commercial versions ever become available.”

The license agreement also clearly states that “VMware is under no obligation to support the Technology Preview Software in any way“. So use this software on your own risk, especially when you are considering using it for your images in production.

All-in-all the VMWare Optimization Tool is a good and powerful tool. It is more complex than Citrix Optimizer, but it also offers many more settings and options. Each template can be exported and customized in any way you see fit. You can even create your own custom groups and steps through the GUI. In the screenshot below, you can see that you can configure a service, a registry item, or a scheduled task. You are even able to select the option ShellExecute, which allows you to execute a command. That is really quite amazing for a free tool!

Image Optimization Tools Comparison Matrix - VMware OS Optimization Tool create step

However, there are a few things I am not too happy about:

  1. Many settings in my opinion are customizations and not optimizations (e.g. default printer and sound scheme). Each template contains a large number of settings. Understanding these settings and their effect can be complicated enough, without there being non-essential items.
  2. Some optimizations are too aggressive, for example disabling the Hyper-V services in the Windows 10 template. Of course, this particular example only applies when using the VMWare OS Optimization Tool on Hyper-V. It is interesting though when you think about it, VMWare disabling Hyper-V services….
  3. Some optimizations (in some of the templates) go against Citrix best practices, such as disabling the Volume Shadow Copy Service when using Citrix Provisioning Server (see Using the Imaging Wizard to create a new vDisk). The Provisioning Server Imaging Wizard requires this service.
  4. Some optimizations lower the level of security, such as disabling the Windows firewall, User Account Control (UAC), and Data Execution Prevention (DEP). In some templates, some of these settings are even listed as recommended. It is advisable not to disable these security-related components.
  5. According to the license agreement, the tool cannot be used in production. Also, it is currently unknown if the tool will be freeware in the future and available to everyone (even if you want to use it to optimize an image to be used with Citrix XenDesktop and not VMWare Horizon View).
  6. It is sometimes difficult to understand the differences between the templates and when to use which template. For example, in the template Windows 10, the setting Disable TCP/IP Task Offload is set to enabled (value 0). This is the correct value for a physical client. In case you want to use Windows 10 for VDI, you should use a template such as Windows 10 – LoginVSI.com. In this template, the setting Disable TCP/IP Task Offload is set to disabled (value 1). In some templates, settings are not set according to their description (e.g. something is stated to be disabled when it is actually enabled). My point is, that you have to watch out and check the individual settings per template before using it.

My advice to you is this: if you want to use the VMWare OS Optimization Tool in your environment, create a new template by making a copy of the template that best fits your requirements. Then go through each setting and make corrections where necessary. Also, remove settings you do not want and add missing configurations.

  • Supports all commonly used Windows operating systems
  • Template-based (13 XML templates are included out-of-the-box)
  • Allows for custom templates and customizing default templates. The level of customization through the GUI is amazing
  • Includes both a GUI and command line option
  • Includes an “analyze only” option
  • Includes both a local and remote option
  • Includes a history and rollback option
  • Currently, the tool is in beta and the license agreement states it can only be used for testing and evaluation purposes (so not for production!)
  • Some templates are too aggressive, disabling core services or reducing the level of security
  • Some optimizations go against Citrix’s best-practices
  • The templates include many customizations that are not optimizations
  • Not all templates are meant for virtual machines, so you may accidentally de-optimize your system if you pick the wrong template
  • Some settings are plainly false or the description and the actual setting do not match

Provisioning Services (PVS) Target Device Optimization Tool (TargetOSOptimizer.exe)

  • Vendor: Citrix
  • Supported desktop operating systems:
    • Windows 7 to Windows 10 (all builds)
  • Supported server operating systems:
    • Windows 2008 R2 to Windows 2019 (all builds)
  • Version compared in this article: 1903 (Current Release)
  • Version (newest / latest): 1903
  • Download (for Provisioning Server Target Device): download and extract the ISO file for Provisioning Server. The installation files for the PVS target device are located in the subdirectory Setup\Device.
  • Download (for Virtual Delivery Agent): download the stand-alone VDA installation in the section Components that are on the product ISO but also packaged separately
  • Documentation: https://support.citrix.com/article/CTX125874

The Provisioning Services (PVS) Target Device Optimization Tool is a smaller tool compared to Citrix Optimizer and the VMWare OS Optimization Tool. This tool is included in both the Provisioning Server Target Device software and the Virtual Delivery Agent (VDA) and includes the settings as shown in the screenshot below.

Image Optimization Tools Comparison Matrix - Citrix Provisioning Services Optimization Tool

The article How to Optimize XenDesktop Machines describes each of these settings in detail.

Note: the setting Disable Machine Account Password Changes is NOT configured when the tool is executed silently (TargetOSOptimizer.exe /q). In this case, use the Microsoft Group Policy setting instead.

After installing the Provisioning Server Target Device software, the optimization tool, by default, is located here:

C:\Program Files\Citrix\Provisioning Services\TargetOSOptimizer.exe

The Provisioning Services (PVS) Target Device Optimization Tool is started by the Provisioning Server Imaging Wizard. This wizard is used to create a vDisk or image file (VHDX) from the master target device. If you select Optimize the hard disk again […], the executable TargetOSOptimizer.exe is launched.

Image Optimization Tools Comparison Matrix - Citrix Provisioning Services Imaging Wizard Optimize Image

After installing the Virtual Delivery Agent (VDA) software the optimization tool, by default, is located here:

C:\Program Files\Citrix\PvsVm\TargetOSOptimizer\TargetOSOptimizer.exe

In the case of the Virtual Delivery Agent (VDA), the Provisioning Services (PVS) Target Device Optimization Tool is started during installation (if selected).

Image Optimization Tools Comparison Matrix - Citrix Provisioning Services Optimization Tool in VDA installation wizard

There is no disadvantage to using this tool. The only thing to remember is that it is far from complete, so it is advisable to use another optimization tool as well (e.g. Citrix Optimizer or the VMWare OS Optimization Tool). My recommendation though is to forget about this tool (simply skip it) and only use Citrix Optimizer at the end of your image creation process.

  • Supports many operating systems
  • Easy to use
  • Included in your Citrix products
  • Officially supported by the vendor
  • Does not include all required optimizations

Base Image Script Framework (BIS-F)

  • Vendor: Login Consultants
  • Supported desktop operating systems:
    • Windows 7
    • Windows 8 and 8.1
    • Windows 10
  • Supported server operating systems:
    • Windows Server 2008 (R2)
    • Windows Server 2012 (R2)
    • Windows Server 2016
  • Version compared in this article: 6.1.0 (March 2019)
  • Version (newest / latest): 6.1.0 (March 2019)
  • Download: https://eucweb.com/download-bis-f
  • Documentation: https://eucweb.com/docs

BIS-F is an image cleaning, optimization, and sealing framework. The abbreviation stands for Base Image Script Framework and is one of our community’s great free tools. The company behind the tool is Login Consultants and its main developer is Matthias Schlimm. The framework supports Citrix XenApp/XenDesktop with MCS and PVS, VMware View, and Microsoft RDS.

BIS-F is different compared to Citrix Optimizer and the VMWare OS Optimization Tool. BIS-F includes optimizations to improve user density and user logon times (see the Comparison Matrix for more information), but it does so much more than that, such as:

  • Cleaning image:
    • Cleanup local profiles
    • Cleanup temporary files
    • Delete Windows event logs
    • Delete Ghost devices
    • And more…
  • Integration and execution of third-party tools:
    • Citrix Optimizer
    • VMWare OS Optimization Tool
    • CCleaner
    • DelProf
    • SDelete
    • And more…
  • Configuring/Optimizing third-party products:
    • Ivanti RES
    • Ivanti AppSense
    • SCCM
    • Anti-Virus (8 vendors supported)
    • And more…
  • Sealing/preparing image:
    • Redirect files and folders to PVS Write Cache Disk
    • Optimizations for Citrix App Layering
    • Create a VHDX file to be used with PVS on a network share

These are just a few of the many things BIS-F does for you.

As listed above, BIS-F can execute Citrix Optimizer and the VMware OS Optimization Tool directly. You get the best results by running BIS-F in combination with one of these third-party optimization tools.

BIS-F works in conjunction with Microsoft Group Policies. The tool is mainly GUI-driven, but you can also completely automate it. For more information on how to automate BIS-F, please see the article How to configure and run BIS-F in an SCCM task sequence.

  • Supports many operating systems
  • Easy to use
  • Integrated support for optimization tools such as Citrix Optimizer and the VMWare OS Optimization Tool
  • Optimizes and cleans the operating system
  • Optimizes and configures third-party products
  • Seals your image
  • Under continuous development
  • Community driven
  • None. Use it!

Optimization guides and community articles

There are several great articles out there concerning image optimization tools and their impact on performance. It would be remiss not to mention these great community contributions. So here it goes.

In case I forgot to mention any other great articles out there, please accept my apologies. Simply send me a link and I will add the article to the list.

Also, see some of my other articles concerning Citrix Optimizer:

Another great source of information are the following Citrix and Microsoft optimization guides:

Conclusion

After reading this article you will have a better understanding of the various optimization tools out there. But still, the question remains, which tool or combination of tools to use? It is not possible to give you a definitive answer, because too much depends on your environment and your organization’s requirements. However, I can share with you my thoughts on this matter:

  • None of the tools listed in this article are 100% complete or optimize your environment perfectly. You will still have to put in some work to see which settings work for you (and which do not!). Also, do not forget that other products may need to be optimized as well, for example, your anti-virus product.
  • It takes some time and effort to build an image that has the right balance between (vendor) best practices and your organization’s requirements, even with the help of optimization tools.
  • You can use a combination of the tools listed in this article.
  • Before optimizing anything, make sure to measure the following in your environment:
    • Your current average logon times
    • Your current user density (= maximum concurrent users on one VM)
  • As stated in the introduction of this article, many of the optimizations concern non-persistent target devices. In case you want to optimize a persistent device, make sure to only enable those settings that make sense (e.g. do not disable Windows Update, do not minimize event log, do not disable last access time stamp, do not remove recycle bin, etc.).
  • Some optimizations may reduce user experience. For example, removing the logon background window takes away some of the “coolness” of Windows 10. With some of these settings, you will have to choose between better performance or better user experience.
  • When installing the Virtual Delivery Agent (VDA) and the Provisioning Server Target Device software, skip the optimization tool included in the software and run Citrix Optimizer at the end of your image creation process.
  • When you create an image that is to be used in a Citrix environment, use Citrix Optimizer. This tool will be the best fit. It is custom-made for hosted-shared and VDI image optimization, but it will also be correctly configured for Citrix deployment technologies such as Machine Creation Services (MCS) and Provisioning Server (PVS).
  • The same goes for VMWare. When creating an image for Horizon View, use the VMWare OS Optimization Tool.
  • When using the VMWare OS Optimization Tool in a Citrix environment, use the tool with care. As stated before, this tool has not been created with Citrix in mind. Copy one of the existing templates (the one that suits your environment best), go through each setting, and make the necessary adjustments.
  • Use BIS-F to optimize, clean, and seal your image. BIS-F will take care of many customizations and you can run Citrix Optimizer from BIS-F directly. There is no “either/or” scenario; BIS-F and Citrix Optimizer work together; they do not cancel each other out. BIS-F also helps you with the configuration and optimization of third-party products.
  • Other ways to further customize your image is to use Citrix and Microsoft Group Policies.

When you proceed as described above your image will be highly optimized. Optimizing your image correctly ensures that you use your hardware as efficiently as possible and that your users get the best possible user experience.

I hope that this article was of some help to you.

9 thoughts on “Image Optimization Tools Comparison Matrix

  1. Great article Dennis. I’m a massive fan of BIS-F, as you guys know:-) The Vendors would be better off providing value by assisting with this community tool instead of wasting their time on their own.

    • Thanks a lot Jeremy! I am happy you like the article. I hear what you are saying. There is one advantage though of BIS-F being a vendor independent tool; there’s way more flexibility to add new features and no “red tape”. 😉

  2. Pingback: My first time: Citrix Machine Creation Services (MCS) | Meine kleine Farm - A Citrix Blog

  3. Valuable blog article, it was quite interesting nice work. I want to thank you for this informative read, I really appreciate sharing your post. This is my great pleasure to visit your website and to enjoy your excellent post here.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.