1

我正在尝试使用 CUDA SDK 中的 ptxjit 示例作为检测与 GPU 设备交互的基础。

我已经成功地编译了检测代码,并控制设备加载和执行具有 CUDA 功能 2.0 的 Geforce GT440 的 PTX 模块。

在具有 CUDA 功能 5.0 的 Geforce 830M 系统(笔记本电脑使用 bumblebee 控制离散 GPU)上编译相同的仪器代码时,代码编译但给了我 209(CUDA_ERROR_NO_BINARY_FOR_GPU)。

我试图编译内核以与 CUDA 功能 5.0 兼容,但没有成功,仍然是同样的错误。

有任何想法吗?

4

1 回答 1

0

最后问题出在司机身上。它似乎只影响用于使用具有 CUDA Capability 5.0 的 GPU 加载 PTX 代码的功能。

我删除了所有最近更新的 nvidia 驱动程序包,并安装了 CUDA SDK 附带的驱动程序和 OpenGL 库。SDK 7.5 的驱动程序版本是 352.39,该驱动程序在原始 ptxjit 示例和修改后的示例中都像在其他系统上一样完美执行。

我没有任何具有 CUDA 功能 3.0 的 GPU 来测试是否会出现相同的问题,此外,我没有将我的桌面更新为 367.44 驱动程序以查看它是否会破坏 ptxjit 示例。

目前,解决方案是保留 CUDA SDK 附带的驱动程序并关闭来自 nvidia 存储库的更新。

于 2016-10-05T04:05:22.490 回答