Safely Change a Windows VM from LSI to Paravirtual (PVSCSI)

By | October 21, 2015

Since vSphere 4.1 VMware has stated that for high Storage I/O VMs you should be using the Paravirtual (PVSCSI) controller, there are several deep dives into this topic so I won’t re-cover them here. LSI is used by default in Windows installs so unless you install the drivers using the floppy disk at the initial Windows boot that is what you’ll get. This is a step-by-step on how to safely move an existing Windows servers boot disk (and any other disks) from LSI to Paravirtual.

  1. While the VM is still running. Add a new small (1 GB is enough) disk on a different SCSI

  1. Pick one of the 4 SCSI Virtual Device Nodes that currently has no disks on it:

  1. You’ll see a new SCSI Controller card now, change that to Paravirtual:

  1. Depending on the OS (and how fast your system is), you might see a popup telling you that your new drivers are installed. If you don’t, you can check in device manager to confirm:

  1. Gracefully shutdown the VM.
  2. Remove the newly created 1GB disk that you made, and change the SCSI 0 controller to paravirtual:

At this point (if you did everything correctly 😉 ) You should see only your VMware PVSCSI Controller in Device Manager:

Additional PVSCSI information:

Splitting IO Behaviour:

https://blogs.vmware.com/vsphere/2014/03/pvscsi-large-ios.html

Older but links to relevant test data:

https://blogs.vmware.com/vsphere/2014/02/vscsi-controller-choose-performance.html

From an ex-VMware guy:

http://longwhiteclouds.com/2014/01/13/vmware-vsphere-5-5-virtual-storage-adapter-performance/

Old but speaks to lower CPIO:

http://blogs.vmware.com/performance/2010/02/highperformance-pvsci-storage-adapter-can-reduce-cpio-by-1030.html

Some history and architecture:

https://www.usenix.org/legacy/event/atc11/tech/final_files/Ahmad.pdf

One thought on “Safely Change a Windows VM from LSI to Paravirtual (PVSCSI)

  1. David Pope

    Thank you. This was perfect and very well done.

Comments are closed.