记无聊安装M1原生GPU的tensorflow及pytorch

记安装原生M1的深度学习框架

换了M1的电脑,想试一下M1的GPU跑深度学习。目前只有tensorflow原生适配了Apple silicon,无奈又从pytorch转回tensorflow。本来最早受不了tensorflow1.0到2.0的颠覆改变转头到pytorch的怀抱,气死我了。但谁叫我现在对英伟达无好感了,准备完全脱离Nvidia显卡。

参考Apple的官方教程https://developer.apple.com/metal/tensorflow-plugin/
这个是pytorch的下载教程 https://developer.apple.com/metal/pytorch/

首先下载安装anaconda,据官方说明anaconda中的一些库无法在arm上运行,所以在M1上建议我们使用轻量型的Miniforge下载下来,来到终端按顺序输入下面两行

chmod +x ~/Downloads/Miniforge3-MacOSX-arm64.sh
sh ~/Downloads/Miniforge3-MacOSX-arm64.sh

记无聊安装M1原生GPU的tensorflow及pytorch_第1张图片

在安装过程中一直按enter阅读,要打字的话就写yes。
之后搞笑了,我想着安装好了conda应该能被识别到了,结果报错找不到。还明明有那个文件。

后来才发现还差生效的一行代码,差点出师不利身先死。

source ~/Downloads/Miniforge3-MacOSX-arm64.sh

出现图片中的内容和熟悉的"base"说明anaconda安装成功。

老规矩,先创建一个新环境。

conda create -n tf2.6 python==3.8

我感觉是我没换源导致的又换了个源。

conda config -add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config -set show_channel_urls ves

还是下载不了,一气之下把python版本改成3.9居然可以了,因为我喜欢赶潮流,现在都用3.10。

conda create -n tf2.6 python==3.9

后面激活环境并安装依赖的tensorflow-deps,现在默认下载的是2.6,也可以指定2.5版本,具体操作看官网,下错了请卸掉再下载。

conda activate tf2.6
conda install -c apple tensorflow-deps

记无聊安装M1原生GPU的tensorflow及pytorch_第2张图片

下载速度有点慢的估计是用了Apple的源的问题。我中途看电影去了就没啥感觉,但因为电脑黑屏,有一个包没下成功再下了第二遍。
安装tensorflow,这边官方那里有写macos11以前的电脑需要注意。

python -m pip install tensorflow-macos

请添加图片描述

安装metal插件,我理解的metal是Apple的API,相当于cuda。

python -m pip install tensorflow-metal

请添加图片描述

好了这样我们就可以调用M1的GPU来炼丹了,检查一下tensorflow有没有安装成功。
记无聊安装M1原生GPU的tensorflow及pytorch_第3张图片
附简单的对比图
结论暂时不指望M系列跑神经网络了,希望Apple之后会和tensorflow越来越优化。。。
图附的1070可能因为当时还开着别的游戏进程导致的速度不如1060.
记无聊安装M1原生GPU的tensorflow及pytorch_第4张图片

你可能感兴趣的:(神经网络,tensorflow,深度学习)