知行编程网知行编程网  2022-07-12 13:00 知行编程网 隐藏边栏 |   抢沙发  105 
文章评分 0 次,平均分 0.0

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍

来自 | 机器之心

苹果「一呼百应」的号召力在机器学习领域似乎也不例外。新版 Mac 推出还不到两周,谷歌就把专为 Mac 优化的 TensorFlow 版本做好了,训练速度最高提升到原来的 7 倍。
对于开发者、工程师、科研工作者来说,Mac 一直是非常受欢迎的平台,也有人用 Mac 训练神经网络,但训练速度一直是一个令人头疼的问题。

上周,苹果发布了搭载 Arm 架构 M1 芯片的三款新 Mac,于是就有人想问:用它们训练神经网络能快一点吗?

今天,主流机器学习框架 TensorFlow 发文表示:我们专门做了一版为 Mac 用户优化的 TensorFlow 2.4 框架,M1 版 Mac 和英特尔版 Mac 都能用。这一举动有望大幅降低模型训练和部署的门槛。

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍


此前,在 Mac 上,TensorFlow 仅支持将 CPU 用于训练,但新的 tensorflow_macos 分支利用苹果的 ML Compute,能让 GPU 也被利用起来。苹果在博客中介绍说:「我们使用了更高级别的优化方法,比如熔合层,选择合适的设备类型,将图作为原语编译、执行并由 CPU 上的 BNNS 和 GPU 上的 Metal Performance Shader 加速。」

ML Compute 是苹果公司今年推出的新框架,可用于在 Mac 上进行 TensorFlow 模型的训练。现在,无论新的 M1 版 Mac 还是旧的英特尔版 Mac,其 CPU 和 GPU 都能用来加快训练速度。

M1 芯片包含新的 8 核 CPU 和最多 8 核的 GPU,并针对 Mac 的机器学习训练任务进行了优化。下面两张图表分别展示了针对 Mac 优化后的 TensorFlow 2.4 在不同模型训练中的性能提升:

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍



上图展示了使用 ML Compute 分别在搭载 M1 和英特尔芯片的 13 英寸 MacBook Pro 上进行机器学习训练的情况。柱形的高度代表单批次的训练时长。可以看出,优化后的 Mac 版 TensorFlow 2.4 的训练速度得到了明显提升。在换成 M1 版的新 MacBook Pro 之后,提升就更为明显了,训练速度最高提升了 7 倍。

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍


同样使用 ML Compute,在搭载英特尔芯片的 2019 Mac Pro 上进行常见模型的训练,性能提升也相当明显。

TensorFlow 官方表示,用户不需要对现有的 TensorFlow 脚本做任何更改,就可以使用 ML Compute 作为 TensorFlow 和 TensorFlow 插件的后端。

Mac 版 TensorFlow 2.4 的详细入门指南可以参见:https://github.com/apple/tensorflow_macos

M1 版 Mac 对机器学习用户的影响

苹果曾在发布会上介绍说,M1 芯片将苹果的神经网络引擎引入了 Mac,实现了 15 倍的机器学习任务加速。该神经网络引擎有 16 个核心,每秒运算速度可达 11 万亿次。除此之外,配置了 ML 加速器的 CPU 和强大 GPU(称霸集显,媲美部分独显)也使得整个 M1 芯片的机器学习能力得到巨大提升。

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍

图源:https://medium.com/disruptive-nerd/how-is-the-apple-m1-going-to-affect-machine-learning-2d9da1beef86

性能的提升毋庸置疑,但软件兼容也是一个很大的问题。在 M1 版 Mac 发布之后,不少开发者都在问:我的 VS Code/Docker/Juypter Notebook…… 还能在新 Mac 上用吗?

VSCode:最快月底就能做出来

在苹果发布会之后不久,微软 VS Code 团队就发文表示,「VS Code 将支持 ARM 版 Mac,11 月底可能推出首个预览版。」

Mac/ARM64 试验版地址 https://code.visualstudio.com/insiders/#osx

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍


此外,微软还宣布将发布一款新的通用版 Mac Office 2019,支持新版苹果处理器。

Docker:在安排,但还没准备好

在 11 月 16 日的一篇博客中,Docker 的开发者表示,他们还没有准备好让 Docker 在 M1 版 Mac 上运行,在这之前还需要做很多准备。

Docker 表示,「我们 Docker 的目标是在新的 Mac 上提供与今天在 Docker Desktop for Mac 上同样出色的体验,并使这种过渡尽可能地无缝。」「为我们的客户打造合适的体验意味着在我们推送一个版本之前,要把不少事情做好。虽然苹果已经发布了 Rosetta 2 转译器,以帮助将应用程序转移到新的 M1 芯片上,但这并不能让我们与 Docker Desktop 一路同行。」

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍


至于 Juypter Notebook 等软件,目前还没有官方消息放出。不过,随着苹果不断将生态打通,正在有越来越多的软件开发商表示将开发适配 M1 版 Mac 的新产品。

参考链接:
https://machinelearning.apple.com/updates/ml-compute-training-on-mac
https://medium.com/disruptive-nerd/how-is-the-apple-m1-going-to-affect-machine-learning-2d9da1beef86
https://www.docker.com/blog/apple-silicon-m1-chips-and-docker/

<section data-brushtype="text" style="padding-right: 0em;padding-left: 0em;white-space: normal;max-width: 100%;letter-spacing: 0.544px;color: rgb(62, 62, 62);font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;widows: 1;word-spacing: 2px;caret-color: rgb(255, 0, 0);text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong>完<strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong></span></strong></span></strong></section><pre style="padding-right: 0em;padding-left: 0em;max-width: 100%;letter-spacing: 0.544px;color: rgb(62, 62, 62);widows: 1;word-spacing: 2px;caret-color: rgb(255, 0, 0);text-align: center;box-sizing: border-box !important;overflow-wrap: break-word !important;"><pre style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;white-space: normal;font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-bottom: 15px;padding-right: 0em;padding-left: 0em;max-width: 100%;color: rgb(127, 127, 127);font-size: 12px;font-family: sans-serif;line-height: 25.5938px;letter-spacing: 3px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(0, 0, 0);box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;font-size: 16px;font-family: 微软雅黑;caret-color: red;box-sizing: border-box !important;overflow-wrap: break-word !important;">为您推荐</span></strong></span></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">一文了解深度推荐算法的演进</section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">干货 | 算法工程师超实用技术路线图</section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">13个算法工程师必须掌握的PyTorch Tricks</span></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">吴恩达上新:生成对抗网络(GAN)专项课程</span><br  /></section><section style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">拿到2021灰飞烟灭算法岗offer的大佬们是啥样的<span style="font-size: 14px;">?</span></section></section></section></section></section></section></section></section></section>

TensorFlow为新旧Mac特供新版本,GPU可用于训练,速度最高提升7倍

本篇文章来源于: 深度学习这件小事

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享