“阿里云推出GPU服务器竞价”
这对于像我这样永远缺钱的屌丝来说,无疑是天大的好消息!兴奋的我赶忙打开阿里云网站就去抢GPU服务器!
“GPU计算型,GPU可视化计算型”选哪个?
对于初次选购GPU的小白,我又朦逼了!等等,为什么要说“又”?不得不吐槽一下,阿里云的帮助文档做的的确不怎么样!在需要解释的地方,却惜字如金,写的竟是一些“高深”的概念词汇。
我去,琢磨了半天实在想不明白GPU计算型和GPU可视化计算型到底有啥区别,好吧,就让价格决定脑袋。
……
后面的悲剧相信各位看官已经料到了,GPU可视化计算型:是AMD推出的做图像处理,我“眼急手快(手贱)”的选了一台
完事后突然觉得好“惆怅”!但我还不甘心!怎么能让银子白花花的溜走?
Tensorflow不就支持AMD的GPU吗?
说干就干,巴拉巴拉,各种查资料:
原来tensorflow虽然号称支持AMD,但其实也没有N卡做的完善,需要自行安装第三方工具支持
1.安装AMD显卡驱动(这一步可以通过选择阿里云的开放免费镜像搞定)
2.安装ComputeCpp,按照官方安装文档一撸到底即可;
3.安装OpenCL,这一步也没啥好说的,一撸到底;
4.从源码编译安装Tensorflow:
这步也就是有坑的地方:tensorflow的pip版默认仅支持N卡(cuda),需要手工编译opencl版
测试:
bazel test --config=sycl:using_sycl_ccpp -k --test_timeout 1600 -- //tensorflow/... -//tensorflow/contrib/... -//tensorflow/java/... -//tensorflow/compiler/...
bazel build -c opt --config=sycl tensorflow/core/kernels:matmul_op_test
编译pip版本:
bazel build -c opt --config=sycl //tensorflow/tools/pip_package:build_pip_package
bazel build -c opt --config=sycl:using_sycl_ccpp //tensorflow/tools/pip_package:build_pip_package
生成pip文件:
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
注意,这里的ccpp即指ComputerCpp,tensorflow通过OpenCL调用ComputerCpp,而ComputerCpp将服务器上的CPU和GPU综合在一起进行调度计算,看起来是不是很酷?
5.验证安装
执行一下Top命令,发现CPU都被调度起来了:
在执行一下radeontop命令,发现显卡图像管道里有数据:
唯一不理想的发现,这个显卡的利用率好像不是很高。
没办法了,将就着用吧。
好了,终于,我的小毛驴动起来了。