Linux 上的 OpenCL 编译

2024-05-07

我是 OpenCL 的新手。

从昨天开始,我尝试使用 OpenCL 进行并行编程,而不是使用我更熟悉且以前体验过的 CUDA。

现在我有 NVIDIA GTX 580 GPU、Ubuntu Linux 12.04 操作系统和 CUDA SDK 4.1(之前因为 CUDA 编程而已经安装)。

在CUDA SDK文件夹中,已经包含了一些OpenCL头文件和库。

所以我刚刚从 NVIDIA 的开发者专区下载了 OpenCL 示例。 (链接在这里!https://developer.nvidia.com/opencl https://developer.nvidia.com/opencl)

我试图自己编译一些例子,但我做不到。

我使用 -I 制作 Makefile,我添加了头文件的路径,但我不知道如何添加库路径以及 OpenCL 库的名称是什么。

我在Google上搜索,但有人说文件名为libOpenCL.so,但我只有OpenCL.lib。

有人可以帮助我吗?


Install

以下步骤已在 Ubuntu 12.04 上测试。

  1. 下载英特尔软件开发工具包 http://software.intel.com/en-us/vcsource/tools/opencl对于Linux。
  2. 提取转速:

    $ tar zxvf intel_sdk_for_ocl_applications_2012_x64.tgz
    
  3. 转换为 .deb 并安装:

    $ fakeroot alien --to-deb intel_ocl_sdk_2012_x64.rpm
    $ sudo dpkg -i intel-ocl-sdk_2.0-31361_amd64.deb
    
  4. 确保libOpenCL.so已安装到/usr/lib/。

    $ sudo ln -s /usr/lib64/libOpenCL.so /usr/lib/libOpenCL.so
    $ sudo ldconfig
    

Compile

只需在编译期间链接到 OpenCL 库即可:

$ g++ main.cpp -lOpenCL
$ ./a.out
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux 上的 OpenCL 编译 的相关文章

随机推荐