You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在OpenCL内核编译时判断厂商ID以适配NVIDIA GPU?

OpenCL内核区分NVIDIA GPU的预编译宏替换方案

你可以用__NV_CL_C_VERSION__替换代码中的MAGIC_HERE,这个宏是NVIDIA OpenCL编译器专属的预定义宏,仅在针对NVIDIA GPU编译OpenCL内核时会被定义。

修改后的代码示例:

#if defined(__NV_CL_C_VERSION__)
asm("some ptx code");
#else
// some OpenCL C code which does the same thing, sort of
#endif

另外,也可使用__CUDA_ARCH__,不过该宏仅在PTX代码生成阶段才会被定义,更适合直接编写PTX相关逻辑的场景;而__NV_CL_C_VERSION__在OpenCL编译的早期阶段就会被定义,适用性更广。

内容的提问来源于stack exchange,提问作者einpoklum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 20:45:41