我可以在英特尔处理器图形化I7(第三或第四代)上运行Cuda或OpenCl吗?

12

我正在使用搭载Intel I7 3代或4代处理器,没有外部GPU的SBC进行开发。

我使用的是Linux系统。

我想要利用Intel处理器图形功能。

我考虑学习使用CUDA或OpenCl进行开发。

我阅读了一些旧帖子(几年前发布的),但我不确定现在是否有更好的技术:

我能否在Intel上运行CUDA

GPU编程,CUDA还是OpenCL

  1. 我能否在Intel处理器图形上运行CUDA代码?
  2. 我能否在Intel处理器图形上运行OpenCL代码?
  3. 如果我能够在Intel处理器图形上运行CUDA和OpenCL代码,哪个更好?

2
你不能在英特尔处理器上运行CUDA(设备)代码。你可能能够在英特尔处理器上运行OpenCL代码(不确定你的SBC的具体情况)。因此,我将这个问题从CUDA重新标记为OpenCL。 - Robert Crovella
谢谢,你写道:“你可能能够运行OpenCL”,有什么限制吗?(我使用的是第三/四代英特尔处理器图形) - Azil
一般而言,我认为你可以在i7英特尔处理器上运行OpenCL。但是我不是专家。建议你等待并查看是否有其他人有建议。 - Robert Crovella
3个回答

12

正如 @Robert Crovella 所说,你不能在 Intel GPU/CPU 上运行 CUDA。至于 OpenCL,你有几个选择:

  1. Intel OpenCL Driver 适用于 Intel GPU 和 CPU
  2. 开源 Beignet 适用于 Intel GPU
  3. AMD APP SDK 可在 Intel CPU 上运行

我无法确定哪一个是最适合在 Linux 上使用 Intel GPU 的。我认为 Beignet 是第一个支持 Intel GPU 的,然后官方的 Intel 驱动程序出现了。对于 Linux 上的 Intel CPU,我使用 AMD APP SDK。


为了确保,这三个都在位于Intel处理器上的GPU上运行? - Azil
1
(1)和(3)是相同的;它们都使用OpenCL API,只是使用不同的SDK包。性能将是相同的,因为底层的Intel集成显卡OpenCL GPU驱动程序是相同的。 - Dithermaster
@Dithermaster 是的,从某种意义上讲,它们是相同的,因为只要安装了GPU驱动程序,就可以在Intel GPU上运行两者。但是,如果安装了(1),那么就不真正需要安装(3)——(1)必须与整个Intel Media Server Studio一起安装,该软件包已经包含了OpenCL SDK。我提到(3)是为了说明它单独安装后能够在Intel CPU上运行OpenCL。 - doqtor
1
当然,但他在询问英特尔GPU而不是CPU。 - Dithermaster
1
你的回答有误导性。Beignet 只适用于 GPU。 - Z boson
显示剩余3条评论

7

现在您可以使用coriander,它是适用于OpenCL 1.2 GPU的NVIDIA® CUDA™编译器(完整披露:我是作者)。


香菜编译器还在维护吗?我发现了一个更近期的编译器(HIP),它是为了相同的目的而开发的。 - Anderson Green
HIP是专为AMD设计的。Coriander旨在跨OpenCL 1.2设备实现可移植性。 - Hugh Perkins

0

拥有英特尔UHD显卡的人只需安装OpenCL驱动程序,一切都会正常<3。我正在使用Ubuntu 22.04,它可以在我的英特尔UHD图形620上工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接