AMD 相当于 CUDA 驱动程序 API?
Posted
技术标签:
【中文标题】AMD 相当于 CUDA 驱动程序 API?【英文标题】:AMD equivalent of the CUDA Driver API? 【发布时间】:2011-10-29 22:05:48 【问题描述】:CUDA 具有运行时 API 和驱动程序 API。在 AMD 中相当于什么?如果我以某种方式修改 llvm 中的 IL,我可以获得更多控制权吗?
【问题讨论】:
你能再澄清一下这个问题吗?您似乎将主机端 API 与 GPU 代码混为一谈。与 ATI 上的 CUDA 驱动程序 API 等效的是 openCL API。它们都处于大致相同的级别,并且对 GPU 操作提供相同级别的控制和详细程度。但是你认为它们与用于编写 GPU 端代码的 IL 有什么关系? 谢谢你,清除它。我认为有不同级别的控制。我想知道是否可以修改 AMD IL,就像为 NVIDIA 修改 PTX 一样。我可以在 AMD IL 向 CAL 发送任何内容之前停止编译过程吗 【参考方案1】:AMD 平台上的 CUDA 驱动 API 的模拟是 OpenCL。我知道目前在 AMD 平台上没有类似的 CUDA runtime API。
【讨论】:
【参考方案2】:我相信与 NVIDIA CUDA 驱动程序 API 最接近的匹配是 AMD CAL,它与 AMD APP SDK 一起提供。 AMD CAL 不仅提供比 OpenCL 更底层的主机 API,还提供更底层的计算内核语言 AMD IL,它也是 OpenCL 编译成的中间语言。
【讨论】:
CAL 已弃用。多年没变,不支持GCN,从最新的APP SDK中删除。 devgurus.amd.com/thread/160049devgurus.amd.com/thread/158980 对。顺便说一句,虽然这可能有点太高级了,但现在有 AMD Mantle 可能值得一看。 Mantle 可能和 CAL 一样低级,并且得到很好的支持。但我会非常谨慎地使用它。它是专有的这一事实很糟糕,但更糟糕的是它与 GCN 架构相关联(只要 Xbox One 和 PS4 售出,未来 10 年以上的时间都会如此)。如果 AMD 的 PC 架构发生变化,Mantle 将出现故障或性能欠佳。总之,抽象层是好的。以上是关于AMD 相当于 CUDA 驱动程序 API?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 cuda 驱动程序 api 与 cuda 运行时 api 混合使用?