<?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>ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx</link><description>We've spent a lot of time touting improvements to the .NET Framework in .NET 4 around threading, including core enhancements to the performance of the runtime itself. Sometimes data is more powerful than words, however, and it's useful to be able to see</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#10063709</link><pubDate>Fri, 17 Sep 2010 04:05:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10063709</guid><dc:creator>Pravin</dc:creator><description>&lt;p&gt;Would appreciate if you can share the numbers on .NET 2.0?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10063709" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9999771</link><pubDate>Wed, 21 Apr 2010 05:34:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9999771</guid><dc:creator>Surupa</dc:creator><description>&lt;p&gt;John -&lt;/p&gt;
&lt;p&gt;Most VS 2010 and .NET 4 assemblies are already pre-compiled to native code using NGen today. Are you referring to application binaries built using VS 2010?&lt;/p&gt;
&lt;p&gt;The .NET Framework and Visual Studio assemblies are pre-compiled in the background when the machine is idle. You can run commands such as &amp;quot;ngen.exe ExecuteQueuedItems&amp;quot; to eagerly generate the images (synchronously)instead of waiting for the machine to be idle. You probably don't want to regenerate existing native images, although there are commands to do that as well.&lt;/p&gt;
&lt;p&gt;There isn't however any command that globally opts in all managed code on a given system to be compiled to native code ahead of execution time.&lt;/p&gt;
&lt;p&gt;If you can help me understand what you may be trying to accomplish with NGen, I may be able to provide a more informative answer.&lt;/p&gt;
&lt;p&gt;BTW, some information about NGen can be found here:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/library/6t9t5wcf"&gt;http://msdn.microsoft.com/en-us/library/6t9t5wcf&lt;/a&gt;(VS.80).aspx &amp;amp;&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/magazine/cc163610.aspx"&gt;http://msdn.microsoft.com/en-us/magazine/cc163610.aspx&lt;/a&gt;.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9999771" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9998769</link><pubDate>Mon, 19 Apr 2010 22:37:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9998769</guid><dc:creator>John L. Galt</dc:creator><description>&lt;p&gt;A friend of mine just told me that there is a native command for those running VS2010 that allows them to recompile their assemblies into code native for their architecture.&lt;/p&gt;
&lt;p&gt;He said it had to do with running NGEN with (a) specific argument(s) and it would rebuild all of .NET 4 Assemblies (and he may have mentioned 3.5 as well, cannot remember, and I ended up not saving the chat).&lt;/p&gt;
&lt;p&gt;Furthermore, once this was performed, any program that then installed that used 4 would also undergo an NGEN process recompilation.&lt;/p&gt;
&lt;p&gt;Any ideas on this?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9998769" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9996549</link><pubDate>Thu, 15 Apr 2010 15:02:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9996549</guid><dc:creator>Stephen Toub - MSFT</dc:creator><description>&lt;p&gt;Lasse-&lt;/p&gt;
&lt;p&gt;Good questions. &amp;nbsp;An analogy might help here.&lt;/p&gt;
&lt;p&gt;Consider a team working on a project. &amp;nbsp;When there's just one person, there's basically no overhead, as that person can chug along getting the job done. &amp;nbsp;When another person comes on to the team, now those two people need to start coordinating, which requires some face to face meetings. &amp;nbsp;Now additional folks come on to the project, and you not only have one-on-ones each week (potentially up to N^2 of them), but also weekly team meetings or daily scrum standups, status reports that need to get written, team reviews with management to understand project progress, people randomly stopping by your office to ask you questions, etc. &amp;nbsp;The more people on the project, the more overhead there is, and this overhead potentially grows greater than linearly with the number of team members. &amp;nbsp;If you just catalogued how much time was being spent in this overhead, and ignored the actual work being done by folks, that's similar to what this test is measuring.&lt;/p&gt;
&lt;p&gt;In effect, and continuing with the analogy, .NET 4 hired a good project manager. He ensures there are fewer meetings and that the meetings that are held are kept short. &amp;nbsp;He also pays keen attention to whether the team as a whole is being efficient, and may remove folks from the project if they're actually decreasing the team's productiveness / work throughput rather than increasing it.&lt;/p&gt;
&lt;p&gt;Again, keep in mind that this example was pure overhead. &amp;nbsp;As soon as you start adding other &amp;quot;real&amp;quot; work into the work item bodies, you very quickly see these differences level off. &amp;nbsp;The key then is that these improved efficiencies in .NET 4 allow you to break your problem apart into more smaller pieces than you previously could efficiently, which means you can scale your problem to larger and larger systems.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9996549" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9996486</link><pubDate>Thu, 15 Apr 2010 13:10:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9996486</guid><dc:creator>Andrea Moro</dc:creator><description>&lt;p&gt;I&amp;#224;m looking forward to receive Visual Studio 2010 with the MSDN subscription DVD to enjoy this numbers.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9996486" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9996440</link><pubDate>Thu, 15 Apr 2010 10:59:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9996440</guid><dc:creator>Lasse V. Karlsen</dc:creator><description>&lt;p&gt;Ok, I realize that this measures overhead only, but is there really that much more overhead for a quad-core box? What about a eight-core box then? Are we talking a quadrupling in overhead there as well?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9996440" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9996437</link><pubDate>Thu, 15 Apr 2010 10:56:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9996437</guid><dc:creator>Lasse V. Karlsen</dc:creator><description>&lt;p&gt;Why is the quad-core value for .NET 3.5 nearly 4 times the dual-core value? This seems to tell me that quad-core for a multithreaded .NET 3.5 program is a bad idea, as it will run faster on a dual-core. This is counter-intuitive. What am I interpreting wrong here?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9996437" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9995918</link><pubDate>Wed, 14 Apr 2010 15:26:22 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9995918</guid><dc:creator>Stephen Toub - MSFT</dc:creator><description>&lt;p&gt;Damon, yes, it's always utilized whatever cores the machine has, up to 32 in a 32-bit process and 64 in a 64-bit process.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9995918" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9995876</link><pubDate>Wed, 14 Apr 2010 14:30:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9995876</guid><dc:creator>Damon</dc:creator><description>&lt;p&gt;Question: in previous version of the .NET, is ThreadPool able to distribute the operations between cores?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9995876" width="1" height="1"&gt;</description></item><item><title>re: ThreadPool performance you can see</title><link>http://blogs.msdn.com/b/pfxteam/archive/2010/04/13/9995622.aspx#9995725</link><pubDate>Wed, 14 Apr 2010 10:23:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9995725</guid><dc:creator>Davide</dc:creator><description>&lt;p&gt;Wooow !&lt;/p&gt;
&lt;p&gt;Congratulations and thanks !!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9995725" width="1" height="1"&gt;</description></item></channel></rss>