当前栏目
PyTorch1.8正式支持AMD,炼丹不必NVIDIA
本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。
1.8版本中,官方终于加入了对AMD ROCm的支持,可以方便的在原生环境下运行,不用去配置Docker了。
AMD ROCm只支持Linux操作系统
1.8版本集合了自2020年10月1.7发布以来的超过3000次GitHub提交。
此外,本次更新还有诸多亮点:
- 优化代码,更新编译器
- Python内函数转换
- 增强分布式训练
- 新的移动端教程与演示
- 新的性能检测工具
相关的库TorchCSPRNG, TorchVision, TorchText和TorchAudio也会随之更新。
要注意的是,自1.6起,Pytorch新特性将分为Stable、Beta、Prototype三种版本。其中Prototype不会包含到稳定发行版中,需要从Nightly版本自行编译。
Python to Python函数转换
新增的Beta特性torch.fx可以实现Python到Python的函数转换,可以方便的加入任何工作流程。
![PyTorch1.8正式支持AMD,炼丹不必NVIDIA](https://s5.51cto.com/oss/202103/05/e67bfd4bdd71de379125885d01dce692.jpg)
新的API,向NumPy学习!
1.7版本中增加的Beta特性torch.fft已成为正式特性。实现了与Numpy中的np.fft类似的快速傅立叶变换,还增加了硬件加速支持与自动求导,以更好的支持科学计算。
还增加了Beta版NumPy风格的线性代数模块torch.linalg,支持Cholesky分解、行列式、特征值等功能。
增强分布式训练
增加了稳定的异步错误与超时处理,增加NCCL的可靠性。
增加了Beta版的流水线并行功能*(Pipeline Parallelism)*,可将数据拆解成更小的块以提高并行计算效率。
Pipeline Parallelism使用4个GPU时的工作示意图
增加Beta版的DDP通讯钩子,用于控制如何在workers之间同步梯度。
另外还有一些Prototype版的分布式训练新特性。
ZeroRedundancyOptimizer:用于减少所有参与进程的内存占用。
Process Group NCCL Send/Recv:让用户可在Python而不是C++上进行集合运算。
CUDA-support in RPC using TensorPipe:增加对N卡多卡运算的效率。
Remote Module:让用户像操作本地模块一样操作远程模块。
移动端新教程
随本次更新发布了图像分割模型DeepLabV3在安卓和IOS上的详细教程。
以及图像分割、目标检测、神经机器翻译等在安卓和IOS上的演示程序,方便大家更快上手。
![PyTorch1.8正式支持AMD,炼丹不必NVIDIA](https://s2.51cto.com/oss/202103/05/484b5f339e2c8917f8680e05a121d96a.jpg)
![PyTorch1.8正式支持AMD,炼丹不必NVIDIA](https://s5.51cto.com/oss/202103/05/66c1ea21eadd64f0ffa36e141cd30552.jpg)
![PyTorch1.8正式支持AMD,炼丹不必NVIDIA](https://s3.51cto.com/oss/202103/05/d0645b743c8b9c658ac7119fa9666eee.jpg)
另外还有PyTorch Mobile Lite Interpreter解释器,可以减少运行时文件的大小。
性能检测工具
增加Beta版的Benchmark utils,用户可以进行精确的性能测试。
以及Prototype版的FX Graph Mode Quantization,实现了量化过程的自动化。
相关文章
- 鲜为人知但很有用的 HTML 属性
- 翻转再翻转!有意思的水平横向溢出滚动
- 自定义计数器小技巧!CSS 实现长按点赞累加动画
- 过五关!React高频面试题指南
- 软件开发中的十个认知偏差
- 不需要 JS!仅用 CSS 也能达到监听页面滚动的效果!
- 一文读懂TypeScript类型兼容性
- Vue 的响应式原则与双向数据绑定
- 快速掌握 TypeScript 新语法:Infer Extends
- JWT教你如何证明你是我的人!
- 一篇带给你 V8 GC 的实现
- 面试官:请使用JS完成一个LRU缓存?
- 通过可视化来学习JavaScript事件循环
- 新的跨域策略:使用 COOP、COEP 为浏览器创建更安全的环境
- 为什么有人说 vite 快,有人却说 vite 慢?
- 种草 Vue3 中几个好玩的插件和配置
- 超全面的前端工程化配置指南
- Vue 状态管理未来样子
- Volatile关键字能保证原子性么?
- 面试突击:SpringBoot 有几种读取配置文件的方法?