gpt4 book ai didi

ubuntu - 如何在 Ubuntu 上编译 OpenCL?

转载 作者:太空宇宙 更新时间:2023-11-03 16:43:37 27 4
gpt4 key购买 nike

问题:需要什么头文件和驱动程序,我从哪里获得它们以便使用 gcc/g++ 在 ubuntu 上编译开放式 CL?


信息:一段时间以来,我一直在摸索着如何在我的桌面上安装 open CL,如果可能的话,我的上网本。我试过一些教程,但似乎都不起作用。此外,它们都只是一步一步给出,而没有真正解释为什么或更糟的是它们特定于特定的 IDE,因此您必须学习 IDE 才能做任何事情。

所以我的台式机上有 NVIDA GX465,上网本上有集成显卡。我的首要任务当然是我的台式机,上网本只是为了开发目的而提供的便利(都运行 ubuntu 11.04 并将在 11.10 发布后立即运行)。有人可以为我说明获得它究竟需要什么,这样我才能真正编译代码并让它运行吗?如果您还可以解释每件作品的作用,以便我理解它的重要性。

最佳答案

要在 Linux 下编译和运行 OpenCL 代码,您需要四样东西:

1) 支持 OpenCL 的 NVIDIA 驱动程序。 Ubuntu 自带的驱动有点旧的,但它们应该仍然可以正常工作。除非您明确需要电流驱动程序,你应该坚持使用与 Ubuntu 一起打包的驱动程序。需要明确的是,这些是通过受限驱动​​程序管理器安装的相同驱动程序。 OpenCL 库附带驱动程序,因此只需运行 OpenCL 程序驱动程序就足够了。

2) CUDA 工具包。这包括编译 OpenCL 代码所需的 header 。将其安装到默认位置。

3) GPU 计算 SDK(可选)。这包括各种 NVIDIA 特定支持工具,以及 OpenCL 代码示例。

所有这三项都可以在 http://developer.nvidia.com/cuda-toolkit-40 找到.

4) OpenCL C++ 绑定(bind)(可选)。奇怪的是,它们不包含在 CUDA Toolkit 中,但如果您使用 C++,它们可以使您的代码更加可读。您可以从 http://www.khronos.org/registry/cl/api/1.1/cl.hpp 下载它们, 然后把它放在你桌面的/usr/local/cuda/include/CL 中。

安装这些后,您需要执行更多步骤才能在 NVIDIA SDK 之外编译和运行 OpenCL。

1) CUDA 工具包将包含 OpenCL header (列于 http://www.khronos.org/registry/cl/ ),它们可能位于目录/usr/local/cuda/include/CL 中。为了使这些头文件在系统范围内可用,您应该将此目录链接到/usr/include/,这样它们就可以作为/usr/include/CL/[headerfilename] 访问。您可以将/usr/local/cuda/include 添加到 C_INCLUDE_PATH and CPLUS_INCLUDE_PATH,而不是创建符号链接(symbolic link)。环境变量,但这只会持续当前 session 。

2) 确保 OpenCL 库 (libOpenCL.so) 存在于/usr/lib 中。这应该由驱动程序设置到位,因此您无需执行任何操作。

您已准备好编写代码。确保在任何 C(++) 程序中包含 CL/cl.h(或 CL/cl.hpp,如果您想使用 API 的 C++ 版本)调用 OpenCL API。编译时,确保链接到 OpenCL 库(将 -lOpenCL 标志传递给 gcc)。

就您的上网本而言,集成显卡通常不支持 OpenCL。理论上,AMD's APP Acceleration支持在 CPU 上运行 OpenCL,但尚不清楚它是否真正起作用。

关于ubuntu - 如何在 Ubuntu 上编译 OpenCL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7542808/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com