11 2021 档案

摘要:前文我们给出了分布式autograd的设计思路,本文开始,我们进行具体源码分析。因为无论是前向传播还是反向传播,都需要依赖 RPC 来完成,所以我们先看看封装于 RPC 之上的一些基本功能,比如初始化,代理(RPC 相关功能都是基于代理完成),消息接受,发送等等。 阅读全文
posted @ 2021-11-30 19:50 罗西的思考 阅读(1081) 评论(0) 推荐(2) 编辑
摘要:本文以几篇PyTorch官方文档为基础来了解分布式 autograd 的设计和内部结构,在翻译时并没有逐字翻译,其中加入了自己的部分理解。分布式 autograd 后续文章的分析也会基于本文进行。 阅读全文
posted @ 2021-11-29 20:18 罗西的思考 阅读(1702) 评论(0) 推荐(2) 编辑
摘要:上文我们已经对Reduer的前向传播进行了分析,本文就接着来看看如何进行反向传播。 阅读全文
posted @ 2021-11-28 10:40 罗西的思考 阅读(1990) 评论(1) 推荐(1) 编辑
摘要:前文已经对Reducer如何构建和几个重要场景做了介绍,本文就来分析 Reducer 如何实现前向传播。 阅读全文
posted @ 2021-11-27 10:17 罗西的思考 阅读(3847) 评论(2) 推荐(0) 编辑
摘要:因为前文已经围绕Reducer相关的各种成员变量做了相关分析,所以本文和下文开始做动态逻辑分析,目的是:把前面几篇文章串联起来。 阅读全文
posted @ 2021-11-25 08:54 罗西的思考 阅读(2910) 评论(4) 推荐(2) 编辑
摘要:通过上文分析,我们已经知道了 DDP 的基本架构和如何初始化,本文就看看其核心 Reducer 的静态架构。 阅读全文
posted @ 2021-11-23 20:21 罗西的思考 阅读(2306) 评论(0) 推荐(0) 编辑
摘要:前文我们对DDP的一些支撑模块已经做了介绍,这为本文做了必要的铺垫,本文就开始介绍Python世界代码和C++世界的初始化部分。下文介绍C++世界的核心代码。 阅读全文
posted @ 2021-11-22 20:10 罗西的思考 阅读(4076) 评论(1) 推荐(1) 编辑
摘要:本文是PyTorch分布式的第8篇,工欲善其事,必先利其器,为了更好的分析代码,我们先来学习一下相关论文。 阅读全文
posted @ 2021-11-21 16:24 罗西的思考 阅读(2239) 评论(2) 推荐(0) 编辑
摘要:本文是 PyTorch 分布式系列的第七篇, 介绍 DistributedDataParallel 所依赖的进程组概念。 阅读全文
posted @ 2021-11-20 09:40 罗西的思考 阅读(4124) 评论(3) 推荐(2) 编辑
摘要:本文是 PyTorch 分布式系列的第六篇, 介绍 DistributedDataParallel 所依赖的初始化方法和Store这两个概念。 阅读全文
posted @ 2021-11-18 20:13 罗西的思考 阅读(5155) 评论(0) 推荐(1) 编辑
摘要:本文是 PyTorch 分布式系列的第五篇,以几篇官方文档的翻译为基础,带领大家进入DistributedDataParallel,在后续会用5~6篇左右做深入分析。 阅读全文
posted @ 2021-11-17 08:26 罗西的思考 阅读(4269) 评论(0) 推荐(1) 编辑
摘要:本文以 PyTorch 官方文档 https://pytorch.org/tutorials/intermediate/dist_tuto.html 为基础,对如何编写分布式进行了介绍,并且加上了自己的理解。 阅读全文
posted @ 2021-11-13 09:23 罗西的思考 阅读(5573) 评论(0) 推荐(2) 编辑
摘要:本文是 PyTorch 分布式的第三篇,继续上文,介绍 DataPrallel 的并行操作和反向传播。 阅读全文
posted @ 2021-11-11 08:39 罗西的思考 阅读(1970) 评论(2) 推荐(3) 编辑
摘要:从本文开始,我们介绍 PyTorch 的数据并行,本文是第一篇,介绍 DataPrallel,因为字数太多(1万两千多字,因此拆分成两篇文章发布)。 阅读全文
posted @ 2021-11-09 20:11 罗西的思考 阅读(2912) 评论(0) 推荐(1) 编辑
摘要:在 PyTorch DataParallel 训练过程中,其会在多个GPU之上复制模型副本,然后才开始训练。笔者在分析过程中,发现如果不把一些GPU相关基础知识整理出来,很难理解DataParallel的这个复制模型的过程,遂有此文。 阅读全文
posted @ 2021-11-07 09:14 罗西的思考 阅读(5909) 评论(2) 推荐(1) 编辑
摘要:本文主要在对PyTorch官方文档的翻译之上加入了自己的理解,希望给大家一个PyTorch分布式的历史脉络和基本概念,有兴趣的朋友可以仔细研究一下历史,看看一个机器学习系统如何一步一步进入分布式世界 / 完善其功能。 阅读全文
posted @ 2021-11-03 08:58 罗西的思考 阅读(4479) 评论(0) 推荐(1) 编辑
摘要:前文中我们介绍了反向传播引擎的动态逻辑,因为具体反向传播算法是在设备线程中完成的,所以我们单独用一章来讲解。 阅读全文
posted @ 2021-11-01 08:47 罗西的思考 阅读(1456) 评论(0) 推荐(1) 编辑