Optimize Citrix App Layers for Speed

Scrolling through the Citrix forum I stumbled upon the thread Really slow when importing OS Layer or creating app layers which instantly caught my attention.

I’ve seen similar discussions on Twitter and Slack so I decided to do some tests.

I’m always on the hunt for speed optimizations, after all my Automation Framework Master Class delivers 5 days of content in 3 days.

Lab Setup

The lab is running XenServer 7.1 without any hotfixes using a VM with 2GB / 2vCPU / 32GB on a Intel NUC with WD Blue 2.5 inch SSD 500GB and Samsung 960 EVO NVMe 500GB.

The Citrix Elastic Layer Manager (CELM) appliance requires fast storage, so I tested local SSD, local NVMe and iSCSI Raid 5 with 4x WD Blue M2 in my Portable Data Center For Carry On.

All tests was performed with and without Layer Disk Cache. CELM and the VM’s where located on the same storage during the tests.

OS Layer Optimization

Windows Server 2016 was installed automatically using my Automation Framework for MDT and deployed into a Workgroup with the correct VM tools, C++, .NET, Image Preparation Tool and finally optimized with Base Image Script Framework (BISF) and Citrix Optimizer.

It’s VERY important to use something like BISF to optimize and clean up the image after deployment. You don’t want to have 150 Windows Updates stealing valuable space and time.

After the deployment the VM was exported to OVA/OVF (VHD) through XenCenter. The space on disk was 11.8GB done in 14 minutes.

I also performed similar tests with Windows Server 2012 R2 which had more but smaller Windows Updates. The space on disk where quit similar.

OS Import 60GB

The import time was the slowest on SSD (14 min), iSCSI (8:20 min) and NVMe (6:10 min). Interesting to see that Raid 5 was faster than local SSD, even when passing over a slow 1GB connection.

Platform Layer 10GB

The Platform Layers was tested with and without a 120GB Layer Disk Cache. As you’ll see in the details above, the process is a bit slower with Cache enabled, simply because the bits are Cached.

Citrix VDA, PVS Target Device Software 7.15 and Citrix WEM 4.4 was installed in the Platform Layer.

Below the Cache Disks as shown in Citrix XenCenter.

App Layer 10GB

Without Cache the process to create a packaging machine took 11 min compared to 7:10 min with Cache on the slowest storage, while on the fastest NVMe with Cache only 1 minute and 10 seconds!

Notepad++ was installed in the App Layer.

Think about that, each and every time your application team needs to create an App Layer they could potentially save 10 minutes.

Note: The processes above will be slower on ESXi and faster on Hyper-V because of more/less steps related to the disk format.

Leave a reply