<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Queuedepth, and what&#8217;s next?</title>
	<atom:link href="http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/</link>
	<description>Building blocks for virtualization...</description>
	<lastBuildDate>Fri, 19 Mar 2010 14:22:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>By: Jorink.nl &#187; Disk.UseLunReset and/or Disk.UseDeviceReset</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-6849</link>
		<dc:creator>Jorink.nl &#187; Disk.UseLunReset and/or Disk.UseDeviceReset</dc:creator>
		<pubDate>Mon, 01 Mar 2010 15:29:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-6849</guid>
		<description>[...] Source : http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/ [...]</description>
		<content:encoded><![CDATA[<p>[...] Source : <a href="http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/" rel="nofollow">http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: So you bought an EqualLogic SAN, now what&#8230; part one &#171; Michael Ellerbeck</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-5268</link>
		<dc:creator>So you bought an EqualLogic SAN, now what&#8230; part one &#171; Michael Ellerbeck</dc:creator>
		<pubDate>Mon, 23 Nov 2009 16:07:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-5268</guid>
		<description>[...] So, did you read it? I mean go READ IT. Trust me! What I gleaned from those guides is this: (copied from http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/ [...]</description>
		<content:encoded><![CDATA[<p>[...] So, did you read it? I mean go READ IT. Trust me! What I gleaned from those guides is this: (copied from <a href="http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/" rel="nofollow">http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Welcome to vSphere-land! &#187; Storage Links</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-3397</link>
		<dc:creator>Welcome to vSphere-land! &#187; Storage Links</dc:creator>
		<pubDate>Fri, 08 May 2009 03:33:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-3397</guid>
		<description>[...] in ESX Server Round Robin Load Balancing Obtaining LUN pathing information for ESX Server 3 Queue Depth How to check if a LUN is locked by a host Scripting Queue Depth in a QLogic/EMC environment [...]</description>
		<content:encoded><![CDATA[<p>[...] in ESX Server Round Robin Load Balancing Obtaining LUN pathing information for ESX Server 3 Queue Depth How to check if a LUN is locked by a host Scripting Queue Depth in a QLogic/EMC environment [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duncan Epping</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-738</link>
		<dc:creator>Duncan Epping</dc:creator>
		<pubDate>Fri, 25 Jul 2008 20:17:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-738</guid>
		<description>Thanks for the excellent reply nick!! this is valuable info,</description>
		<content:encoded><![CDATA[<p>Thanks for the excellent reply nick!! this is valuable info,</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nick Triantos</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-737</link>
		<dc:creator>Nick Triantos</dc:creator>
		<pubDate>Fri, 25 Jul 2008 20:11:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-737</guid>
		<description>There&#039;s much more that goes into setting the Queue Depth than making the assumption that a queue depth of X value on the host will be sufficient and will drive high I/O. 

The fan-in ratio of host ports to a single Target port needs to be considered AND
The Queue depth on the Array target port side AND given that A/A multipathing is not officially supported, the Active path for each LUN should be balanced across all front end target ports.

If I have a hypotherical Target queue depth per port of 512 and thru that port I expose 4 LUNs (Datastores) to a 4 node ESX cluster with a host queue depth value of 64 on each. Each Host has an Active path thru the Target Port. 

Then I can, potentially, end up with  4 x 4 x 64 = 1024 outstanding IOs at which point the Target port will issue a QFULL condition simply because it will be saturated. 

The way FC drivers deal with such conditions is that they will throttle I/O significantly so the target queues have time to clear and thenthe initiator will gradually increase I/O again. The end results is significant latency and for some Operating systems (i.e AIX) this condition will result in an I/O error if 3 consecutive QFULL conditions occur for the same request. 

I&#039;ve written an article on Dynamic Queue Depth management and what NetApp has done to control, monitor and dynamically allocate and change queue slot allocations without having to touch the host queue depth value beyond the initial setup. 

http://partners.netapp.com/go/techontap/matl/fc-sans.html

 cheers</description>
		<content:encoded><![CDATA[<p>There&#8217;s much more that goes into setting the Queue Depth than making the assumption that a queue depth of X value on the host will be sufficient and will drive high I/O. </p>
<p>The fan-in ratio of host ports to a single Target port needs to be considered AND<br />
The Queue depth on the Array target port side AND given that A/A multipathing is not officially supported, the Active path for each LUN should be balanced across all front end target ports.</p>
<p>If I have a hypotherical Target queue depth per port of 512 and thru that port I expose 4 LUNs (Datastores) to a 4 node ESX cluster with a host queue depth value of 64 on each. Each Host has an Active path thru the Target Port. </p>
<p>Then I can, potentially, end up with  4 x 4 x 64 = 1024 outstanding IOs at which point the Target port will issue a QFULL condition simply because it will be saturated. </p>
<p>The way FC drivers deal with such conditions is that they will throttle I/O significantly so the target queues have time to clear and thenthe initiator will gradually increase I/O again. The end results is significant latency and for some Operating systems (i.e AIX) this condition will result in an I/O error if 3 consecutive QFULL conditions occur for the same request. </p>
<p>I&#8217;ve written an article on Dynamic Queue Depth management and what NetApp has done to control, monitor and dynamically allocate and change queue slot allocations without having to touch the host queue depth value beyond the initial setup. </p>
<p><a href="http://partners.netapp.com/go/techontap/matl/fc-sans.html" rel="nofollow">http://partners.netapp.com/go/techontap/matl/fc-sans.html</a></p>
<p> cheers</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-734</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Wed, 23 Jul 2008 18:52:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-734</guid>
		<description>Thanks Duncan.  Much appreciated.</description>
		<content:encoded><![CDATA[<p>Thanks Duncan.  Much appreciated.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duncan</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-733</link>
		<dc:creator>Duncan</dc:creator>
		<pubDate>Wed, 23 Jul 2008 18:40:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-733</guid>
		<description>yes you can, but i would recommend doing it asap.</description>
		<content:encoded><![CDATA[<p>yes you can, but i would recommend doing it asap.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-732</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Wed, 23 Jul 2008 17:56:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-732</guid>
		<description>I can run it and reboot at a later date correct?</description>
		<content:encoded><![CDATA[<p>I can run it and reboot at a later date correct?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duncan</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-731</link>
		<dc:creator>Duncan</dc:creator>
		<pubDate>Wed, 23 Jul 2008 17:55:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-731</guid>
		<description>it sets up the information required for booting which includes this parameter.</description>
		<content:encoded><![CDATA[<p>it sets up the information required for booting which includes this parameter.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://www.yellow-bricks.com/2008/07/21/queuedepth-and-whats-next/comment-page-1/#comment-729</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Wed, 23 Jul 2008 15:36:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.yellow-bricks.com/?p=219#comment-729</guid>
		<description>What does that command do?</description>
		<content:encoded><![CDATA[<p>What does that command do?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
