炼丹速度×7!你的Mac电脑也能在PyTorch训练中用GPU加速了

liftword4个月前 (01-14)技术文章41

丰色 发自 凹非寺

量子位 | 公众号 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/

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一时间获知前沿科技动态

相关文章

Python写每天进步1%的力量

离别了学生时代,步入了职场,你还记得你离上一次打开书本是在什么时候吗?认真上课,看学习视频,静下心来,虽唾手可得,却似乎离我们越来越远。每天忙着忙着,不知道自己忙什么,只是连坐下来停下思考5分钟的时间...

用Python编写一个简单的计算器

本实战技能将创建多个函数,实现简单的 计算器功能。程序运行的时候,首先,会要求 用户选择运算的模式;其次,用户再输入待运 算的两个数字;最后,再调用函数将运行结果 展示出来。运行程序得到的结果如下图所...

python散装笔记——33: 函数(1)

ParameterDetailsarg1, ..., argN常规参数*args未命名的位置参数kw1, ..., kwN仅关键词参数**kwargs其余的关键字参数Python 中的函数提供了有组织...

Python常用算法(1)(原理+代码)——最全总结

算法就是为了解决某一个问题而采取的具体有效的操作步骤算法的复杂度,表示代码的运行效率,用一个大写的O加括号来表示,比如O(1),O(n)认为算法的复杂度是渐进的,即对于一个大小为n的输入,如果他的运算...

是时候学习Web开发了,1小时用Python开发一个博客系统

来源:麦叔编程作者:麦2叔开发一个包含数据库的简单网站系统是Web开发入门的最好方式。Flask是Python最热门的两个Web框架之一,是最简单易用,容易上手的框架。本系列使用Python的Flas...

第1天 | 25天学会wxPython,开发四部曲

wxPython是Python语言的一套优秀的GUI图形库,允许Python程序员很方便的创建完整的、功能键全的用户界面,它是优秀的跨平台GUI库 wxWidgets的Python封装。在Window...