Loading...

参考链接


MPS介绍

Mac M2芯片为了追求高性能和节能,在底层设计上使用的是一种叫做arm架构的精简指令集,不同于Intel等常用CPU芯片采用的x86架构完整指令集。所以有些基于x86指令集开发的软件不能直接在Mac M2芯片电脑上使用。)

需要注意的是,使用Mac M2芯片加速 pytorch 不需要安装 cuda后端,因为cuda是适配nvidia的GPU的,Mac M2芯片中的GPU适配的加速后端是mps,在Mac对应操作系统中已经具备,无需单独安装。只需要安装适配的pytorch即可。


其实从这里可以看到,俺们mac用户是用不了cuda的T.T:

MPS使用

首先要具备arm64的Python,以及1.12版本以上的pytorch
mps用法和cuda很像,只是将“cuda”改为“mps”


测试mps使用可用:

1
2
3
import torch
print(torch.backends.mps.is_available())
print(torch.backends.mps.is_built())

如果输入以下结果,则证明可用:

1
2
True#表示macOS版本支持
True#表示mps可用

改动区别:

1
2
3
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

device = torch.device('mps' if torch.backends.mps.is_available() else 'cpu')