locked
GPGPU platform available to Metro Style Apps

    Question

  • I'd like to experiment with mass parallelism techniques because I expect improved performance for my application.

    Which of the following choices do App Developers have if we want to create Metro Style Apps:

    -          Cuda C/C++

    -          OpenCL

    -          DirectCompute / C++AMP

    What level of compatibility can we expect with hardware (Sorry, I have a lot of questions):

    -          What DX level is required to use the above mentioned tools?

    -          Are they available on X86 and ARM?

    Thanks!

    Tuesday, January 03, 2012 8:59 AM

Answers

  • The advantage of working with C++ AMP is that, if the architecture the application is running on does not support Directx 11 it will use a non C++ AMP version of the code as Documented in the following article:

    Overview of C++ Accelerated Massive Parallelism (C++ AMP)
    http://msdn.microsoft.com/en-us/library/hh265136(v=VS.110).aspx

    If you want to experiment with highly parallel code and want to measure performances I would suggest to write the application using C++ AMP and then run it on DirectX 11 compliant hardware.

    Hope that helps.

    Thanks,

    -Joseph


    • Edited by Joseph Viola Tuesday, January 10, 2012 1:38 PM
    • Marked as answer by Joseph Viola Tuesday, January 10, 2012 1:49 PM
    Tuesday, January 10, 2012 1:36 PM

All replies

  • C++ AMP is available to Desktop apps in the Developer preview.  The //build/ presentation on this subject is:

    Taming GPU compute with C++ AMP
    TOOL-802T
    Speakers: Daniel Moth

     

    The first step in that direction for Metro style apps was a sample pack preview release by the PPL team, available here:

    http://code.msdn.microsoft.com/windowsapps/Windows-8-Asynchronous-08009a0d

     

    For more details on the direction and discussion of those technologies, PPL and C++ AMP, check out their team blog. They also have a number of samples for VS11:

    http://blogs.msdn.com/b/nativeconcurrency

     

    Thanks,

    -David

     

    Thursday, January 05, 2012 2:48 AM
    Moderator
  • Thanks for you effort David - however, this does not fully answer my question (nor did I find any answer on the links provided/via searching on the internet. Maybe I had simple too many questions - thats why I am narrowing it down to one:

    Will we have DirectCompute/C++ AMP on ARM devices (because all ARM SoCs only support DX9)?

     

    Thanks.

    Tuesday, January 10, 2012 8:35 AM
  • The advantage of working with C++ AMP is that, if the architecture the application is running on does not support Directx 11 it will use a non C++ AMP version of the code as Documented in the following article:

    Overview of C++ Accelerated Massive Parallelism (C++ AMP)
    http://msdn.microsoft.com/en-us/library/hh265136(v=VS.110).aspx

    If you want to experiment with highly parallel code and want to measure performances I would suggest to write the application using C++ AMP and then run it on DirectX 11 compliant hardware.

    Hope that helps.

    Thanks,

    -Joseph


    • Edited by Joseph Viola Tuesday, January 10, 2012 1:38 PM
    • Marked as answer by Joseph Viola Tuesday, January 10, 2012 1:49 PM
    Tuesday, January 10, 2012 1:36 PM
  • Hi Paul,

    Details of ARM support have not yet been announced.

    --Rob

    Wednesday, January 11, 2012 6:22 AM
    Owner
  • Ok,I will look at the source you provided. Just for clarification, I asked this because I expect a very diverce set of hardware (sometimes high-end, sometimes slow) on which Windows 8 will run. Obviously, I want the best performance but also reach as much customers as possible. Maybe GPGPU computing isn't ready for prime-time usage afterall...

    Thanks for your Answer.

    Wednesday, January 11, 2012 12:47 PM
  • So, it's not possible to use OpenCL on Metro Apps? Any specific reasons?

    Thanks,

    Jay

    • Proposed as answer by __jay Tuesday, October 02, 2012 7:49 AM
    • Unproposed as answer by __jay Tuesday, October 02, 2012 7:49 AM
    Friday, September 21, 2012 4:24 AM
  • C++ Amp was supported in VS 2012 Express?

    Charlie Chang L

    Friday, September 21, 2012 3:25 PM