<?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 for Caught By Java</title>
	<atom:link href="http://www.caughtbyjava.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.caughtbyjava.com</link>
	<description>Just another Technology Blog</description>
	<lastBuildDate>Sun, 20 Jun 2010 10:35:17 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on New findings for Hashtable vs Synchronized Map vs ConcurrentHashMap by Asim</title>
		<link>http://www.caughtbyjava.com/new-findings-for-hashtable-vs-synchronized-map-vs-concurrenthashmap-2/comment-page-1/#comment-902</link>
		<dc:creator>Asim</dc:creator>
		<pubDate>Sun, 20 Jun 2010 10:35:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=186#comment-902</guid>
		<description>Thanks Peter for your suggestions.<br /><br />I will try again keeping your suggestions in mind and post my findings. I know people would have done that already but I dont want to keep this post incomplete.</description>
		<content:encoded><![CDATA[Thanks Peter for your suggestions.<br /><br />I will try again keeping your suggestions in mind and post my findings. I know people would have done that already but I dont want to keep this post incomplete.]]></content:encoded>
	</item>
	<item>
		<title>Comment on New findings for Hashtable vs Synchronized Map vs ConcurrentHashMap by Peter Lawrey</title>
		<link>http://www.caughtbyjava.com/new-findings-for-hashtable-vs-synchronized-map-vs-concurrenthashmap-2/comment-page-1/#comment-901</link>
		<dc:creator>Peter Lawrey</dc:creator>
		<pubDate>Sun, 20 Jun 2010 07:15:03 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=186#comment-901</guid>
		<description>Also, you should compare your timings with just using a single thread. If you cannot do more work with multiple threads than a single thread, you don&#039;t have a good example for multi-threaded code. (In which case you wouldn&#039;t use multiple threads)</description>
		<content:encoded><![CDATA[Also, you should compare your timings with just using a single thread. If you cannot do more work with multiple threads than a single thread, you don&#8217;t have a good example for multi-threaded code. (In which case you wouldn&#8217;t use multiple threads)]]></content:encoded>
	</item>
	<item>
		<title>Comment on New findings for Hashtable vs Synchronized Map vs ConcurrentHashMap by Peter Lawrey</title>
		<link>http://www.caughtbyjava.com/new-findings-for-hashtable-vs-synchronized-map-vs-concurrenthashmap-2/comment-page-1/#comment-900</link>
		<dc:creator>Peter Lawrey</dc:creator>
		<pubDate>Sun, 20 Jun 2010 06:44:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=186#comment-900</guid>
		<description>First impression, if you are going to give a benchmark to someone, I suggest you use nested classes, this way there is only one file to deal with. ;)<br /><br />The key problem you have here is that your testing framwork is much more heavy weight than the thing you are testing.  This means your results are more of an indication as to how your framework is perfoming than the thing you are testing.<br /><br />Perhaps the most important lessons here are that&lt;br /&gt;- when optimising, start with the most expensive operation, don&#039;t guess, use a profiler and your judgement after that.&lt;br /&gt;- whatever you do with the Map is far more likely to be important the cost of the Map itself, for any real application.<br /><br />If you were to optimise it, I would suggest&lt;br /&gt;- using a thread pool which is the size of the number of cores you have.&lt;br /&gt;- make each task in the thread pool perform a singiciant piece of work, one put() is likely to be trivial compared to the cost of even adding a task to a thread pool. Certainly trivial compared with starting a new thread. Try 1000 puts or more.&lt;br /&gt;- Use System.nanoTime for more accurate benchmarks.  Using Date is not as expensive as Calendar but its one of the most expensive and least accurate ways to benchmark.&lt;br /&gt;- Don&#039;t use new objects for keys or values.  I would pre-generate them all and only time the start and the end (with nanoTime), not the timing for each element as you have done.  Taking the System.currentTimeMillis() (which Date does) can be more expensive than put().</description>
		<content:encoded><![CDATA[First impression, if you are going to give a benchmark to someone, I suggest you use nested classes, this way there is only one file to deal with. <img src='http://www.caughtbyjava.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> <br /><br />The key problem you have here is that your testing framwork is much more heavy weight than the thing you are testing.  This means your results are more of an indication as to how your framework is perfoming than the thing you are testing.<br /><br />Perhaps the most important lessons here are that<br />- when optimising, start with the most expensive operation, don&#8217;t guess, use a profiler and your judgement after that.<br />- whatever you do with the Map is far more likely to be important the cost of the Map itself, for any real application.<br /><br />If you were to optimise it, I would suggest<br />- using a thread pool which is the size of the number of cores you have.<br />- make each task in the thread pool perform a singiciant piece of work, one put() is likely to be trivial compared to the cost of even adding a task to a thread pool. Certainly trivial compared with starting a new thread. Try 1000 puts or more.<br />- Use System.nanoTime for more accurate benchmarks.  Using Date is not as expensive as Calendar but its one of the most expensive and least accurate ways to benchmark.<br />- Don&#8217;t use new objects for keys or values.  I would pre-generate them all and only time the start and the end (with nanoTime), not the timing for each element as you have done.  Taking the System.currentTimeMillis() (which Date does) can be more expensive than put().]]></content:encoded>
	</item>
	<item>
		<title>Comment on IntelliJ IDEA 9 Released by Abraham Robinson</title>
		<link>http://www.caughtbyjava.com/intellij-idea-9-released/comment-page-1/#comment-896</link>
		<dc:creator>Abraham Robinson</dc:creator>
		<pubDate>Wed, 16 Jun 2010 05:30:05 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=175#comment-896</guid>
		<description>Really interesting reading, great job man ! Feel free to comment on my blog, I was solving similar problem.</description>
		<content:encoded><![CDATA[Really interesting reading, great job man ! Feel free to comment on my blog, I was solving similar problem.]]></content:encoded>
	</item>
	<item>
		<title>Comment on Search Pagination Design using Hibernate by F. James Sensenbrenner</title>
		<link>http://www.caughtbyjava.com/search-pagination-design-using-hibernate/comment-page-1/#comment-419</link>
		<dc:creator>F. James Sensenbrenner</dc:creator>
		<pubDate>Sat, 02 Jan 2010 16:48:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=147#comment-419</guid>
		<description>I really like this blog. Please continue the great work. Regards!!!</description>
		<content:encoded><![CDATA[I really like this blog. Please continue the great work. Regards!!!]]></content:encoded>
	</item>
	<item>
		<title>Comment on IntelliJ IDEA 9 Released by Robert Nicholson</title>
		<link>http://www.caughtbyjava.com/intellij-idea-9-released/comment-page-1/#comment-339</link>
		<dc:creator>Robert Nicholson</dc:creator>
		<pubDate>Mon, 28 Dec 2009 10:40:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=175#comment-339</guid>
		<description>Be careful with the new behavior they have when u remove a module from your project because it wants to delete all it&#039;s code and remove it from CVS</description>
		<content:encoded><![CDATA[Be careful with the new behavior they have when u remove a module from your project because it wants to delete all it&#8217;s code and remove it from CVS]]></content:encoded>
	</item>
	<item>
		<title>Comment on Search Pagination Design using Hibernate by Ignacio Coloma</title>
		<link>http://www.caughtbyjava.com/search-pagination-design-using-hibernate/comment-page-1/#comment-322</link>
		<dc:creator>Ignacio Coloma</dc:creator>
		<pubDate>Tue, 22 Dec 2009 16:03:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=147#comment-322</guid>
		<description>Deeper insight about your first approach can be obtained here:<br /><br />http://code.google.com/appengine/articles/paging.html<br /><br />It is slightly outdated, but the main ideas still can be applied to your environment. This is more or less what is done by Twitter to solve pagination on their Ajax API. <br /><br />About the third one, there are &quot;endless page&quot; widgets everywhere.</description>
		<content:encoded><![CDATA[Deeper insight about your first approach can be obtained here:<br /><br />http://code.google.com/appengine/articles/paging.html<br /><br />It is slightly outdated, but the main ideas still can be applied to your environment. This is more or less what is done by Twitter to solve pagination on their Ajax API. <br /><br />About the third one, there are &#8220;endless page&#8221; widgets everywhere.]]></content:encoded>
	</item>
	<item>
		<title>Comment on Knowing Cache and Java Cache System by Kalpesh</title>
		<link>http://www.caughtbyjava.com/knowing-cache-and-java-cache-system/comment-page-1/#comment-98</link>
		<dc:creator>Kalpesh</dc:creator>
		<pubDate>Sun, 04 Oct 2009 16:49:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=112#comment-98</guid>
		<description>Good article. &lt;br /&gt;Need to dig in more so that I can implement in my application</description>
		<content:encoded><![CDATA[Good article. <br />Need to dig in more so that I can implement in my application]]></content:encoded>
	</item>
	<item>
		<title>Comment on Java Implementation of Strategy Design Pattern by Romase</title>
		<link>http://www.caughtbyjava.com/java-implementation-of-strategy-design-pattern/comment-page-1/#comment-97</link>
		<dc:creator>Romase</dc:creator>
		<pubDate>Sun, 04 Oct 2009 03:03:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=131#comment-97</guid>
		<description>site best</description>
		<content:encoded><![CDATA[site best]]></content:encoded>
	</item>
	<item>
		<title>Comment on Java Implementation of Strategy Design Pattern by Globals</title>
		<link>http://www.caughtbyjava.com/java-implementation-of-strategy-design-pattern/comment-page-1/#comment-96</link>
		<dc:creator>Globals</dc:creator>
		<pubDate>Sat, 03 Oct 2009 04:41:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.caughtbyjava.com/?p=131#comment-96</guid>
		<description>all good things</description>
		<content:encoded><![CDATA[all good things]]></content:encoded>
	</item>
</channel>
</rss>
