在CUDA SDK 7.5中lcuda和lcudart有什么区别?

时间:2016-05-05 00:54:23

标签: linux cuda clang

我有Nvidea SDK 7.5。我想要compile OpenMP for CUDA。在步骤“克隆,构建和安装OpenMP目标后端”我得到: enter image description here

但我在SDK中根本看不到libcuda.lib: enter image description here

所以我想知道lcuda和lcudart之间有什么区别,如果有人可以在CUDA 7.5 SDK中找到lcuda?

1 个答案:

答案 0 :(得分:8)

您在“lcuda”和“lcudart”中讨论的l实际上是编译器开关的一部分。该库为cudalibcudacudartlibcudart

在linux上,我认为这些库也不会以.lib结尾。它们应以.so结尾。这在你的打印输出中非常明显 - 看一看。

无论如何,libcuda.so是由GPU 驱动程序安装程序安装的,而不是工具包。

(除了你可能不应该使用的存根之外)libcuda.so将不会在工具包位置找到,而是在驱动程序放置的其他地方找到。这个特定的位置将根据具体的Linux发行版而有所不同。

所以我建议使用find或类似的linux命令在你的机器上找到它。它可能位于/usr/lib/usr/lib64或类似的位置。

如果你根本找不到它,那么可能的解释是你没有在你的机器上安装(正确)GPU驱动程序。

简而言之,libcuda.so提供对CUDA driver API的访问权限,而libcudart.so提供对CUDA runtime API的访问权限。

顺便说一句,将来,请发布文本输出,而不是图片,以便从控制台输出实际文本。