cancel
Showing results for 
Search instead for 
Did you mean: 

scsi queue depth usage

SOLVED
Go to solution
Michael O'brien_1
Regular Advisor

scsi queue depth usage

Hi,

I'm trying to find the usage of the scsi queue depth for a disk. I know I can find the limit of the scsi queue depth using scsimgr but I'm trying to find the actual usage of the scsi queue depth.

Is the BYDSK_REQUEST_QUEUE measureare metric related to the scsi queue depth value ?

Thanks
Michael
2 REPLIES
Duncan Edmonstone
Honored Contributor
Solution

Re: scsi queue depth usage

Michael,

No BYDSK_REQUEST_QUEUE shows IOs which are queueing waiting to be sent to the LUN, wheeras a SCSI queue depth is the total amount of IOs that can be outstanding on the LUN (i.e. already sent to the SCSI target) - does that make sense?

I don't think there's any way to easily see what the current number of outstanding IOs are on any given LUN, but you can check if the queue for the target port the LUN is on filled up or not using a scsimgr command such as this:

# scsimgr get_stat -D /dev/rdisk/disk11 all_lpt | grep -E 'Queue full|STATISTICS'
STATISTICS FOR LUN path : lunpath12
Queue full status = 0
STATISTICS FOR LUN path : lunpath17
Queue full status = 0
STATISTICS FOR LUN path : lunpath11
Queue full status = 0
STATISTICS FOR LUN path : lunpath20
Queue full status = 0

So since I reset my scsimgr stats using the command "scsimgr clear_stat ..." I haven't seen any "queue full events returned by any of the paths to the LUN. However I don't think this stat necessarily relates to what the SCSI queue depth is set to on the host, but rather to what the target port can actually handle (I say "don't think" as I'm not completely sure). So for example I might have 10 LUNs presented out of an EVAx400 controller port with a queue depth set to say 128 - that would mean I could in theory have 10 x 128 = 1280 IOs outstanding on that port before IOs start to get queued up (assuming perfectly symmetric IOs across the LUNs), but I happen to know that the maximum target port queue size for an EVAx400 controller port is 1536, so I don't think I would see a "Queue full" status in my scsimgr output in this case anyway.

Rather than worrying too much about this yourself, you might want to think about getting HP-UX to do this heavy lifting for you - have a read of the following white paper:

http://bizsupport2.austin.hp.com/bc/docs/support/SupportManual/c02054623/c02054623.pdf

HTH

Duncan

HTH

Duncan
Michael O'brien_1
Regular Advisor

Re: scsi queue depth usage

Thanks Duncan for your reply, excellent response. I saw this paper a couple of weeks ago, I'll take time to a have good read of it.

I've came accross a recommendation that the default scsi queue depth of 8 isn't large enough if you have large lun's (500Gb) presented from the eva to the server. I was trying to determine if the scsi queue depth was infact too small.

I guess in the absence of a visable metric I'll have to do some benchmarking with differing queue sizes

Cheers
Michael