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

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.先来更新一下系统环境

sudo apt update
sudo apt dist-upgrade

2.安装libnuma

sudo apt install libnuma-dev

3.重启系统

sudo reboot 

4.安装ROCm apt存储库

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

ROCm与tensorflow在ubuntu 18.04下的安装教程_第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

sudo apt update
sudo apt install rocm-dkms

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

ROCm与tensorflow在ubuntu 18.04下的安装教程_第2张图片

6.设置权限

groups
sudo usermod -a -G video $LOGNAME

7.重启

8.检查安装是否成功

/opt/rocm/bin/rocminfo

在终端命令行输入上面命令,如果安装成功,会在输出的HSA系统属性中显示GPU的信息。
ROCm与tensorflow在ubuntu 18.04下的安装教程_第3张图片

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

ROCm与tensorflow在ubuntu 18.04下的安装教程_第4张图片

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

9.将ROCm添加进path

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

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

五、安装tensorflow

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

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

然后安装tensorflow

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

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

六、benchmark测试

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

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

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

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

这里是训练resnet50网络,具体成绩如下:
ROCm与tensorflow在ubuntu 18.04下的安装教程_第6张图片
在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?

你可能感兴趣的:(ROCm,tensorflow)