NVIDIA Tesla’s support for C++ AMP

Some have asked whether Tesla cards from NVIDIA supports C++ AMP. The short answer is all Tesla cards, except for Tesla K20 Active Accelerator for workstation, supports C++ AMP.

One of the benefits of C++ AMP is the portability across GPU cards. The easiest way to check whether a card supports C++ AMP or not, is to check for its DirectX 11 support. In case of Tesla cards, to use C++ AMP, you will have to switch GPU Operation Mode (GOM) from compute-only to ALL_ON (using nvidia-smi's --gom option) and then switch the Driver model from TCC to WDDM (using nvidia-smi's --driver-model option). Refer to NVIDIA's nvidia-smi documentation for more details. Only K20 Active Accelerator for workstation card does not allow this switching.

Another way to check whether C++ AMP can run on your device or not is to programmatically invoke accelerator:: get_all() method as described in the book on C++ AMP. For those who would like an executable instead of code sample, download the utility in the "Can I Run C++ AMP on My Device" blog post and execute it to see the output.

Comments

  • Anonymous
    January 24, 2014
    The Tesla card aren't in expensive. The thought of buying a K20 or a K40 and having install it  in a system and run a C++AMP  application on to see if its compatible is just nonsense. We need clear  and specific information from all the vendors MSFT and Nvidia on what card and O/S are supported in what modes. Otherwise it just diminishes the reputation of GPU accelerated computing and adds to any FUD that's out there.

  • Anonymous
    January 26, 2014
    3DMashUp, At the time of writing the above post the information we obtained from NVIDIA was that "all Tesla cards, except for Tesla K20 Active Accelerator for workstation, supports C++ AMP". Please note that while we strive to provide our users with the necessary data, the definitive answer to the support question may be best answered by NVIDIA support channels. Having said that, is there a specific card you are considering that you have doubts about?

  • Anonymous
    July 08, 2014
    Where can I find the accurate information about whether C++ AMP is supported by Tesla K40 or not ?

  • Anonymous
    November 12, 2014
    I'm refactoring our image rendering subsystem using C++ Amp instead of CPU ppl。Our Hardware GPU is NVIDIA. But on NVIDIA develop web site, I found that amp is no longer supported by the debug tool Nsight from the 4.1 Release. I'm very disappointed for NVIDIA! What's your comments? Can you confirm this?  The original release statement is as follows: (docs.nvidia.com/.../Nsight_Visual_Studio_Edition_User_Guide.htm): Changed Features and Fixed Issues in the 4.1 Release of the Graphics Debugger Support for Visual Studio 2008 has been removed. C++ AMP support has been removed. The variable value display has been improved for the Direct3D 11 shader pages.