<?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>GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx</link><description>Microsoft recently released a preview of the Accelerator V2 GPU and x64 multicore programming system on Microsoft Connect. This system provides a civilized level of abstraction for writing data-parallel programs that execute on GPUs and multicore processors</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#10381309</link><pubDate>Sat, 29 Dec 2012 17:39:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10381309</guid><dc:creator>Accelerator v2 vs TPL</dc:creator><description>&lt;p&gt;It seems that Accelerator v2 is superior to Task Programming Library (&lt;a rel="nofollow" target="_new" href="http://msdn.microsoft.com/en-us/library/dd460717.aspx"&gt;msdn.microsoft.com/.../dd460717.aspx&lt;/a&gt;). &amp;nbsp;Do you agree? &amp;nbsp;Does TPL have any advantages over Accelerator v2?&lt;/p&gt;
&lt;p&gt;It seems that Accelerator v2 should eventually team up or somehow make its way into standard .NET somehow so that vectorization and making use of SIMD/SSE and multiple GPUs..&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10381309" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#10134382</link><pubDate>Sat, 26 Feb 2011 05:43:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10134382</guid><dc:creator>Joy </dc:creator><description>&lt;p&gt;You need the managed assembly - Accelerator v2/bin/Managed&lt;/p&gt;
&lt;p&gt;VisualStudio\accelerator-intro\CalculatingPI\Microsoft.Accelerator.dll&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10134382" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#10069091</link><pubDate>Wed, 29 Sep 2010 05:26:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10069091</guid><dc:creator>Joy Chakraborty</dc:creator><description>&lt;p&gt;I can&amp;#39;t add a reference to Accelerator.dll in VS 2010 F# project. Any idea why? &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10069091" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9940040</link><pubDate>Tue, 22 Dec 2009 13:44:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9940040</guid><dc:creator>Satnam_Singh</dc:creator><description>&lt;p&gt;Alexnader,&lt;/p&gt;
&lt;p&gt;I think you may have missed out the final 0? The main function needs to return an int value. That would expalin the error message.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Satnam&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9940040" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9940001</link><pubDate>Tue, 22 Dec 2009 10:39:29 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9940001</guid><dc:creator>Satnam_Singh</dc:creator><description>&lt;p&gt;Alexander,&lt;/p&gt;
&lt;p&gt;I am very sorry for the problems that you are encoutering and I've had a similar report from one other person. I checked again and the code at the top of this post works for me using Visual Studio 2010 Beta 2 and Visual Studio 2008 with F# 1.9.7.8. Please can you email me at satnams@microsoft.com to let me know exactly what version of Visual Studio and F# you are using and I shall do my best to try and get to the bottom of this issue. Once again, profuse apologies for the problems you are encountering.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;/p&gt;
&lt;p&gt;Satnam&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9940001" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9939916</link><pubDate>Tue, 22 Dec 2009 04:20:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9939916</guid><dc:creator>Alexander Solonsky</dc:creator><description>&lt;p&gt;the code just doesn't work out of the box.&lt;/p&gt;
&lt;p&gt;on x86 environment, winXP&lt;/p&gt;
&lt;p&gt;in line&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; printfn &amp;quot;DX9 &amp;nbsp; --&amp;gt; \r\n%A&amp;quot; resDX&lt;/p&gt;
&lt;p&gt;there is an error&lt;/p&gt;
&lt;p&gt; Error	1	Type mismatch. Expecting a &amp;nbsp; &amp;nbsp; 'a -&amp;gt; int &amp;nbsp; &amp;nbsp; but given a &amp;nbsp; &amp;nbsp; 'a -&amp;gt; unit &amp;nbsp; &amp;nbsp; The type 'int' does not match the type 'unit'	C:\Documents and Settings\Administrator\My Documents\Visual Studio 2010\Projects\f1\f1\Program.fs	28&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9939916" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9938257</link><pubDate>Thu, 17 Dec 2009 16:47:12 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9938257</guid><dc:creator>Satnam_Singh</dc:creator><description>&lt;p&gt;Hello Jurgen.&lt;/p&gt;
&lt;p&gt;You should be able to omit the FLoatParallelArray type declaration and write:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;let rec expr (i : int) &amp;nbsp;=&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; let e = ParallelArrays.Shift(inputArray, [| -i |]) * kernel.[i] &lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; if i = 0 then e else e + expr (i-1)&lt;/p&gt;
&lt;p&gt;In this case you need to give the type of i because there are several possible overloads for ParallelArrays.Shift(inputArray, [| -i |]) and the algorithm used for type inference can’t pick a specific one automatically. &lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9938257" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9938199</link><pubDate>Thu, 17 Dec 2009 15:06:07 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9938199</guid><dc:creator>Jurgen</dc:creator><description>&lt;p&gt;Hi Satnam,&lt;/p&gt;
&lt;p&gt;Very cool blog post. I was playing around with the code sample in VS 2010 but ran into some type inference issues. For the 1D sample on the line&lt;/p&gt;
&lt;p&gt;kernel.[i] * ParallelArrays.Shift(inputArray, -i )&lt;/p&gt;
&lt;p&gt;F# didn't seem to recognize the -i argument properly ([| -i |] does work) and also it didn't recognize the multiplication operator. I was able to get it to work using&lt;/p&gt;
&lt;p&gt;let rec expr (i : int) =&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;let e = kernel.[i] * (ParallelArrays.Shift(inputArray, [| -i |]) : FloatParallelArray )&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if i = 0 then e else e + expr (i-1)&lt;/p&gt;
&lt;p&gt;but surely there must be a better way?!? I look forward to play with this more!&lt;/p&gt;
&lt;p&gt;Jurgen&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9938199" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9938069</link><pubDate>Thu, 17 Dec 2009 08:44:59 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9938069</guid><dc:creator>billh</dc:creator><description>&lt;p&gt;FYI: Although this feed is visible in Google Reader, the post is not. I've not tried other readers, so I don't know whether it affects them as well or not.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9938069" width="1" height="1"&gt;</description></item><item><title>re: GPGPU and x64 Multicore Programming with Accelerator from F#</title><link>http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx#9937582</link><pubDate>Wed, 16 Dec 2009 11:15:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9937582</guid><dc:creator>honu</dc:creator><description>&lt;p&gt;Thanks Satnam.&lt;/p&gt;
&lt;p&gt;If you read this excellant blog, you'll probably also enjoy &amp;quot; ...Can non-numerical application developers take advantage from the new LRBni instructions?, &amp;nbsp;by Daniele Paolo Scarpazza &amp;nbsp;&lt;/p&gt;
&lt;p&gt;— &amp;nbsp;a member of the Multicore Computing Department at the IBM T. J. Watson Research Center. He&lt;/p&gt;
&lt;p&gt;is the author of articles and scholarly papers on parallel algorithms and performance optimization on emerging multicore architectures&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://i.cmpnet.com/ddj/digest/2009/DDD_1209.pdf"&gt;http://i.cmpnet.com/ddj/digest/2009/DDD_1209.pdf&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=9937582" width="1" height="1"&gt;</description></item></channel></rss>