An update about my experience with PVS.

This is an update to my previous blogposts about PVS 7.1 Cache to RAM with overflow to disk , How I increased IOPS 200 times with intermediate buffering, and Experience with PVS on Hyper-V.

About cache to RAM:

Citrix has released an update to PVS 7.1 that solves a problem with the new cache to RAM feature. With the hotfix in place it now actually performs better than the old Cache to RAM feature, but without the risk of crash when RAM is filled. My first test showed that Cache to RAM gave 16000IOPS and cache to RAM with overflow to disk gave about 70000IOPS, so it’s a huge improvement.

About intermediate buffering:

Citrix has released a new article that describes when to use the Intermediate buffering.Long story short, here are my recomendations on PVS Cache options:

If you are on PVS 7.1 or newer go for cache to RAM with overflow to disk. If you still have windows XP or Windows 2003 devices (that is not supported on PVS 7.x) or for some other reason cannot upgrade to PVS 7.1, use cache to disk. If you are on xenserver you can enable intermediate buffering, on hyper-V don’t. Hyper-v performs bad with intermediate buffering.

And allways test it before doing anything in production environment.

About PVS on Hyper-V:

Don’t do it (yet). I would recommend to go for MCS. PVS on Hyper-V works very bad together with XenApp 6.x. It works with minor issues with XenApp 7.x and XenDesktop 7.x. This is due to the synthetic adapter that does not work with PXE boot. Windows 2012R2 supports PXE boot on synthetic adapter with Gen2 VM, but this does not work with PVS yet. The workaround provided by Citrix is to use 2 adapters one legacy and one synthetic, and PVS will automatically handle the switchover. If you use the XenDesktop wizard in PVS, you VM’s will be configured correctly to work with dual NIC’s and PVS. However, I’ve observed multiple issues with the dual NIC configuration:

  • Legacy NIC adapter sometimes gets reintroduced after running a while.
  • MAC-adresses changes when moving VM from one Hyper-V host to another unless a static MAC address is configured on both NIC adapters.
  • XenApp 6.x does not update the IP adress of servers when PVS switches NIC adapter, causing it to deliver incorrect IP adresses to the clients. A restart of IMA service solves it. XenDesktop 7.x and XenApp 7.x does not seem to have a problem with this

PVS Licensing

A lot of the customers I work with are using only XenApp and no XenDesktop (yet). Mostly are on Enterprise licensing. Previously the cheapest way to get PVS licensed for XenApp enterprise customers was to buy xenserver enterprise. You would get 4 PVS licenses per Xenserver license you bought. Now with Xenserver 6.2 the PVS license is no longer included in the license. You have three options to get PVS licenses if you are on XenApp.

  1. Convert XenApp enterprise to XenApp Platinum licenses. It’s quite expensive if you don’t need any of the other features included in Platium; AppDNA, AG Universal and XenMobile MDM.
  2. Convert XenApp enterprise to XenDesktop Enterprice licenses. Still cost a lot, but now you will also be able to mix XenApp and XenDesktop on the same license.
  3. Buy PVS standalone license: Cheapest way, but you will not get any other features, and if you later convert XenApp licenses to platinum or XenDesktop, you have wasted the PVS licenses.

I think it’s a little strange that XenDesktop Enterprise has PVS included but XenApp only has PVS included in Platinum licenses.

6 thoughts on “An update about my experience with PVS.

  1. Pingback: PVS 7.1 RAM Cache with overflow to disk | Virtual eXperience

  2. Pingback: How I increased IOPS 200 times with XenServer and PVS | Virtual eXperience

  3. Pingback: Experience with Hyper-V and PVS 7 | Virtual eXperience

  4. So here is a question. Do you see those high IOPS if you enable the fallback mode, without a local disk to fall back to? Or does PVS fail back to caching on server.

  5. Magnar,

    Thanks for your blogs. They are very helpful. Quick follow up question. How much memory should I set aside for cache? We are running XA 6.5 on Windows 2008R2 and have just allocated ~2GB of RAM for Cache with Overflow to Hard Disk. We have plenty of RAM available even with a server loaded up with over 100 users. How can I tell that what I have allocated is being used. I just don’t want to carve it up and have it go to waste. Any advise you can provide on sizing this would be greatly appreciated. Thanks!

Leave a Reply

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


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>