上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 31 下一页
摘要: 本系列介绍分布式优化器,分为三篇文章,分别是基石篇,DP/DDP/Horovod 之中数据并行的优化器,PyTorch 分布式优化器,按照深度递进。本文介绍数据并行DP/DDP/Horovod 之中的优化器。 阅读全文
posted @ 2021-12-08 19:36 罗西的思考 阅读(1532) 评论(0) 推荐(2) 编辑
摘要: 我们接下来通过几篇文章来看看分布式优化器。本系列分为三篇文章,分别是基石篇,DP/DDP/Horovod 之中数据并行的优化器,PyTorch 分布式优化器,按照深度递进。 本文是基石篇,通过本文,大家可以了解到模型的构造,优化器的基本原理,两者之间的交互,如何优化更新模型等等,这为后面的逐级分析打下了一个基础。 阅读全文
posted @ 2021-12-07 19:26 罗西的思考 阅读(1444) 评论(1) 推荐(0) 编辑
摘要: 上文我们介绍了引擎如何获得后向计算图的依赖,本文我们就接着看看引擎如何依据这些依赖进行后向传播。 阅读全文
posted @ 2021-12-06 18:12 罗西的思考 阅读(1139) 评论(0) 推荐(1) 编辑
摘要: 上文已经分析了如何启动/接受反向传播,如何进入分布式autograd 引擎,本文和下文就看看如何分布式引擎如何运作。通过本文的学习,读者可以对 dist.autograd 引擎基本静态架构和总体执行逻辑有所了解。 阅读全文
posted @ 2021-12-04 10:11 罗西的思考 阅读(800) 评论(0) 推荐(1) 编辑
摘要: 上文我们看到了AutogradMetadata,DistAutogradContainer 和 DistAutogradContext 等一系列基础类。我们知道了分布式autograd如何基于RPC进行传递,如何在节点之间交互,节点如何区分维护这些Session。本文继续分析,主要目的是看看反向传播如何切入到引擎之中。 阅读全文
posted @ 2021-12-03 08:59 罗西的思考 阅读(650) 评论(0) 推荐(1) 编辑
摘要: 我们已经知道 dist.autograd 如何发送和接受消息,本文再来看看如何其他支撑部分,就是如何把发送接受两个动作协调起来,如何确定每个发送/接受节点,如何确定每一个消息交互Session。 阅读全文
posted @ 2021-12-01 21:08 罗西的思考 阅读(706) 评论(0) 推荐(0) 编辑
摘要: 前文我们给出了分布式autograd的设计思路,本文开始,我们进行具体源码分析。因为无论是前向传播还是反向传播,都需要依赖 RPC 来完成,所以我们先看看封装于 RPC 之上的一些基本功能,比如初始化,代理(RPC 相关功能都是基于代理完成),消息接受,发送等等。 阅读全文
posted @ 2021-11-30 19:50 罗西的思考 阅读(1158) 评论(0) 推荐(2) 编辑
摘要: 本文以几篇PyTorch官方文档为基础来了解分布式 autograd 的设计和内部结构,在翻译时并没有逐字翻译,其中加入了自己的部分理解。分布式 autograd 后续文章的分析也会基于本文进行。 阅读全文
posted @ 2021-11-29 20:18 罗西的思考 阅读(1785) 评论(0) 推荐(2) 编辑
摘要: 上文我们已经对Reduer的前向传播进行了分析,本文就接着来看看如何进行反向传播。 阅读全文
posted @ 2021-11-28 10:40 罗西的思考 阅读(2174) 评论(1) 推荐(1) 编辑
摘要: 前文已经对Reducer如何构建和几个重要场景做了介绍,本文就来分析 Reducer 如何实现前向传播。 阅读全文
posted @ 2021-11-27 10:17 罗西的思考 阅读(3970) 评论(2) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 31 下一页
点击右上角即可分享
微信分享提示