<?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>Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx</link><description>I received several requests to write a little something on the using managed code in the cold startup case – by which I mean immediately, or at least soon, after a reboot. I guess before I get into that I should give my usual disclaimer that I’m not going</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244252</link><pubDate>Tue, 19 Oct 2004 01:20:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244252</guid><dc:creator>Matt</dc:creator><description>Wouldn't registry access be fairly low cost (at least in comparison to config files) given it is widely used by the OS and other processes? Surely a substantial part of the registry would be cached by the time any managed code is started?</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244258</link><pubDate>Tue, 19 Oct 2004 01:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244258</guid><dc:creator>Rico Mariani</dc:creator><description>Maybe, maybe not.  We are talking about cold startup after all so presumably not too much has run.  And the registry is not created equal -- the portions you need may or may not be the same as what the operating system already has accessed.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244421</link><pubDate>Tue, 19 Oct 2004 10:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244421</guid><dc:creator>Saurabh Jain</dc:creator><description>Does the sharing on ngen'd images happen across concurrent login sessions? Consider the case where a school has a server on which various students logon during a lab. Does it make sense to ngen everything to get maximum sharing and reduce memory use?</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244608</link><pubDate>Tue, 19 Oct 2004 16:57:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244608</guid><dc:creator>Rico Mariani</dc:creator><description>The native image cache is machine-wide so yes multiple users can share pages from the same images.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244771</link><pubDate>Tue, 19 Oct 2004 21:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244771</guid><dc:creator>Rico Mariani</dc:creator><description>Updated the main body with some data from a colleague.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#244968</link><pubDate>Wed, 20 Oct 2004 09:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:244968</guid><dc:creator>Saurabh Jain</dc:creator><description>Thanks Rico. The follow up question is, does the sharing of ngen images happen if the same dll (strongly signed) is installed at two different locations.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#245354</link><pubDate>Wed, 20 Oct 2004 21:37:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:245354</guid><dc:creator>Frank Hileman</dc:creator><description>The data you give is not encouraging. How big were these dlls being loaded? It is proportional to size, generally speaking? What is the rough delta for a 350K assembly?&lt;br&gt;&lt;br&gt;Thanks.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#245369</link><pubDate>Wed, 20 Oct 2004 22:09:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:245369</guid><dc:creator>Rico Mariani</dc:creator><description>Hmmm... I was going to say &amp;quot;no&amp;quot; off hand but then it hit me that it's more subtle than that.  If the strong name is the same then you'd expect the native image to land in the same place in the native image cache -- it wouldn't matter which flavor of IL you tried to load, both would use the same native bits so there would be sharing.  So I double checked that last assumption and sure enough that is in fact the case -- the same native bits are used even if you get the (same) IL from different locations.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#245371</link><pubDate>Wed, 20 Oct 2004 22:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:245371</guid><dc:creator>Rico Mariani</dc:creator><description>Frank:  The cost isn't going to be proportional to size necessarily although size will be a leading indicator.  It's a function of how much of the DLL you touch at startup and how you touch it.  If you dance all over the place looking at a function here and a function there then you will drag in a lot of pages, most of which will be wasted because you used only a small fraction.  If on the other hand you are careful about which methods you touch during startup then you will find that you can use a much smaller slice -- it's more about density than it is about size.&lt;br&gt;&lt;br&gt;This isn't really a new problem, cold startup has been touchy like this since as long as I've been programming.  We used to do swap tuning of linker overlays in the bad old days, it was really the exact same issue.</description></item><item><title>NGEN and Cold PC Starts</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#245672</link><pubDate>Thu, 21 Oct 2004 17:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:245672</guid><dc:creator>Mike Taulty's Weblog</dc:creator><description /></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#246489</link><pubDate>Fri, 22 Oct 2004 20:24:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:246489</guid><dc:creator>Frank Hileman</dc:creator><description>Thanks. I asked because the numbers you give are so large -- I did not understand how it could be so slow, unless the dlls are huge. 350K is the size of a dll we produce, which is dependent only on System, System.Windows.Forms, and System.Drawing. I am not sure of the cold start, but the warm start seems instantaneous with our test apps. We cannot test without the ngen on the MS libs.</description></item><item><title>re: Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#248355</link><pubDate>Wed, 27 Oct 2004 05:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:248355</guid><dc:creator>Junfeng Zhang</dc:creator><description>Saurabh said:&lt;br&gt;&lt;br&gt;&amp;quot;The follow up question is, does the sharing of ngen images happen if the same dll (strongly signed) is installed at two different locations.&amp;quot;&lt;br&gt;&lt;br&gt;A better question will be: Why do you want to put the same dll in different locations? Why don't you put it in GAC?&lt;br&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#249539</link><pubDate>Fri, 29 Oct 2004 15:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:249539</guid><dc:creator>dotRob</dc:creator><description /></item><item><title>Cold Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#249544</link><pubDate>Fri, 29 Oct 2004 15:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:249544</guid><dc:creator>dotRob</dc:creator><description /></item><item><title>NGEN and Startup Performance</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#250973</link><pubDate>Tue, 02 Nov 2004 10:44:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:250973</guid><dc:creator>Junfeng Zhang</dc:creator><description /></item><item><title>Post #2</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#332822</link><pubDate>Mon, 27 Dec 2004 21:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:332822</guid><dc:creator>VIOLATING THE CODE</dc:creator><description /></item><item><title>Post #2</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#332826</link><pubDate>Mon, 27 Dec 2004 21:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:332826</guid><dc:creator>VIOLATING THE CODE</dc:creator><description /></item><item><title>Post #2</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#333136</link><pubDate>Tue, 28 Dec 2004 08:48:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:333136</guid><dc:creator>VIOLATING THE CODE</dc:creator><description /></item><item><title>RSSBandit Performance Problems</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#449398</link><pubDate>Tue, 09 Aug 2005 14:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449398</guid><dc:creator>notgartner.com: Mitch Denny's Blog</dc:creator><description /></item><item><title>RSSBandit Performance Problems</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#449399</link><pubDate>Tue, 09 Aug 2005 14:43:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449399</guid><dc:creator>notgartner.com: Mitch Denny's Blog</dc:creator><description /></item><item><title>Programming Using .NET Can Be Such a Pain Sometimes...</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#451156</link><pubDate>Sat, 13 Aug 2005 06:52:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:451156</guid><dc:creator>Dare Obasanjo aka Carnage4Life</dc:creator><description /></item><item><title>Project anti-pattern: Many projects in a Visual Studio Solution File</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#8736158</link><pubDate>Wed, 16 Jul 2008 04:18:05 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8736158</guid><dc:creator>Chad Myers' Blog</dc:creator><description>&lt;p&gt;I&amp;amp;#39;ve been hearing from several colleagues about how their Visual Studio solution files have many&lt;/p&gt;
</description></item><item><title>First vn.net app to launch takes ages | keyongtech</title><link>http://blogs.msdn.com/ricom/archive/2004/10/18/244242.aspx#9364290</link><pubDate>Thu, 22 Jan 2009 10:34:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9364290</guid><dc:creator>First vn.net app to launch takes ages | keyongtech</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.keyongtech.com/478621-first-vn-net-app-to"&gt;http://www.keyongtech.com/478621-first-vn-net-app-to&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>