M2 MacBook Pro 深度学习避坑指南:还是老实上云吧

作为一名习惯用 Mac 写code的 牛马,本来其实对 M2 芯片的性能一直很满意,在低功耗下依然拥有很强的计算能力,运行大型数据分析和数值计算时稳定又安静。统一内存架构让数据处理更高效,系统流畅不卡顿。同时 macOS 稳定可靠,科研和编程环境成熟,日常使用和专业工作都特被省心。

——直到我开始跑这个新的深度学习模型

本来想着模型不算特别巨大,本地跑跑 Demo 应该没问题。结果现实狠狠打脸:风扇起飞就不说了,看一眼 tqdm 的进度条,训练一个 Epoch 竟然需要 4 分钟

在这里插入图片描述

算了一下,跑完一次实验得等到一天,忽然要一整天。而且这期间电脑基本处于“生活不能自理”的状态,啥也干不了。

实在受不了这个龟速,还是决定找个云 GPU 跑一下,万一可以提升点速度呢。随手搜索了个平台 优云智算, (内心os: 看的不仔细容易认成优云智障),云计算注册链接:https://passport.compshare.cn/register?referral_code=L2JbXJLGmhBEjrufO8OFB&ytag=GPU_YY_YX_csdn_persus

在这里插入图片描述

先看了下价格, RTX 4090 (24G) 一小时 2.08 元,主要是注册认证后就可以白嫖 10 元的,教育邮箱edu 邮箱可以有20 大洋,想着20块 跑10个小时左右,差不多就可以训练完模型了,白嫖真香,真香真香。

在这里插入图片描述

完成注册后,在部署GPU实例 中,选择需要用到的镜像,我选的是PyTorch ,部署完成后,上传图片和code, 开始训练模型。
在这里插入图片描述

境配置比预想的顺手,镜像选PyTorch 镜像。为了验证性能差异,特意记录了一下数据:

  • 本地环境:MacBook Pro (M2 芯片)
  • 云端环境:RTX 4090 / 24G显存,
  • 任务:同一套代码,Standard Training Loop

结果对比非常离谱:

环境 单 Epoch 耗时 备注
M2 MacBook ~ 4 分钟 电脑发烫,除了看进度条啥也干不了
云端 4090 ~ 4 秒 速度提升了近 40 倍,去打杯咖啡就跑完了

在这里插入图片描述

看到 3.3s/it 的时候,感觉我的生命被巨大的节省了。之前本地跑一天的量,云端不到一小时搞定。

体验:关于部署和传输

除了速度,顺便提两嘴大家关心的“云平台痛点”:

  1. 数据上传:这是最担心的环节(怕上传太慢),但实测这个平台还行,传数据集并没有卡很久,带宽给得比较足。
  2. 环境部署:基本没怎么折腾,PyTorch 环境是现成的,连上去把代码一拖就能跑。这种“开箱即用”的感觉确实比自己维护本地 CUDA 版本舒服。

成本:比预想的便宜

跑完模型结账的时候看了一眼价格表,因为跑了调整参数多次模型,因为有4个小时,赠送的20大洋,还剩下11.16,确实有点惊讶。现在的算力市场已经卷到这个地步了吗?

整理了一下他们家目前的价格(似乎在做活动),给学生党或者个人开发者做个参考:

  • 主力性价比(推荐)
    • 3090 (24G)¥ 1.13/小时。这个价格真的没谁了,只要显存够用,3090 绝对是目前性价比最高的卡,一杯蜜雪冰城能跑一下午。
    • 4090 (24G)¥ 1.98/小时。如果追求速度(像我这次),加几毛钱上 4090 很值。
  • 高端/尝鲜
    • 5090 (32G)¥ 3.00/小时。竟然已经有 5090 了,改天打算租一个小时跑个分过过瘾。
    • A100/H20:这些偏企业级(¥7-10/小时),做大模型微调的可以考虑。

也有更便宜的 2080 (8G) 只要 ¥ 0.32/小时,不过觉得现在跑深度学习,至少还是 3090 起步比较舒服。

值得注意的是,数据盘的挂载,是一直收费的,关机后也会收费,对于数据量没超过150GB 的任务,还是不挂载的好,比较节省money , 毕竟弹药有限。花小钱办大事(最好不花钱就办事) 是主要的宗旨。

白嫖党还是适合冲一下的,如果有教育邮箱的话,那就更香了,白嫖注册的链接为:云计算注册链接:https://passport.compshare.cn/register?referral_code=L2JbXJLGmhBEjrufO8OFB&ytag=GPU_YY_YX_csdn_persus

在这里插入图片描述

总结

这波折腾下来的结论是:专业的事还是交给专业的硬件。 虽然 M 系列芯片在推理和日常开发上很强,但真要“炼丹”,还是别为难笔记本了,还是要靠更强的生产力工具。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐