Fate Studio.

ROCm与tensorflow在ubuntu 18.04下的安装教程

字数统计: 1k阅读时长: 4 min
2019/06/17 Share

ROCm与tensorflow在ubuntu 18.04下的安装教程

    本来准备买Nvidai的显卡,可是囊中羞涩再加上听说AMD的卡也能使用tensorflow进行深度学习加速了,所以1149京东买了个蓝宝石RX580 8G 白金版。网上找安装教程时发现教程非常少,所以决定写一篇详细的安装攻略,以便下次重装系统时少走弯路。

一、计算机配置环境

CPU:  intel i7 8700
GPU:  AMD RX580 8G
内存:  8G*2 DDR4 2400MHZ
硬盘:  SSD 120G
主板:  华硕ROG B360
电源:  安钛克550W
操作系统:  Ubuntu 18.04 (不要先装Anaconda,装了也没关系解决办法,
解决办法点击跳转) 安装ROCm版本:最新2.5(截止2019.06.10)
tensorflow版本:1.13

二、ROCm介绍

    github地址社区地址相关blog

    ROC全称为Radeon Open Compute,即为“Radeon开放计算”,其中Radeon为AMD GPU的一个系列。
    ROCm 全称ROC platforM,是基于一系列开源项目的AMD GPU计算生态平台。类似于NVIDIA家的CUDA。截止2019.06,ROCm版本已经发布到2.5,支持的深度学习框架有Tensorflow、Caffe、Pytorch。
    MIOpen:AMD发布的深度学习加速库,相当于NVIDIA家的cuDNN深度学习加速库,其实是根据cuDNN移植过来的。
    HSA,Heterogeous system architecture(异构系统架构)可以理解为在硬件系统(CPU、GPU、ARM等不同架构处理器)之上的一套统一编程环境,比如相同的代码使用HSA可以在不同硬件平台运行。起初是MD 等为支持 CPU+GPU 混合计算生态而成立了非赢利组织 HSA 基金,提供 runtime 和架构 API 标准。现成员包括 AMD、三星、高通、ARM、TI、Imagination、MTK等。

三、ubuntu下安装ROCm

1.先来更新一下系统环境

1
2
sudo apt update
sudo apt dist-upgrade

2.安装libnuma

1
sudo apt install libnuma-dev

3.重启系统

1
sudo reboot

4.安装ROCm apt存储库

1
wget -qO - http://repo.radeon.com/rocm/apt/debian/rocm.gpg.key | sudo apt-key add -

安装后结果

1
echo 'deb [arch=amd64] http://repo.radeon.com/rocm/apt/debian/ xenial main' | sudo tee /etc/apt/sources.list.d/rocm.list

安装结果图

5.更新apt库list并且安装ROCm

1
2
sudo apt update
sudo apt install rocm-dkms

下载大概504M的内容,然后解压后需要2336M空间。
使用ubuntu自带源有点慢呀!500M下了半个小时。

安装完成

6.设置权限

1
groups
1
sudo usermod -a -G video $LOGNAME

7.重启

8.检查安装是否成功

1
/opt/rocm/bin/rocminfo

在终端命令行输入上面命令,如果安装成功,会在输出的HSA系统属性中显示GPU的信息。
安装验证

1
/opt/rocm/opencl/bin/x86_64/clinfo

安装验证

如果上面都能显示GPU的信息的话,说明已经安装成功,如果没有的话点击install issue查找原因。

9.将ROCm添加进path

1
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

OK!安装完成了。

四、卸载ROCm

1
sudo apt autoremove rocm-dkms rocm-dev rocm-utils

五、安装tensorflow

ROCm安装完成后,选择安装tensorflow,目前ROCm支持的tensorflow的版本是1.13。
安装tensorflow之前要先安装一些依赖。

1
2
sudo apt update
sudo apt install rocm-libs miopen-hip cxlactivitylogger

然后安装tensorflow

1
2
sudo apt install python3-pip
pip3 install --user tensorflow-rocm

安装过程有点慢!!, 特别注意:一定不要先安装Anaconda,不然没法用。
安装了怎么办?办法一:卸载Anaconda3
方法二:使用Docker
安装之后验证一下,终端依次输入:
python3
import tensorflow as tf
如果没有提示错误的话就安装成功了。
安装成功
官方指导文档
包括MNIST、CIFAR-10等网络的使用。

六、benchmark测试

要git,Google官方提供的基准测试的文件。

1
git clone -b cnn_tf_v1.13_compatible https://github.com/tensorflow/benchmarks.git

其中v1.13是安装的tensorflow的版本,我这里安装的是1.13。
之后:

1
2
cd benchmarks
python3 ./scripts/tf_cnn_benchmarks/tf_cnn_benchmarks.py --model=resnet50 --num_gpus=1

这里是训练resnet50网络,具体成绩如下:
benchmark成绩
在github上有个ROCm与NVIDIA的cuDNN的性能讨论,去看看

参考:
AMD ROCm平台简介
AMD ROCm官方网页
AMD ROCm Github地址
ROCm说明文档
Tendorflow/benchmarks
ROCm/tensorflow-upstream
Performance comparsion:AMD with ROCm VS NVIDIA with cuDNN?

CATALOG
  1. 1. ROCm与tensorflow在ubuntu 18.04下的安装教程
    1. 1.1. 一、计算机配置环境
    2. 1.2. 二、ROCm介绍
    3. 1.3. 三、ubuntu下安装ROCm
      1. 1.3.1. 四、卸载ROCm
    4. 1.4. 五、安装tensorflow
    5. 1.5. 六、benchmark测试