1

我知道 Nvidia 有 CUDA,但 ATI 有什么?我不想使用 OpenCL,因为我想对硬件保持尽可能低的水平。

是小溪还是溪流?

可用的文档非常可悲!CUDA 似乎很容易编程,但我想专门使用 ATI,因为它们的硬件。

4

1 回答 1

2

OpenCL is AMD's currently preferred GPU/compute language.

Brook is deprecated.

However, you can write code at a very low level, using AMD's shader and kernel analyzer http://developer.amd.com/tools/shader/Pages/default.aspx. http://developer.amd.com/tools/AMDAPPKernelAnalyzer/Pages/default.aspx

E.g. http://developer.amd.com/tools/shader/PublishingImages/GSA.png shows OpenCL code, and the Radeon 5870 assembly produced.

You can actually code directly in several forms of "assembly". Or at least you could - the webpages no longer mention this. (I used to have this installed for tuning and testing, but do not at the moment.)

More usually, you can code in any of several forms of AMD IL, Intermediate Language, which is closer to the machine than OpenCL. The kernel analyzer web page says "If your kernel is an IL kernel Stream, KernelAnalyzer will automatically compile the IL..."

I would recommend that you use OpenCL, and then look at the disassembly and tweak the OpenCL code to be better tuned. But you can work in IL, and probably still can work at an even lower level.

于 2012-06-24T06:27:51.987 回答