<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Comment Feed for Channel 9 - VS2010 Parallel Computing Features Tour</title>
	<atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour/RSS"></atom:link>
	<image>
		<url>http://ecn.channel9.msdn.com/o9/previewImages/100/498895_100x75.jpg</url>
		<title>Channel 9 - VS2010 Parallel Computing Features Tour</title>
		<link></link>
	</image>
	<description>
Author: Hi, I am 
Daniel Moth  
&amp;nbsp; 
Introduction:  
In Visual Studio 2010, the Parallel Computing team has delivered APIs and tools for developers wanting to build applications that take advantage of multiple cores. This video provides a glimpse on the managed APIs, debugging windows and profiler support. 
&amp;nbsp; 
For more on the managed APIs, please start on the 
team&#39;s blog. For more on profiler start on that 
team&#39;s blog. For more on&amp;nbsp;Parallel Tasks and Parallel Stacks&amp;nbsp;please start on my blog post on

Parallel Debugging. 
</description>
	<link></link>
	<language>en</language>
	<pubDate>Mon, 20 May 2013 07:16:49 GMT</pubDate>
	<lastBuildDate>Mon, 20 May 2013 07:16:49 GMT</lastBuildDate>
	<generator>Rev9</generator>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Very nice.</p>
<p>One thing though, when matrix multiplication was executed on a small data set, sequential was actually faster than ParallelFor (@20:48). Are there any insights on estimating an overhead&nbsp;of setting up parallel execution machinery, so, application could attempt
 guessing whether to process data set sequentially or in-parallel (assuming that application knows the size of the data set)?</p>
<p>&nbsp;</p>
<p>posted by sokhaty</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915777670000000</link>
		<pubDate>Mon, 19 Oct 2009 19:36:07 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915777670000000</guid>
		<dc:creator>sokhaty</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Witch edition do I need to get access to the parallel debugging?</p>
<p>posted by ianringrose</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915865790000000</link>
		<pubDate>Mon, 19 Oct 2009 22:02:59 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915865790000000</guid>
		<dc:creator>ianringrose</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>We haven't published any insights. Currently, you would have to measure in yoru app and decide at what kind of workload you are getting speedup from parallelism. You could then have a conditional path that is serial for smaller workloads and a parallel path
 for larger workloads.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915971170000000</link>
		<pubDate>Tue, 20 Oct 2009 00:58:37 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915971170000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Parallel Tasks and Parallel Stacks are available in Pro and above. Also click the parallel debugging link above&nbsp;to watch dedicated screencasts to those windows.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>&nbsp;</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915972000000000</link>
		<pubDate>Tue, 20 Oct 2009 01:00:00 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633915972000000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Do the results change significantly if you change the order of execution?</p>
<p>posted by jsinnott</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916469220000000</link>
		<pubDate>Tue, 20 Oct 2009 14:48:42 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916469220000000</guid>
		<dc:creator>jsinnott</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>As the narrator mentions, the Debug.Writeline causes the threads to queue/block on writing to the log/IDE. If this operation is significantly more costly than the work in the task (he has some simple math) then you're running essentially synchronously and
 the parallel code just becomes a burden.</p>
<p>&nbsp;</p>
<p>Also, I always test by running the methods thousands or even millions of times and taking an average. OS noise amongst other things can severely impact a single pass of a method so you can sometimes get a misleading result.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Edit -- the tools far exceed all expectations. I'd like to see in-code-editor warnings about compiler optimisation and reordering pitfalls; for example, if I add an attribute [MultiThreaded] to a method, then (after compilation) the IDE highlights execution/reads/writes
 that has moved from the order&nbsp;it was coded.</p>
<p>posted by LukePuplett</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916472630000000</link>
		<pubDate>Tue, 20 Oct 2009 14:54:23 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916472630000000</guid>
		<dc:creator>LukePuplett</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Not significantly. The point of the video was to show the tools and make you aware of the rich Task API and the ease of us of PFor as well as to show the pitfalls for no perf gains of directly using the ThreadPool. Even though I am microbenchmarking, if
 you run each approach separate&nbsp;to each&nbsp;other, multiple times and with varying workloads, I do not expect the results will vary significantly.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916560140000000</link>
		<pubDate>Tue, 20 Oct 2009 17:20:14 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916560140000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Thanks. Regarding your wish list, those items are not under what we consider debugging and performance tools. We think of those as Correctness tools (or some say Analysis tools and other say Safety tools) - regardless, they are very important too and things
 we are thinking about for future (post-VS2010) releases.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916561490000000</link>
		<pubDate>Tue, 20 Oct 2009 17:22:29 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916561490000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Luke, for the sake of correctness, Debug.Writeline call was added to the MulTask() method, which&nbsp;was executed after the sequential and PFor multiplication. So, PFor loop ran without any&nbsp;blocking on screen output, and it was slower than sequential presumably
 because of all the extra work associated with priming up parallel execution environment.</p>
<p>If 90% of the input for my app on any given day happens to be small,&nbsp;it's better to&nbsp;process those 90% sequentially and use parallel execution only when appropriate, but for that&nbsp;it would be&nbsp;nice to know, where (approximately) is that cutting point.</p>
<p>I can run tests and collect some stats&nbsp;on what overhead of firing up parallel execution is, but assuming that this work might have been already done while developing the parallel framework, it would be&nbsp;preferrable for me to look at the stats collected by
 the PF development team than spend time and efforts myself.</p>
<p>&nbsp;</p>
<p>Cheers,</p>
<p>Seva.&nbsp;</p>
<p>posted by sokhaty</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916643290000000</link>
		<pubDate>Tue, 20 Oct 2009 19:38:49 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916643290000000</guid>
		<dc:creator>sokhaty</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>You mention that Parallel.For utilizes tasks, but always has better performance than tasks. How is this possible?</p>
<p>posted by Dark_Halmut</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916896950000000</link>
		<pubDate>Wed, 21 Oct 2009 02:41:35 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633916896950000000</guid>
		<dc:creator>Dark_Halmut</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>I can't remember my exact wording but the precise statement is that &quot;for this benchmark, on my runs the PFor beats my naive tasks implementation &lt;insert more disclaimers here&gt;&quot;.
</p>
<p>&nbsp;</p>
<p>To actually answer your question: PFor uses tasks in an intelligent manner (partitioning the range amongst a much smaller number of tasks) instead of using one task per iteration. So, of course you could code with tasks yourself an equally (or even more
 performant version), but look at the simplicity of the PFor API.</p>
<p>&nbsp;</p>
<p>TIP: To get an insight into the PFor implementation place a breakpoint in the body of the for loop and look at the Parallel Tasks window.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633917018460000000</link>
		<pubDate>Wed, 21 Oct 2009 06:04:06 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633917018460000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Seva. You are correct, my apologies. Although the problem with using PF dev team stats is that while they may know that cranking up the other threads takes, say, 2,000 cycles per thread (I've really no idea - could be 20,000), you'd still have to test your
 task/code to see how much work it is in comparison.</p>
<p>&nbsp;</p>
<p>Although if the profiler could try P.For and normal For and suggest when you're actually degrading performance, that'd be excellent. That said, I did think that P.For uses some kind of ramping up technology so it ran synchronously for small loads - and thus,
 what we saw in the video shouldn't happen. P.For is so easy to use but so easy to use in the wrong place.</p>
<p>&nbsp;</p>
<p>My problem is that most of the code I write I think is too small to be parallelised. Like arrays of 12 items. By the time I've finished I've got a huge chain of little bits of work adding up to a large amount of work, so&nbsp;then I start to look for logic that
 can run independently of each other and kick off some branch of execution on another thread and re-join/wait further down. The problem being that in the future I won't be able to find enough simultaneous work to spread across all cores!</p>
<p>&nbsp;</p>
<p>Daniel - thanks, that'd be cool.</p>
<p>posted by LukePuplett</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633917066570000000</link>
		<pubDate>Wed, 21 Oct 2009 07:24:17 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633917066570000000</guid>
		<dc:creator>LukePuplett</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Which edition exposes those amazing profiling capabilities?</p>
<p>posted by RobertAMcCarter</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633925117040000000</link>
		<pubDate>Fri, 30 Oct 2009 15:01:44 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633925117040000000</guid>
		<dc:creator>RobertAMcCarter</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Glad you like them.</p>
<p>&nbsp;</p>
<p>1. The APIs ship as part of the .NET 4 framework (and the equivalent native ones as part of VC&#43;&#43; 10), so available in all VS editions.</p>
<p>2. Debugger Windows in VS Pro and higher.</p>
<p>3. Profiler in VS Premium and higher. It also requires Vista and higher due to dependency on ETW events.</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633927700450000000</link>
		<pubDate>Mon, 02 Nov 2009 14:47:25 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633927700450000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Hi,</p>
<p>&nbsp;</p>
<p>juts of curiosity: What is that vercy nice font that you are using in the VS code editor ?</p>
<p>posted by objectref</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633941453650000000</link>
		<pubDate>Wed, 18 Nov 2009 12:49:25 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633941453650000000</guid>
		<dc:creator>objectref</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Hi objectref</p>
<p>&nbsp;</p>
<p>I don't think I changed the default (Consolas). Maybe the resolution is making it look nicer than usual...</p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633954937810000000</link>
		<pubDate>Fri, 04 Dec 2009 03:23:01 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633954937810000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Wonderful video.&nbsp; Thanks much.&nbsp; Where can I find the source code for the example project?</p>
<p>posted by Kevin Manbeck</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633990063310000000</link>
		<pubDate>Wed, 13 Jan 2010 19:05:31 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c633990063310000000</guid>
		<dc:creator>Kevin Manbeck</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[
<p>Hi Kevin</p>
<p>&nbsp;</p>
<p>Thanks, I uploaded the *demo* code&nbsp;to on my blog:</p>
<p><a href="http://www.danielmoth.com/Blog/2010/02/code-for-parallelism-features-tour.html">http://www.danielmoth.com/Blog/2010/02/code-for-parallelism-features-tour.html</a></p>
<p>&nbsp;</p>
<p>Cheers</p>
<p>Daniel</p>
<p>posted by Daniel Moth</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634010372460000000</link>
		<pubDate>Sat, 06 Feb 2010 07:14:06 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634010372460000000</guid>
		<dc:creator>Daniel Moth</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[viven del pueblo y traicinona al pueblo<br />&nbsp;<br />no tiene cara para salir a la calle<p>posted by jm</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634213063450000000</link>
		<pubDate>Tue, 28 Sep 2010 21:32:25 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634213063450000000</guid>
		<dc:creator>jm</dc:creator>
	</item>
	<item>
		<title>Re: VS2010 Parallel Computing Features Tour</title>
		<description>
			<![CDATA[Great demonstration. It makes me feel really weird to see a variable named "_".<p>posted by Phillip</p>]]>
		</description>
		<link>http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634242548410000000</link>
		<pubDate>Tue, 02 Nov 2010 00:34:01 GMT</pubDate>
		<guid isPermaLink="true">http://channel9.msdn.com/Blogs/DanielMoth/VS2010-Parallel-Computing-Features-Tour#c634242548410000000</guid>
		<dc:creator>Phillip</dc:creator>
	</item>
</channel>
</rss>