<?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: Calculating Throughput and Response Time</title>
	<atom:link href="http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/feed/" rel="self" type="application/rss+xml" />
	<link>http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/</link>
	<description>Javid Jamae's thoughts on Java, software, and other random things</description>
	<pubDate>Sat, 04 Jul 2009 08:31:57 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: paul</title>
		<link>http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/comment-page-1/#comment-314</link>
		<dc:creator>paul</dc:creator>
		<pubDate>Wed, 13 May 2009 09:52:50 +0000</pubDate>
		<guid isPermaLink="false">http://javidjamae.com/?p=112#comment-314</guid>
		<description>Im trying to figure out something similiar to this, basically im looking to start counting in the urlrewriting and end at the end of the page rendering. I have a component that sends a UDP packet out in the render method at the end of the body loading,but i need to link in the load time for that request to the start of the url rewriting request. The main problem i can see is any redirects that happen, and being able to break down any blocking operations such as DB access within it.</description>
		<content:encoded><![CDATA[<p>Im trying to figure out something similiar to this, basically im looking to start counting in the urlrewriting and end at the end of the page rendering. I have a component that sends a UDP packet out in the render method at the end of the body loading,but i need to link in the load time for that request to the start of the url rewriting request. The main problem i can see is any redirects that happen, and being able to break down any blocking operations such as DB access within it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Random Thoughts on Software &#187; Blog Archive &#187; Graphing Throughput</title>
		<link>http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/comment-page-1/#comment-301</link>
		<dc:creator>Random Thoughts on Software &#187; Blog Archive &#187; Graphing Throughput</dc:creator>
		<pubDate>Thu, 02 Apr 2009 03:12:20 +0000</pubDate>
		<guid isPermaLink="false">http://javidjamae.com/?p=112#comment-301</guid>
		<description>[...] my post on calculating throughput and response time I discussed how to measure the average throughput and response time for a given amount of time. I [...]</description>
		<content:encoded><![CDATA[<p>[...] my post on calculating throughput and response time I discussed how to measure the average throughput and response time for a given amount of time. I [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Javid Jamae</title>
		<link>http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/comment-page-1/#comment-16</link>
		<dc:creator>Javid Jamae</dc:creator>
		<pubDate>Wed, 15 Feb 2006 17:14:00 +0000</pubDate>
		<guid isPermaLink="false">http://javidjamae.com/?p=112#comment-16</guid>
		<description>Good point!  I need to update my analogy to cover multiple CPUs and non-blocking IO.  Thanks for the feedback.  I'll try to get to this soon.</description>
		<content:encoded><![CDATA[<p>Good point!  I need to update my analogy to cover multiple CPUs and non-blocking IO.  Thanks for the feedback.  I&#8217;ll try to get to this soon.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: naasking</title>
		<link>http://javidjamae.com/2005/06/20/calculating-throughput-and-response-time/comment-page-1/#comment-15</link>
		<dc:creator>naasking</dc:creator>
		<pubDate>Tue, 14 Feb 2006 22:48:00 +0000</pubDate>
		<guid isPermaLink="false">http://javidjamae.com/?p=112#comment-15</guid>
		<description>Just came across this, and thought I'd add:&lt;br/&gt;&lt;br/&gt;&lt;i&gt;With a single lane, our response time for this same load was 11 minutes / checkout, but with multiple lanes, our response time is 2 minutes / checkout, the best that our system can provide. Increasing the number of lanes (or threads) increased our throughput and allowed us to maintain optimum response time.&lt;/i&gt;&lt;br/&gt;&lt;br/&gt;In general, this is definitely NOT true. In this analogy, the number of employees you have is equivalent to the number of CPUs on your machine. Opening more lanes (like 11) can thus only INCREASE response time and decrease throughput since the cashier now has to run between lanes to service them all. Optimal response time is achieved by opening as many lanes as you have employees.&lt;br/&gt;&lt;br/&gt;You essentially say this in the last paragraph, but the way you portray it is backwards: you don't start with x lanes and try to satisfy with  by hiring as many employees; instead, you have y CPUs and your architecture should only run y concurrent threads for optimal ultilization.&lt;br/&gt;&lt;br/&gt;This is predicated on the assumption that the cashier is always actually doing real work while servicing a customer. If she's not, then you require a fully non-blocking asynchronous architecture to maintain optimal utilization (best), or you increase the number of threads (worse).</description>
		<content:encoded><![CDATA[<p>Just came across this, and thought I&#8217;d add:</p>
<p><i>With a single lane, our response time for this same load was 11 minutes / checkout, but with multiple lanes, our response time is 2 minutes / checkout, the best that our system can provide. Increasing the number of lanes (or threads) increased our throughput and allowed us to maintain optimum response time.</i></p>
<p>In general, this is definitely NOT true. In this analogy, the number of employees you have is equivalent to the number of CPUs on your machine. Opening more lanes (like 11) can thus only INCREASE response time and decrease throughput since the cashier now has to run between lanes to service them all. Optimal response time is achieved by opening as many lanes as you have employees.</p>
<p>You essentially say this in the last paragraph, but the way you portray it is backwards: you don&#8217;t start with x lanes and try to satisfy with  by hiring as many employees; instead, you have y CPUs and your architecture should only run y concurrent threads for optimal ultilization.</p>
<p>This is predicated on the assumption that the cashier is always actually doing real work while servicing a customer. If she&#8217;s not, then you require a fully non-blocking asynchronous architecture to maintain optimal utilization (best), or you increase the number of threads (worse).</p>
]]></content:encoded>
	</item>
</channel>
</rss>
