我一直在学习 C++ AMP,我所看到的一切都强调 AMP 在“加速器”上工作,而不仅仅是 GPU。我认为今天所有的加速器都是GPU,但未来可能会有不同类型的加速器。那么还有什么可以作为加速器呢?是现在正在开发新型加速器,还是 AMP 只是想成为未来的证明?
问问题
593 次
1 回答
7
加速器代表可以执行 C++ AMP 代码的设备。你是对的,在大多数情况下它将是一个 GPU,但即使在 Visual Studio 2012 中也有其他类型的加速器可用。
此类加速器的一个示例是 Windows 高级光栅化平台 (WARP) 设备,它是利用多核和 SSE2 的 CPU 回退。有关 WARP 的更多信息,请参阅:
- http://msdn.microsoft.com/en-us/library/gg615082(v=VS.85).aspx
- http://www.danielmoth.com/Blog/Running-C-AMP-Kernels-On-The-CPU.aspx
还有一个是软件参考设备,一个对调试有用的仿真器。有关参考设备的更多信息,请参阅:http: //blogs.msdn.com/b/nativeconcurrency/archive/2012/03/11/direct3d-ref-accelerator-in-c-amp.aspx
在 Visual Studio 2012 中,需要可以执行放大器限制代码的 C++ AMP 加速器来支持 DirectX11。请注意,此类要求并不意味着所有加速器都是 GPU,例如 WARP、参考设备、AMD Fusion 或 Intel Ivy Bridge。未来我们可能会放宽 DirectX11 要求,以允许更多能够执行数据并行算法的加速器。
于 2012-09-10T16:22:02.583 回答