Knowledge Base

The VMware Knowledge Base provides support solutions, error messages and troubleshooting guides
 
Search the VMware Knowledge Base (KB)   View by Article ID
 

Testing virtual machine storage I/O performance for VMware ESX and ESXi (1006821)

Symptoms

  • You see slow performance with a virtual machine on a SAN
  • Slow virtual machine performance
  • Completing a task takes a significant amount of time

Purpose

This article provides steps to test the speed/throughput on ESX/ESXi and virtual machines as well steps to narrow down the issue.

Resolution

Doing speeds tests are always relative to the environment and hardware being used.

This article cannot provide specific test result numbers to expect as every environment is unique and the total load for an array is different.

You must establish a baseline throughput. You need to make an "apples to apples" comparison between an ESX host running a single virtual machine and a physical host. If the hardware between the two are identical and the operating system version between the physical host and the virtual machine are also the same, these two systems perform as close to each other as possible. If they do not perform similarly, other factors (BUSlogic vs. LSIlogic, etc) need to be taken into consideration to explain the difference.
 
To establish a baseline:
  1. Create a virtual machine and put the operating system vmdk on local storage. This must be the same operating system as your physical host. If you choose a Windows operating system ensure you select LSIlogic as your controller type.

  2. Carve out a small LUN to attach to this virtual machine via RDM. A 5GB LUN is a sufficient size to work with, though the size really does not play a factor. If you have an RDM LUN that is already available, you can use it instead.

  3. Attach the LUN in RDM mode to the virtual machine. Whether you use physical, virtual, or none for BUS sharing does not matter.

  4. After you have booted the virtual machine, install a program similar to IOMeter ( http://www.iometer.org/ ) or HD_Speed ( http://www.steelbytes.com/?mid=20) in the virtual machine.

    IOMeter is a more intuitive application and allows you to run various different kinds of tests however HD_Speed is much easier to work with and provides accurate results that are simple to read and understand. Both applications are free to download and use.


    Note: VMware does not endorse or recommend any particular third party utility, nor is the list above meant to be exhaustive.

  5. Load up the application and select the RDM LUN to test. The following steps are using HD_Speed for this test.

  6. Leave everything set to default and begin your read test.

    Caution: A write test is destructive to the data on the RDM LUN.


  7. Allow this test to run for at least 60 to 300 seconds. You have now established your baseline numbers.

  8. Power off the virtual machine.

  9. Remove the RDM LUN from the virtual machine.

  10. Present the LUN to your physical host.

  11. Repeat steps 4 through 7.
 
The results must be similar. If they are not, you need to review why.

Possible factors include:
  • Incorrect virtual machine test configuration (using BUSlogic instead of LSIlogic)
  • ESX host and physical host are connected to different switches
  • ESX host and physical host do not have identical hardware/firmware
  • Incorrect host mode settings on the SAN for the ESX host
If the virtual machine is not performing well, review /var/log/vmkernel for possible reasons for this degradation. If both the physical host and virtual machine are performing poorly but identically, review the array and switch configuration.

A possible reason for equally poor performance may be write cache on the array controllers or overcommitment of the array in general.

 
THE CONTENT OF THIS ARTICLE IS PROVIDED "AS-IS," AND TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, VMWARE DISCLAIMS ALL OTHER REPRESENTATIONS AND WARRANTIES, EXPRESS OR IMPLIED, REGARDING THIS CONTENT, INCLUDING THEIR FITNESS FOR A PARTICULAR PURPOSE, THEIR MERCHANTABILITY, OR THEIR NONINFRINGEMENT. VMWARE SHALL NOT BE LIABLE FOR ANY DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE USE OF THIS CONTENT, INCLUDING DIRECT, INDIRECT, CONSEQUENTIAL DAMAGES, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF VMWARE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.


Additional Information

To be alerted when this article is updated, click Subscribe to Document in the Actions box.

See Also

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.

Feedback

  • 19 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.
What can we do to improve this information? (4000 or fewer characters)
  • 19 Ratings
Actions
KB: