QuoteOriginally posted by: outrunQuoteOriginally posted by: PolterQuoteOriginally posted by: outrun QuoteOriginally posted by: Polteroutrun, have you played with C++ AMP yet? It looks quite interesting,
http://www.danielmoth.com/Blog/C-AMP-Op ... ion.aspxNo haven't looked at that. Have you?Not yet, a bit wary to install VC++11 preview live and no time to setup a virtual infrastructure just for that. I'm thinking on reserving time to spend on that when the Visual C++ 11 release comes out. So far I've been reading the docs and following conferences materials, looks quite promising (much more C++ friendly than CUDA, perhaps more than Thrust, too). Apparently some of the array concepts have close connection to recent additions to high-performance Fortran, according to Herb Sutter:
http://channel9.msdn.com/Events/BUILD/B ... 663397.The main premise seems to be the same platform for CPU and GPU, although from what I'm seeing in the specs right now the CPU part seems to be SIMD vectorization features, rather than multicore.Although it is possible to make use of both:
http://www.danielmoth.com/Blog/Running- ... U.aspxMore info:
http://www.gregcons.com/KateBlog/DidYou ... L-802TSIMD is fine, right? I think it's a bit tricky to decide if it's worth the effort. Can't say.. I've read that the Fermi GPU's support C++ code (instead of C -something to do with memory integration), and I'll have to see if it takes more that 1-2 days to learn CUDA, and how easy/difficult it is to write code that runs on both. I prefer simplicity over elegance.Sure, it might be hard to tell right now.For me the portability aspect of the open spec looks interesting, with cross-platform heterogeneous computing as an explicit goal:"Abstracts acceleratorsCurrent version supports DirectX 11 GPUsCould support others like FPGAs, off-site cloud computing...Support heterogeneous mix of acceleratorsExample: C++ AMP can use both an NVidia and AMD GPU in your system at the same time"//
http://www.nuonsoft.com/blog/2012/01/23 ... "Microsoft supports and encourages anyone to implement the C++ AMP open specification on any platform, and we are actively working with interested parties already. If you are a compiler, hardware, or operating system vendor who is interested in C++ AMP support for your platform, read the spec and feel free to get in touch."//
http://blogs.msdn.com/b/nativeconcurren ... hed.aspxSo, whether it's interesting from my point of view depends on whether the stated goals are successfully achieved -- any platform (any hardware, any OS), any compiler, any vendor, all in STL-style modern C++ -- this would indeed mean bringing something new to the table, sufficiently better to switch from CUDA. I will continue to keep track on this, when the official release of VC++11 comes out and I get my hands on it (or earlier (if I become impatient and risk going with the Dev. Preview)/later -- depends on whether ceteris paribus holds) I think I'll give it a shot and report back!