使用 openCL 设置 emacs
使用 emacs 编译和运行一个简单的支持 OpenCL 的程序需要哪些步骤?我们现在正在使用 C++ 绑定进行开发,我从未使用过 emacs,但我的队友非常喜欢它。
我只需要知道如何使用 ATI Stream SDK 和基本 OpenCL C++ 绑定设置链接器。实际的编码不是问题。
What steps are needed to get a simple OpenCL enabled program to compile and run using emacs? We're developing with the C++ bindings right now and I have never used emacs but my teammate is very fond of it.
I just need to know how to set up the linker with ATI Stream SDK and basic OpenCL C++ bindings. The actual coding is not the problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
OpenCL 不会改变 C/C++ 项目的任何内容,您可以使用任何您原本会使用的构建系统(vanilla Makefiles、autotools、cmake 等)。
对于 .cl 文件,我的 .emacs 中有以下内容:
(setq 自动模式列表 (cons '("\.cl$" .c-mode) 自动模式列表))
...这强制 Emacs 将它们视为 C 文件。
您需要
#include
并将-lOpenCL
传递给链接器,仅此而已。OpenCL doesn't change anything about the C/C++ project, you can use any build system you would otherwise use (vanilla Makefiles, autotools, cmake, etc).
For .cl files I have this in my .emacs:
(setq auto-mode-alist (cons '("\.cl$" . c-mode) auto-mode-alist))
...which forces Emacs to treat them as C files.
You need to
#include <CL/cl.hpp>
and to pass-lOpenCL
to the linker, that's all.想让这个更精确吗? OpenCL 程序(内核)通常使用 C 或 C++ 编写的程序的 API 调用进行编译。运行程序以及将数据来回传输到主机程序的内存,同样是通过 API 处理的。
Care trying to make this more precise? OpenCL programs (kernels) are usually compiled using the API calls from a program written in C or C++. Running the program, as well as transferring data back and forth to the memory of the host program, are likewise handled through the API.