<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Performance Quiz #6 -- Conclusion, Studying the Space</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx</link><description>I thought I would end this series by looking at the space costs of both solutions because it gives a real window into what I do every day and perhaps it's helpful to understand the multidimensional aspects of performance analysis. It's also interesting</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>LogDump:  CLRProfiler Log analysis tool</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx#449253</link><pubDate>Tue, 09 Aug 2005 04:07:35 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449253</guid><dc:creator>Rico Mariani's Performance Tidbits</dc:creator><description>Ever wonder how I produce nice textual allocation summaries like this one?&lt;br&gt;&lt;br&gt;This report shows allocations...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=449253" width="1" height="1"&gt;</description></item><item><title>re: Performance Quiz #6 -- Conclusion, Studying the Space</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx#420699</link><pubDate>Sat, 21 May 2005 09:48:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420699</guid><dc:creator>ricom</dc:creator><description>As far as object overhead goes, compared to C++ it's only 4 bytes more per object for normal objects.  It may be less if you consider overhead imposed by your allocator.&lt;br&gt;&lt;br&gt;This example is particularly bad because the C style strings aren't objects and they have the length stuff in managed code because they are variable length, and they're small strings.&lt;br&gt;&lt;br&gt;But really, it's never been a good idea to allocate lots of small objects.  &lt;br&gt;&lt;br&gt;I could nix that overhead if I wanted to -- keep the char buffers for instance and do basically what you'd do in C.  I chose to eat the tax in this case.&lt;br&gt;&lt;br&gt;Whether or not you get a lot of overhead depends on if you build crazy object graphs or not :)&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420699" width="1" height="1"&gt;</description></item><item><title>re: Performance Quiz #6 -- Conclusion, Studying the Space</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx#420695</link><pubDate>Sat, 21 May 2005 09:01:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420695</guid><dc:creator>Will Dean</dc:creator><description>I expect that you've read this:&lt;br&gt;&lt;br&gt;&lt;a rel="nofollow" target="_new" href="http://www.sysinternals.com/blog/#111363926377819242"&gt;http://www.sysinternals.com/blog/#111363926377819242&lt;/a&gt;&lt;br&gt;&lt;br&gt;In some ways, he could be said to be illustrating your point that doing nothing with the framework makes it look bad.&lt;br&gt;&lt;br&gt;However, as he points out, the badness seems to continue on up as the applications get more complex.  Is this likely to be largely due to the significant per-object overhead?&lt;br&gt;&lt;br&gt;But maybe it doesn't really matter...&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420695" width="1" height="1"&gt;</description></item><item><title>re: Performance Quiz #6 -- Conclusion, Studying the Space</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx#420662</link><pubDate>Sat, 21 May 2005 04:33:43 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420662</guid><dc:creator>ricom</dc:creator><description>No problem, I deleted the extra copy for you.&lt;br&gt;&lt;br&gt;When Raymond returns from vacation he might have some useful insights into why he did things the way that he did them.  I have some guesses but it's total speculation.  Let's see what he says :)&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420662" width="1" height="1"&gt;</description></item><item><title>re: Performance Quiz #6 -- Conclusion, Studying the Space</title><link>http://blogs.msdn.com/b/ricom/archive/2005/05/20/performance-quiz-6-conclusion-studying-the-space.aspx#420653</link><pubDate>Sat, 21 May 2005 03:48:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:420653</guid><dc:creator>Thomas</dc:creator><description>[Note: I accidently posted this same message in the previous blog about this, before I noticed this followup. Sorry for that.]&lt;br&gt;&lt;br&gt;Rico,&lt;br&gt;&lt;br&gt;I'm suprised that Raymond jumps down to the C level so quickly. He went straight to raw string pointers instead of just having a vector pointers to entries. He didnt consider using a boost memory pool to store said entries and then having the vector as an index sorta.&lt;br&gt;&lt;br&gt;All in all while I agree that the CLR is excellent at these memory allocation intensive scenarios, it seems to me that Raymond didn't really harness the power of the STL and boost all that well.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=420653" width="1" height="1"&gt;</description></item></channel></rss>