Quantcast
Channel: Parallel Computing in C++ and Native Code forum
Viewing all articles
Browse latest Browse all 856

AMP FFT Library does not work with AMD/Intel GPUs on Windows 8.1

$
0
0

I found the C++ AMP FFT Library only works with NVIDIA GPU on Windows 8.1(x86 and x64 versions).

With AMD GPUs(tested HD8750M, HD7970, R7 250X, R9 285) or Intel integrated GPUs(tested HD4600/HD4600M), an exception is thrown from fft constructor.

The problem does not exist on Windows 7(x86 and x64 versions), where NVIDIA/AMD/Intel GPUs all work fine.

Please help me identify the cause of the problem. Thanks.

Sample program to demonstrate the problem:

#include <iostream>
#include <amp_fft.h>
#pragma comment(lib, "amp_fft.lib")

using namespace concurrency;
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
 try
 {
  accelerator acc;
  wcout << L"Default Accelerator: " << acc.description << endl;
  accelerator_view acc_view = acc.default_view;
  fft<float, 2> fft_(concurrency::extent<2>(480, 640), acc_view);
  // when acc is an NVIDIA GPU, ok
  cout << "Constructed an AMP-FFT object successfully." << endl;
 }
 catch(std::exception&)
 {
  // when acc is an AMD or INTEL GPU, exception occurs
  cout << "Failed to construct an AMP-FFT object." << endl;
 }
 return 0;
}


Viewing all articles
Browse latest Browse all 856


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>