Contents
To identify the storage adapter queue depth
Run the esxtop command in the service console of the ESX host or the ESXi shell (Tech Support mode). For more information, see Using Tech Support Mode in ESXi 4.1 and ESXi 5.0 (1017910) or Tech Support Mode for Emergency Support (1003677) .
Press d.
Press f and select Queue Stats.
The value listed under AQLEN is the queue depth of the storage adapter. This is the maximum number of ESX VMKernel active commands that the adapter driver is configured to support.
To identify the storage device queue depth:
Run the esxtop command in the service console of the ESX host or the ESXi shell (Tech Support mode). For more information, see Using Tech Support Mode in ESXi 4.1 and ESXi 5.0 (1017910) or Tech Support Mode for Emergency Support (1003677).
Press u.
Press f and select Queue Stats.
The value listed under DQLEN is the queue depth of the storage device. This is the maximum number of ESX VMKernel active commands that the device is configured to support.
Notes:
The value listed under LQLEN is the LUN queue depth. This is the maximum number of ESX/ESXi VMkernel active commands supported by the LUN.
The value listed under %USD is the percentage of queue depth (adapter, LUN, or world) used by ESX/ESXi VMkernel active commands.
Changing the queue depth for QLogic, Emulex, and Brocade HBAs
Verify which HBA module is currently loaded by entering one of these commands on the service console:
For QLogic:
# esxcli system module list | grep qla
For ESXi 5.5 QLogic native drivers:
# esxcli system module list | grep qln
For Emulex:
# esxcli system module list | grep lpfc
For Brocade:
# esxcli system module list | grep bfa
Run one of these commands:
Note: The examples show the QLogic qla2xxx and Emulex lpfc820 modules. Use the appropriate module based on the outcome of the previous step.
For QLogic:
# esxcli system module parameters set -p ql2xmaxqdepth=64 -m qla2xxx
For ESXi 5.5 QLogic native drivers:
# esxcli system module parameters set -p ql2xmaxqdepth=64 -m qlnativefc
For Emulex:
# esxcli system module parameters set -p lpfc0_lun_queue_depth=64 -m lpfc820
For ESXi 5.5 Emulex native drivers:
# esxcli system module parameters set -p lpfc0_lun_queue_depth=64 -m lpfc
For Brocade:
# esxcli system module parameters set -p bfa_lun_queue_depth=64 -m bfa
Notes:
In these commands, both ql2xmaxqdepth and lpfc0 use the lowercase letter L, "l", and not the numeric digit 1.
In this case, the HBAs represented by ql2x and lpfc0 have their LUN queue depths set to 64.
If all Emulex cards on the host must be updated, apply the global parameter, lpfc_lun_queue_depth instead.
Reboot your host.
Run this command to confirm that your changes have been applied:
# esxcli system module parameters list -m driver
Where driver is your QLogic, Emulex, or Brocade adapter driver module, such as lpfc820, qla2xxx, or bfa.
The output appears similar to:
Name Type Value Description
-------------------------- ---- ----- --------------------------------------------------
.....
ql2xmaxqdepth int 64 Maximum queue depth to report for target devices.
How to increase the maximum queue depth per Logical Unit Number
https://kb.netapp.com/index?page=content&id=1011356&pmv=print&impressions=false
The queue depth parameter can also be changed using the SANsurfer utility.
Steps:
Perform the following steps:
- Run the SANsurfer HBA manager utility.
Click on HBA port > Settings. Click Advanced HBA port settings in the drop down list box. Update the Execution Throttle parameter.
To update Emulex HBA queue depths On Windows hosts, you can use the LPUTILNT utility to update the queue depth for Emulex HBAs or Registry edit.
Option 1:
- Run the LPUTILNT utility located in the c:\\WINNT\system32 directory. Select Drive Parameters from the pull down menu on the right side.
Scroll down and double-click QueueDepth.
