AMD 显卡/GPU 深度学习折腾指南

您所在的位置:网站首页 AMD电脑配置 AMD 显卡/GPU 深度学习折腾指南

AMD 显卡/GPU 深度学习折腾指南

2023-08-13 20:09| 来源: 网络整理| 查看: 265

文章首发于 个人博客

文章目录 IntroductionZheTeng ConditionsGPU 列表CPU 列表关于 ROCm Install on Ubuntu系统准备安装 ROCm Deep Learning on ROCmTensorflowPyTorch Conclusion

Introduction

鉴于 NVIDIA 的价格和自己的预算, 因此上了 AMD 的船,自此主机组装完成。

AMD 的 CPU 加 AMD 的 GPU, AMD, YES !

装机完成之后,首要问题就是如何在 AMD 的显卡上进行深度学习炼丹?

经过一番配置(折腾),顺利实现上一目标,以下为个人在 Ubuntu 上的折腾指南。

ZheTeng Conditions

由于要使用AMD 的 ROCm 平台, 其对硬件有一定的要求,请确定是否如何下面的条件,如果符合,则可以参考以下的步骤进行配置。

GPU 列表

以下的型号的 GPU 符合条件: 20190731150421.png

更详细的支持的 GPU 列表。

CPU 列表

以下型号的 CPU 在支持之列: 20190731150920.png

更详细的说明链接。

关于 ROCm

ROCm的英文全称Radeon Open Compute platform, 目标是建立可替代 CUDA 的生态。ROCm 和CUDA 最大的区别在于其开放性,ROCm希望能在各种不同的硬件上运行,同时 ROCm 完全开源。

更多关于 ROCm 介绍可以参考这篇文章,这里不是重点,不再细说。

Install on Ubuntu

了解了以上内容,下面开始安装 ROCm。

系统准备

推荐Ubuntu 16.04 或 18.04, 笔者是 18.04

确保系统在最新状态,安装libnuma,再重启:

sudo apt update sudo apt dist-upgrade sudo apt install libnuma-dev sudo reboot 安装 ROCm 如果你的系统已经安装了官方驱动,那么需要运行以下命令删除系统中已有的的AMD GPU 驱动,并重新启动。 sudo amdgpu-pro-uninstall sudo apt autoremove -y sudo reboot 添加 APT源 Add the ROCm apt repository 使用如下命令: wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add - echo 'deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main' | sudo tee /etc/apt/sources.list.d/rocm.list Install ROCm by apt 使用 apt 安装 rocm 包 sudo apt update sudo apt install rocm-dkms

以上过程会非常慢,如果你有科学上网的方法,推荐使用之。我在路由端配置了相关加速,正常情况下大概十分钟完成。

Set user permissions 设置用户 GPU 使用权限,将当前用户加入到权限组: sudo usermod -a -G video $LOGNAME

为系统以后的用户都添加权限:

echo 'ADD_EXTRA_GROUPS=1' | sudo tee -a /etc/adduser.conf echo 'EXTRA_GROUPS=video' | sudo tee -a /etc/adduser.conf 测试 重启系统之后,运行以下命令验证 ROCm 安装是否成功,如果看到你的 GPU 在下面的命令中都有显示,则表示已经安装成功。 /opt/rocm/bin/rocminfo /opt/rocm/opencl/bin/x86_64/clinfo

结果如下: rocminfo 命令: 命令一.png

clinfo 命令: shell 2.png

环境变量 将 ROCm 添加到环境变量: echo 'export PATH=$PATH:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin/x86_64' | sudo tee -a /etc/profile.d/rocm.sh 监控(optional) AMD 没有 NVIDIA 类似 nvidia-smi 的命令,只能使用第三方,这里推荐 radeontop,可以直接使用 apt 安装。 sudo apt-get install radeontop sudo radeontop

如果你的结果全是0, 那么你最好自己编译安装,这里或许比较折腾,因为需要的环境较多。 显示示例: 20190731160110.png

Deep Learning on ROCm

当前支持的框架如下:

TensorFlow: TensorFlow for ROCm – latest supported version 1.13

MIOpen: Open-source deep learning library for AMD GPUs – latest supported version 1.7.1

PyTorch: PyTorch for ROCm – latest supported version 1.0

Python 环境管理推荐使用 Anaconda 。

Tensorflow

Tensorflow 支持较为完善,直接使用 apt 安装即可。具体方法如下:

安装相关包 sudo apt update sudo apt install rocm-libs miopen-hip cxlactivitylogger apt 安装 sudo apt install wget python3-pip # Pip3 install the whl package from PyPI pip3 install --user tensorflow-rocm PyTorch 安装依赖包 rocrand, hiprand, rocblas, miopen, miopengemm, rocfft, rocsparse, rocm-cmake, rocm-dev, rocm-device-libs,rocm-libs, hcc, hip_base,hip_hcc, hip-thrust Clone PyTorch repository git clone https://github.com/ROCmSoftwarePlatform/pytorch.git cd pytorch git submodule update --init --recursive 指定 GPU 型号 如下: 20190731163709.png.

通过设置环境变量,指明编译针对的GPU类型,设置为:export PYTORCH_ROCM_ARCH=gfx×××

‘Hipify’ PyTorch source. 将PyTorch中的CUDA函数 build 为ROCm中的hip函数 python tools/amd_build/build_amd.py 编译安装 export USE_NINJA=1 # 可选 USE_ROCM=1 USE_LMDB=1 BUILD_CAFFE2_OPS=0 BUILD_TEST=0 USE_OPENCV=1 MAX_JOBS=N python setup.py install

MAX_JOBS=N 中的 N 小于你的内存除以4.

torchvision git clone https://github.com/pytorch/vision cd vision python setup.py install cd .. 测试 PYTORCH_TEST_WITH_ROCM=1 python test/run_test.py --verbose

我的测试有一定的问题: 测试结果

Conclusion

AMD, YES!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3