NAME
scsi_max_qdepth — maximum number of I/Os that target will queue up for execution
VALUES
Recommended values
1 - 255
Most SCSI-2 and above devices accept multiple commands and have enough internal
memory to support the default queue depth set by HP.
You may change the default value to tune devices for higher
throughput or load balancing.
DESCRIPTION
Some SCSI devices support tagged queuing, which means that they can have
more than one SCSI command outstanding at any point in time.
The number of commands that can be outstanding varies by device,
and is not known to HP-UX.
To avoid overflowing this queue, HP-UX will not send more
than a certain number of outstanding commands to any SCSI device.
This tunable sets the default value for that limit.
The default value can be overridden for specific devices using
ioctl.
Queue depth is synonymous to the tagged queuing.
When supported by a target, it allows the target to accept multiple
SCSI commands for execution.
Some targets can allow up to 256 commands to be stored from different initiators.
This mechanism can help optimization for better performance.
Once the target command queue is full, the target terminates any additional
I/O and returns a
QUEUE FULL
status to the initiator.
Targets may support less than 256 commands to be queued, hence the factory
defaults to
8.
If the system has a combination of devices that support small and larger queue
depths, then a queue depth can be set to a value which would work for most
devices.
For specific devices, the system administrator can change the
queue depth on a per device basis using
SIO_SET_LUN_LIMIT
ioctl().
See
scsictl(1M)
for more on how to use
ioctl().
The values for both 32-bit and 64-bit kernel are the same.
Who Is Expected to Change This Tunable?
Anyone.
Restrictions on Changing
Changes to this tunable take effect immediately.
When Should the Value of This Tunable Be Raised?
SCSI devices that have enough memory to support higher queue depth than the
default set by HP.
Such devices may offer better performance if the queue
depth is set to a higher value.
What Are the Side Effects of Raising the Value of This Tunable?
The queue depth applies to all the SCSI devices that support tag queuing.
Setting the queue depth to a value larger than the disk can handle will result
in I/Os being held off once a
QUEUE FULL
condition exists on the disk.
A mechanism exists that will lower the queue depth of the device in case of
QUEUE FULL
condition avoiding infinite
QUEUE FULL
conditions on that device.
Nevertheless, this mechanism will periodically try higher queue depths and
QUEUE FULL
conditions will arise.
When Should the Value of This Tunable Be Lowered?
When the connected SCSI devices support smaller queue depth or for load
balancing.
What Are the Side Effects of Lovering the Value of This Tunable?
Devices that support higher queue depth may not deliver optimal performance
when a lower queue depth value is set.
What Other Tunables Should Be Changed at the Same Time?
None.
WARNINGS
All HP-UX kernel tunable parameters are release specific.
This parameter may be removed or have its meaning changed in
future releases of HP-UX.
AUTHOR
scsi_max_qdepth
was developed by HP.