0

我正在努力解决一个非常基本的 C++ AMP 问题。事实上,相当尴尬的是这里的 Hello World 示例:

http://blogs.msdn.com/b/nativeconcurrency/archive/2012/03/04/quot-hello-world-quot-in-c-amp.aspx

我已经下载了示例代码,并尝试从头开始编写它,但是当我运行它时,我会打印出原始的 v[11] 数组值,而不是文本“Hello World”。

我在 Windows 7 上使用 Visual Studio 2013。我在联想 64 位 Think pad 上运行它,我尝试为 x64 和 Win32 构建,但结果仍然相同。我检查了显卡是否支持 DirectX,并且它是:

DirectX 版本:DirectX 11。

如果有人可以提供一些帮助,那就太好了!我还使用仅 GPU 的调试器类型逐步完成了并行代码,并且可以看到 AV[] Array_View 正在更新......但是在计算新值时,我仍然从原始 V 中获取值大批。

非常感谢!

更新:

好的,所以我玩过,它在发布版本中运行良好,但在调试中却不行......不知道为什么!

4

1 回答 1

0

对,找到了我自己问题的答案。我在与 VS11 相关的 MSDN 博客上发现了这一点,但似乎对 Windows 7 上的 VS12 仍然有效:

“但是,Windows 7 不支持 GPU 调试(除了在 Windows 8 上安装之外,没有其他解决方法)。”

http://blogs.msdn.com/b/nativeconcurrency/archive/2011/09/19/vs-11-developer-preview-gotchas-with-c-amp.aspx

已经完成了这个“变通”(因为需要一个更好的术语),一切都很好!

于 2014-04-25T10:53:45.013 回答