苹果M1在训练机器学习模型上的速度提高了3.6倍

2020-12-16 05:55:47

几周前,苹果发布了首款针对Mac的定制设计硅芯片M1。与基于Intel的前代产品相比,其性能方面有多个令人印象深刻的基准,但我们有兴趣通过它在机器学习(特别是计算机视觉)工作负载方面进行测试。

尽管Apple宣布支持在M1上进行TensorFlow培训,但该工具链尚未完全准备好。例如,通过一些努力,我们能够使Jupyter笔记本在Apple Silicon上运行,但是TensorFlow for Mac的预发布版本尚未准备好在黄金时段使用(特别是SciPy与M1不兼容TensorFlow的对象检测API是必需的)。

相反,我们使用Apple的CreateML来执行基准测试。一旦兼容性问题最终在几个月后得到解决,这应该是您在训练机器学习模型时可以期望的相对性能的合理比较。 (据推测,苹果公司已经为他们的英特尔和M1设备进行了优化CreateML的工作。)

不幸的是,由于CreateML与NVIDIA芯片不兼容,因此它仍然无法与我们在新M1和3090或2080ti之间进行良好的正面对比(苹果声称M1和M1 #39;的神经引擎与NVIDIA声称2080ti的14.2 TOPS相比)。

在您决定是否购买新的M1笔记本电脑时-笔记本电脑刚刚降价了" –我们着手估算Apple M1笔记本电脑相对于其上一代机器的性能如何。英特尔CPU和AMD Radeon GPU。这值得么?

TL; DR:如果您要解决Mac上的机器学习和计算机视觉问题,一旦所需的软件兼容后,Apple M1可能值得升级,但尚未准备好更换离散GPU。

MacBook Pro 13英寸(2020年11月)M1集成系统,内存为8GB。 $ 1,499

MacBook Pro 13英寸(2020年5月)1.4 GHz四核Intel Core i5,配备16GB内存和Intel Iris Plus Graphics 645(1536MB图形内存)。 $ 1,699

MacBook Pro 16英寸(2019)2.4 GHz 8核Intel Core i9,配备64GB内存和AMD Radeon Pro 5500M(8GB图形内存)。 $ 3,899

为了比较性能,我们使用Create ML解决了无代码对象识别问题。 (想要重新创建它吗?我们在这里写出了步骤。)

我们使用Create ML来拟合5,000个纪元以上的YOLOv2对象检测模型,批处理大小为32。

根据模型的性能,我们可能还没有准备好将其部署到野外。 (如果您想了解如何部署模型,请观看此视频。)但是,进行5,000次迭代足以使我们更好地了解两个系统之间的性能对比。

对于“创建ML”中的此对象检测任务,13"由Apple M1驱动的Macbook Pro的性能明显优于13"。英特尔酷睿i5,但表现不及15" i9及其独立的Radeon Pro 5500M GPU。

值得注意的是,培训无法利用集成的Intel Iris图形卡来加快培训速度,但它能够部分利用M1上的集成图形卡。对于片上系统而言,这是非常令人印象深刻的。

不幸的是,尽管AMD Radeon在15"上可以达到100%的利用率。 Macbook Pro,13" M1从未使利用率超过10%。尽管在纸张上速度更快,但仍需要更多的软件改进以利用其硬件。苹果公司将继续通过其TensorFlow端口和ML Compute框架积极开展工作。

看起来Apple仍然需要对Apple进行重要的软件优化,以充分利用M1中的原始功能。它最终应该能够像i9一样充分利用其GPU。到那时,它可能会轻易胜过它。

购买新笔记本电脑时,需要考虑很多因素。用Create ML拟合对象检测模型仅仅是一种。但是,当在2020年将这两款笔记本电脑相互竞争以应对这项任务时,Apple M1似乎是一个很有前途的架构,随着软件更新以利用它,它应该会更好。但是,就目前而言,我计划在事情解决之前暂缓进行。