本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。
一直以来,Pytorch在Mac上仅支持使用CPU进行训练。
就在刚刚,Pytorch官方宣布,其最新版v1.12可以支持GPU加速了。
只要是搭载了M1系列芯片的Mac都行。
这也就意味着在Mac本机用Pytorch“炼丹”会更方便了!
训练速度可提升约7倍
此功能由Pytorch与Apple的Metal工程团队合作推出。
它使用Apple的Metal Performance Shaders(MPS) 作为PyTorch的后端来启用GPU加速训练。
为了优化计算性能,MPS还针对Metal GPU系列的独特特性对每个内核进行了微调。
Metal是一个类似OpenGL的框架,只不过OpenGL适用于各平台的移动端GPU渲染和计算,Metal专用于iOS/MacOS平台,不过也兼顾了性能和易用性。
MPS就是一套基于Metal框架的库,直接调用即可使用GPU的高性能进行图形处理、构建卷积神经网络等工作。
苹果官方在搭载了M1 Ultra、20核CPU、64核GPU、128GB RAM和2TB SSD的Mac Studio上进行了测试。
(这阵容差不多能算是豪华配置了)。
他们分别训练了batch size为128的ResNet50、batch size为64的HuggingFace BERT,以及batch size=64的VGG16。
从下图中我们可以发现,相比使用CPU加速,使用GPU可将模型训练速度提高约7倍,评估(evaluation)速度则最高能提约20倍。
看到这儿,有网友开始好奇它与搭载了Nvidia GPU的laptop相比性能如何。
有人表示,虽说目前M1的原始计算性能比不上英伟达的产品,但功耗方面还不错。未来苹果很有可能慢慢追上性能。
总的来说,Mac Studio现在看起来实在太香了。
他进一步解释道:
“毕竟它是你花4800美元就能买到的最便宜、包含128GB GPU内存的机器。现在有了基于GPU加速的PyTorch支持,完全可以用来训练大模型、配置大的batch size。
对于我所做的那种DL工作,数据加载比实际的原始计算能力更容易成为瓶颈。”
你心动了吗?
现在就试试?
只需保证你的macOS操作系统在12.3版本及以上,且安装了arm64原生Python,然后去官网下载最新的Pytorch预览版就可以了。
地址:
https://pytorch.org/blog/introducing-accelerated-pytorch-training-on-mac/