I was asked to justify upgrading our PVS vDisks to VHDX from VHD. There are a few ‘feature’ / technical reasons:
- Use of native tools to mount/compress VHDX from Windows Server 2012. VHD files created with 16MB block sizes require a custom Citrix tool which does not do compress.
- VHDX is the format ‘forward’.
- VHDX is supposed to perform better.
Test setup: VHD file is Citrix PVS 7.1SP2, VHDX file is a clone of the VHD with the tools upgraded to 7.7.
So I know VHDX is supposed to perform better but I was curious by how much. Apparently, the modification Citrix made to the VHD format to a 16MB block size is ‘4K’ aligned as well.
fsutil fsinfo ntfsinfo C: reports the following for the different vDisks:
I set my target devices to the different vDisks and set the ‘Cache to RAM’ feature to 4096MB. Ideally, all writes should be to RAM but this will still tax the filesystem.
And what is the performance between the two? I used the DiskSpd utility from Microsoft to measure the differences.
The VHDX format appears to be around 7.5% faster in our setup.
The boot speed (the amount of time it takes the vDisk to power up and start the ‘Citrix PVS Device Service’) is even more dramatic:
How much of this is the tools vs the format? I’m not sure, I didn’t have the time to reverse image and upgrade a VHD to 7.7. Regardless, the combination of upgrading to 7.7 from 7.1SP2 AND the VHDX format brought a dramatic boot time improvement and consistently faster disk speed.