Tuning ESX/ESXi for better storage performance by modifying the maximum I/O block size
search cancel

Tuning ESX/ESXi for better storage performance by modifying the maximum I/O block size

book

Article ID: 326300

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

You see reduced storage device performance in ESX/ESXi 3.5.x and in later hosts, when compared to an ESX3.0 system.

This article provides steps to reduce the size of I/O requests passed to the storage device to tune and optimize storage performance for ESX/ESXi.


Environment

VMware vSphere ESXi 6.7
VMware vSphere ESXi 6.0
VMware ESX Server 3.5.x
VMware vSphere ESXi 6.5
VMware vSphere ESXi 5.1
VMware ESXi 3.5.x Installable
VMware vSphere ESXi 5.5
VMware ESXi 4.0.x Embedded
VMware vSphere ESXi 5.0
VMware ESXi 4.0.x Installable
VMware ESX 4.1.x
VMware ESXi 3.5.x Embedded
VMware ESXi 4.1.x Installable
VMware ESXi 4.1.x Embedded
VMware ESX 4.0.x

Resolution

Many applications are designed to issue large I/O requests for higher bandwidth. ESX/ESXi 3.5 and later versions support increased limits for the maximum I/O request size passed to storage devices. These versions of ESX pass I/O requests as large as 32767 KB directly to the storage device. I/O requests larger than thisare split into several, smaller-sized I/O requests. Some storage devices, however, have been found to exhibit reduced performance when passed large I/O requests (above 128KB, 256KB, or 512KB, depending on the array and configuration). As a fix for this, you can lower the maximum I/O size ESX allows before splitting I/O requests.

If you have measured a decreased storage performance in ESX/ESXi 3.5 and later hosts, compared to a similar ESX 3.0.x system, try reducing the maximum I/O size, as described below, and see if performance improves. If your storage device does not have this problem (or if the problem does not go away when you reduce the maximum I/O size), you are better off leaving the maximum I/O size at its default 32767 KB setting because it increases performance and (or) lower CPU utilization on your system.

One way to diagnose the problem is by looking at latency statistics reported by esxtop. Beginning in ESX/ESXi 3.5, esxtop includes several detailed storage statistics that report time spent in various components. If storage devices are a problem, esxtop displays high device latencies. For more information about using esxtop, see Using esxtop to identify storage performance issues (1008205).

To reduce the size of I/O requests passed to the storage device using the VMware Infrastructure/vSphere Client:
  1. Go to Host > Configuration
  2. Click Advanced Settings.
  3. Go to Disk.
  4. Change Disk.DiskMaxIOSize.

Note: You can make this change without rebooting the ESX/ESXi host or without putting the ESX/ESXi host in maintenance mode.

Other related information when this setting is changed - https://kb.vmware.com/kb/2137402
 

Additional Information:
 
For translated versions of this article, see: