【问题标题】:NVIDIA OpenCL Device VersionNVIDIA OpenCL 设备版本
【发布时间】:2021-07-26 01:01:32
【问题描述】:

NVIDIA 最近宣布其显卡支持 OpenCL 3.0。我有 NVIDIA Geforce MX150 卡,并且我已将我的 CUDA 工具包更新到版本 11.3 和 465.19.01 驱动程序。我已经安装了 clinfo 工具,它显示了有关 OpenCL 平台和设备的所有信息。当我运行它时,它会显示:

  • 设备版本 = OpenCL 3.0 CUDA
  • 驱动程序版本 = 465.19.01
  • 设备 OpenCL C 版本 = OpenCL C 1.2

我在这里有点困惑。设备版本和设备 OpenCL C 版本有什么区别?我能否在我的卡上运行 OpenCL 3.0 代码,或者它仍然支持 OpenCL 1.2 规范?

【问题讨论】:

  • OpenCL 3.0 支持公告是here,支持的新功能的详细列表在the release notes。您将能够在具有驱动程序 465.xx 或更高版本的 Maxwell(或更高版本)GPU 上运行这些链接中描述的 OpenCL 3.0 代码。 MX150 是 Pascal 架构 GPU,因此它应该可以工作。

标签: gpu opencl nvidia


【解决方案1】:

根据clGetDeviceInfo 规范:

CL_DEVICE_OPENCL_C_VERSION 是编译器为此设备支持的最高 OpenCL C 语言版本。

CL_DEVICE_VERSION是设备支持的OpenCL版本。

因此,即使您的 MX150 支持 OpenCL 3.0,您也只能编译 OpenCL 1.2 代码。请注意,OpenCL 3.0 基本上与 OpenCL 1.2 相同,但更好地支持可选的 OpenCL 2.x 功能。 Nvidia 使用最新的驱动程序添加了一些新的 OpenCL 2.x 功能,但仍然没有完整的 2.x 支持。

【讨论】:

  • 您可以使用密钥“-cl-std=CL2.0”编译 OpenCL 2.0 和 3.0 代码,或者我想是新的 CL3.0。
猜你喜欢
  • 2013-11-05
  • 1970-01-01
  • 2014-10-23
  • 2016-02-26
  • 1970-01-01
  • 1970-01-01
  • 2011-08-11
  • 1970-01-01
  • 2013-09-18
相关资源
最近更新 更多