97

我想将我的技能组合扩展到 GPU 计算。我熟悉光线追踪和实时图形(OpenGL),但下一代图形和高性能计算似乎是在 GPU 计算或类似的东西。

我目前在家用电脑上使用 AMD HD 7870 显卡。我可以为此编写 CUDA 代码吗?(我的直觉是否定的,但由于 Nvidia 发布了编译器二进制文件,我可能错了)。

第二个更普遍的问题是,我从哪里开始使用 GPU 计算?我确信这是一个经常被问到的问题,但我看到的最好的问题是从 08 年开始,我认为从那时起这个领域已经发生了很大的变化。

4

7 回答 7

75

不,您不能为此使用 CUDA。CUDA 仅限于 NVIDIA 硬件。OpenCL将是最好的选择。

Khronos 本身有一个资源列表StreamComputing.eu 网站也是如此。对于您的 AMD 特定资源,您可能需要查看AMD 的 APP SDK 页面

请注意,目前有几个举措可以将 CUDA 翻译/交叉编译为不同的语言和 API。一个这样的例子是HIP。但是请注意,这并不意味着 CUDA 可以在 AMD GPU 上运行。

于 2012-10-10T21:03:49.993 回答
21

您可以使用Coriander在 Mac 上运行 NVIDIA® CUDA™ 代码,实际上也可以在 OpenCL 1.2 GPU 上运行。披露:我是作者。示例用法:

cocl cuda_sample.cu
./cuda_sample

结果: 在此处输入图像描述

于 2017-06-09T02:09:08.917 回答
13

是的。:) 您可以使用 Hipify 非常轻松地将 CUDA 代码转换为 HIP 代码,这些代码可以编译在 AMD 和 nVidia 硬件上运行得很好。这里有一些链接

GPUOpen 非常酷的站点,由 AMD 提供,拥有大量工具和软件库,可帮助处理 GPU 计算的不同方面,其中许多都适用于两个平台

HIP Github 存储库,显示了 hipify 的过程

HIP GPU打开博客

2021 年更新:AMD 更改了网站链接转到 ROCm 网站

https://rocmdocs.amd.com/en/latest/

于 2016-08-04T16:53:35.723 回答
9

您不能将 CUDA 用于 GPU 编程,因为 CUDA 仅受 NVIDIA 设备支持。如果你想学习 GPU 计算,我建议你同时开始 CUDA 和 OpenCL。这对你很有好处。说到 CUDA,你可以使用 mCUDA。它不需要NVIDIA的GPU..

于 2012-10-18T09:19:58.933 回答
6

我认为这将很快在 AMD FirePro GPU 中成为可能,请参阅此处的新闻稿,但对开发工具的支持将于 2016 年第一季度推出:

计划在 2016 年第一季度推出“玻尔兹曼倡议”工具的早期访问计划。

于 2015-12-18T18:11:07.830 回答
1

这些是我能找到的一些基本细节。

Linux

ROCm 支持 TensorFlow 和 PyTorch 等主要 ML 框架,并通过持续开发来增强和优化工作负载加速。

似乎支持仅适用于 Linux 系统。(https://rocmdocs.amd.com/en/latest/Installation_Guide/Installation-Guide.html

ROCm支持TensorFlow 和 PyTorch 等主要 ML 框架,并通过持续开发来增强和优化工作负载加速。基于HIP

用于可移植性的异构计算接口 (HIP) 是一种 C++ 方言,旨在简化 CUDA 应用程序到可移植 C++ 代码的转换。它提供了 C 风格的 API 和 C++ 内核语言。C++ 接口可以跨主机/内核边界使用模板和类。HIPify 工具通过执行从 CUDA 到 HIP 的源到源转换来自动化大部分转换工作。HIP 代码可以在 AMD 硬件(通过 HCC 编译器)或 NVIDIA 硬件(通过 NVCC 编译器)上运行,与原始 CUDA 代码相比没有性能损失。

Tensorflow ROCm 端口是 https://github.com/ROCmSoftwarePlatform/tensorflow-upstream,他们的 Docker 容器是https://hub.docker.com/r/rocm/tensorflow

苹果电脑

macOS 12.0+ 的支持(根据他们的声明)

Apple 在 2020 年 10 月和 2020 年 11 月使用量产的 3.2GHz 16 核英特尔至强 W 型 Mac Pro 系统、32GB RAM、AMD Radeon Pro Vega II Duo 显卡、64GB HBM2 和 256GB SSD 进行了测试。

您现在可以在 TensorFlow v2.5 中利用 Apple 的 tensorflow-metal PluggableDevice直接使用 Metal 在 Mac GPU 上进行加速训练。

于 2021-09-12T09:23:48.080 回答
-2

截至 2019_10_10 我还没有测试过,但是有“GPU Ocelot”项目

http://gpuocelot.gatech.edu/

根据其广告,它试图为各种目标编译 CUDA 代码,包括 AMD GPU。

于 2019-10-10T13:48:53.977 回答