gpt4 book ai didi

c++ - 利用 GPU 的最佳方式

转载 作者:行者123 更新时间:2023-11-30 03:21:29 24 4
gpt4 key购买 nike

我有一小部分代码处理庞大的数据集,我已经使用 openmp 对其进行了并行处理,并且希望使用 GPU 进一步提高性能。该程序是 C++,在 VS2015 下开发,仅在 Windows 上运行,并且需要在尽可能广泛的 GPU 上支持从 7 开始的 64 位版本。到目前为止,我关注的技术包括 AMP、OpenCL、HLSL 和 CUDA。已经提出的问题,例如 this with an informative answer by Ade Miller , 让我质疑 AMP 是否是可行的方法,尽管它看起来是最简单的选择。我放弃了 CUDA,因为它在支持的硬件方面限制了我,并且在我目前通过 following book 的过程中倾向于 OpenCL .因此,我有以下问题;

这里 OpenCL 是一个好方法吗,如 other posts暗示它也可能即将退出?

如果我在希望支持最广泛的 GPU 的同时选择 OpenCL,我是否最好使用 1.x 版本的 OpenCL?我问这个的原因是用最新版本的 CUDA SDK 下载的 OpenCL.DLL 是 1.9。我必须下载适用于 OpenCL 的英特尔 SDK 才能获得 2.x 版本。

如果我使用 OpenCL,我必须随我的应用程序分发什么(假设至少有 OpenCL.DLL)并且是否存在任何许可问题?大多数卡的默认驱动程序是否支持 OpenCL?如果支持,支持哪些版本?

关于上述内容,我真的更喜欢 AMP,因为它适用于任何具有 DirectX 11 或更高版本的东西吗?

(抱歉,如果以上内容略有偏离主题,如果有人认为他们可以将我指向一个更好的论坛来提出这些问题)

最佳答案

Is OpenCL a good approach here, as other posts suggest it may also be on the way out?

OpenCL 似乎是支持最广泛的 GPU 计算平台。由 nVidia、AMD 和 Intel 支持。也适用于大多数移动平台。它还提供了大量可用的库:ViennaCL、clBLast、clBlast、Boost-Compute 等。

If I go for OpenCL while wanting to support the widest range of GPUs, am I better off with a 1.x version of OpenCL?

是的,目前最安全的是坚持使用 1.2 - 实际上它已经足够了。

所有主要桌面 GPU 供应商(Intel、AMD、nVidia)都至少支持 OpenCL 1.2。实际上只有 nVidia 没有发布官方 2.0 支持——它仍处于测试阶段。

另请注意,一些较旧的 GPU 也将仅支持 OpenCL 1.2。

关于c++ - 利用 GPU 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52055037/

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