White Papers

Determining the appropriate queue depth for an ESXi host
73 Dell EMC SC Series: Best Practices with VMware vSphere | 2060-M-BP-V
If the LOAD is consistently greater than 1.00, and the latencies are still acceptable, the back-end disks have
available IOPS so increasing the queue depth may make sense. However, if the LOAD is consistently less
than 1.00, and the performance and latencies are acceptable, then there is usually no need to adjust the
queue depth.
In Figure 40, the device queue depth is set to 32. Three of the four volumes consistently have a LOAD above
1.00. If the back-end disks are not maxed out, it may make sense to increase the queue depth and the
DSNRO setting.
As shown in Figure 41, increasing the queue depth from the previous example has increased the total IOPs
from 6700 to 7350. However, the average device latency (DAVG/cmd) increased from 18 milliseconds to 68
milliseconds. That means the latency more than tripled for a mere 9% performance gain. In this case, it may
not make sense to increase the queue depth because latencies became too high. In a system that is sized
with the appropriate number of drives to handle the application load, the average response time (latency)
should remain below 20 milliseconds.
Queue depth increased to 255
For more information about the disk statistics in esxtop, consult the esxtop man page or the vSphere
Monitoring and Performance Guide on VMware vSphere documentation.
Note: Although the per-LUN queue depth maximum is 256, the per-adapter maximum within ESXi is 4096. By
increasing the per LUN queue depth from 64 to 128, it can take fewer LUNs to saturate a port queue. For
example, 4096/64=64 LUNs, but 4096/128=32 LUNs.