What's New in XenApp and XenDesktop 7.9? - MCSIO

One of the key features of Citrix Provisioning Services (or PVS) is the now default setting of "Cache to Ram with Overflow to disk" write cache. One of the results is an increase in IOPS throughput for PVS targets while reducing the IOPS from your storage subsystem.

This feature was lacking in Machine Creation Services (MCS) until now. MCS Storage Optimization (MCSIO), is a new feature within MCS provisioning and was introduced in XenApp and XenDesktop 7.9. This new feature helps reduce traffic to shared storage in XenApp and XenDesktop environments. In MCS, RAM cache is called temporary memory cache.

Why use MCSIO?

There are clear advantages to MCSIO;

  • Reduce I/O write load on storage (swapping disk for RAM in effect)
  • The master disk can be on storage configured to optimise read operations; temporary disks can be on a storage that optimize write operations, we can optimise the distribution of I/O workloads.
  • With the new storage optimization capability we can change where to store the identity and write cache disk. Instead of using more expensive shared storage, we can use less expensive local storage.
  • You can size the amount of temporary memory cache, thus alter your I/O profile to suit your needs. With sufficient memory you can cache all writes to memory and not use the second tier temporary disk.

The configuration of the temporary memory based and disk-based cache is built into the definition of the machine catalog. It is possible to define a catalog with temporary memory and Disk cache, or with no temporary memory cache or one with no disk cache. As with PVS, the approach selected must make sure that the cache is large enough to contain all writes.

Note that there are some limitations;

  • Only works with non-persistent provisioned machines
  • You need to create a new machine catalog to get the new features
  • MCSIO impacts on Read IO as it checks the temporary cache before checking the shared storage. Read operations aren’t as detrimental to a VDI environment like write operations, but they should still be managed appropriately.

I hope you've enjoyed our first blog post!