<?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>Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx</link><description>Previously, I blogged about key trends in software development starting with concurrency/parallelism, and indeed today multi-core systems are everywhere. You can target multi-core systems from many mainstream programming languages, and with Visual Studio</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10213066</link><pubDate>Sun, 18 Sep 2011 06:08:50 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10213066</guid><dc:creator>DanielMoth</dc:creator><description>&lt;p&gt;Hey folks&lt;/p&gt;
&lt;p&gt;- Regarding why we created C++ AMP (i.e. a non-OpenCL approach), Steve Teixeira has addressed that already in his comment, so please follow his link if you haven&amp;#39;t already. Herb Sutter also iterated some of the reasons on his blog here:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://herbsutter.com/2011/06/16/c-amp-keynote/"&gt;herbsutter.com/.../c-amp-keynote&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;- PPL and C++ AMP were created by essentially the same team. They are not separate competing technologies, but two complementary libraries. The C++ AMP library is large enough to have its own header file (amp.h), but the two technologies are in the same namespace and C++ AMP&amp;#39;s parallel_for_each is just an overload to the existing parallel_for_each. Apologies if it seems that we are adding different libraries when in reality we are extending existing ones with new capabilities. We do need different names to distinguish the different targets (multi-core versus accelerators like the GPU).&lt;/p&gt;
&lt;p&gt;- On the Windows-only front, PPL can already be used on non-Windows platforms via Intel&amp;#39;s implementation in TBB. Also note that the C++ AMP spec will be implemented by other compiler vendors too, and we are actively working on that. The announcement of C++ AMP was accompanied by the announcement of our intent to publish it as an open spec.&lt;/p&gt;
&lt;p&gt;For further questions on C++ AMP and PPL, please use our forum:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://social.msdn.microsoft.com/Forums/en/parallelcppnative/threads"&gt;social.msdn.microsoft.com/.../threads&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cheers&lt;/p&gt;
&lt;p&gt;Daniel&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10213066" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10212469</link><pubDate>Fri, 16 Sep 2011 15:29:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10212469</guid><dc:creator>MicrosoftFanBoy</dc:creator><description>&lt;p&gt;Wow - I just have to have this. I don&amp;#39;t want to be compatible. Industry standards are sooooo 1990&amp;#39;s. Standardized APIs are for losers - the only thing that could possibly be better if Microsoft would bring out new APIs even before they release the current ones ;)&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10212469" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10212466</link><pubDate>Fri, 16 Sep 2011 15:25:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10212466</guid><dc:creator>YetAnotherGuyWithaGrudge</dc:creator><description>&lt;p&gt;Obviously Microsoft doesn&amp;#39;t want to support OpenCl because they don&amp;#39;t own it. They&amp;#39;ve been doing this for years so it&amp;#39;s no secret. &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10212466" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10177200</link><pubDate>Tue, 21 Jun 2011 00:02:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10177200</guid><dc:creator>Todd</dc:creator><description>&lt;p&gt;Wow! This is awesome. Way to do it right. Simply extend the existing standards and keeping it lite. If you guys can standardize it, kudos. Using multiple standards/constructs and having to patch them together is for the birds. &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10177200" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10176867</link><pubDate>Mon, 20 Jun 2011 07:44:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10176867</guid><dc:creator>Sarath</dc:creator><description>&lt;p&gt;I&amp;#39;m unable to understand Microsoft&amp;#39;s strategy on Parallel computing. Earlier Visual C++ compiler had support for OpenMP and seems was not really successful. Also the there are different parallel libraries available for .NET world. Why AMP is introduced as a new technology rather an enhancement for PPL? Also I&amp;#39;m a bit confused about the term portability!&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10176867" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10176435</link><pubDate>Fri, 17 Jun 2011 22:06:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10176435</guid><dc:creator>Diego Dagum - MSFT</dc:creator><description>&lt;p&gt;The whole developer story is posted at &lt;a rel="nofollow" target="_new" href="http://blogs.msdn.com/b/vcblog/archive/2011/06/15/introducing-amp.aspx"&gt;blogs.msdn.com/.../introducing-amp.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=10176435" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10176426</link><pubDate>Fri, 17 Jun 2011 21:46:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10176426</guid><dc:creator>Steve Teixeira -- MSFT</dc:creator><description>&lt;p&gt;For __m128i, Ben L, Mad, Jim, and others wondering why we elected to take a non-OpenCL approach, I recommend you check out the video of Herb Sutter&amp;#39;s AMD Fusion keynote, which you can find here: &lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://channel9.msdn.com/Events/AMD-Fusion-Developer-Summit/AMD-Fusion-Developer-Summit-11/KEYNOTE"&gt;channel9.msdn.com/.../KEYNOTE&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can fast forward to about 37 minutes into the video to hear Herb talk about why we chose the approach we did with C++AMP.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
&lt;p&gt;Steve Teixeira&lt;/p&gt;
&lt;p&gt;Director of Program Management&lt;/p&gt;
&lt;p&gt;MS Parallel Computing&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10176426" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10175482</link><pubDate>Thu, 16 Jun 2011 21:41:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10175482</guid><dc:creator>Dana Groff</dc:creator><description>&lt;p&gt;deerchao,&lt;/p&gt;
&lt;p&gt;Routines based on C++ Amp, like PPL, can be accessed through a native DLL which you P/Invoke or &amp;nbsp;you can provive a thin shim layer written in C++/CLR which calls the native DLL. &amp;nbsp;We discussed how to do this for ConcRT, PPL and Agents in this thread: &lt;a rel="nofollow" target="_new" href="http://social.msdn.microsoft.com/Forums/en/parallelcppnative/thread/cf132b9c-3387-430e-a197-7222d3b6e389"&gt;social.msdn.microsoft.com/.../cf132b9c-3387-430e-a197-7222d3b6e389&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;You would use the same methods for C++ Amp code.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10175482" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10175472</link><pubDate>Thu, 16 Jun 2011 21:18:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10175472</guid><dc:creator>Jim</dc:creator><description>&lt;p&gt;Dear Microsoft, &lt;/p&gt;
&lt;p&gt;Everyone, and I do mean everyone is supporting OpenCL. Why do you need to create something new that looks exactly like CUDA and OpenCL. Developers do not want this. We don&amp;#39;t. Have you asked your customers what they want? How about building in OpenCL support from key vendors directly in the OS? If it is about Developers, Developers, Developers, then stop making it about you and having your own format please.&lt;/p&gt;
&lt;p&gt;Sincerely,&lt;/p&gt;
&lt;p&gt;A person with a clue&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10175472" width="1" height="1"&gt;</description></item><item><title>re: Targeting Heterogeneity with C++ AMP and PPL</title><link>http://blogs.msdn.com/b/somasegar/archive/2011/06/15/targeting-heterogeneity-with-c-amp-and-ppl.aspx#10175203</link><pubDate>Thu, 16 Jun 2011 08:30:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10175203</guid><dc:creator>Mad</dc:creator><description>&lt;p&gt;Its sad, Microsoft is doing so much great stuff, but only using DirectX, it will never be an option for 50% of the world.&lt;/p&gt;
&lt;p&gt;Another niche again.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10175203" width="1" height="1"&gt;</description></item></channel></rss>