Pytorch并行处理机制
本文属转载,原文地址:https://www.jianshu.com/p/9e36e5e36638?utm_source=oschina-app
Pytorch 的多 GPU 处理接口是
torch.nn.DataParallel(module, device_ids)
,其中module
参数是所要执行的模型,而device_ids
则是指定并行的 GPU id 列表。
而其并行处理机制是,首先将模型加载到主 GPU 上,然后再将模型复制到各个指定的从 GPU 中,然后将输入数据按 batch 维度进行划分,具体来说就是每个 GPU 分配到的数据 batch 数量是总输入数据的 batch 除以指定 GPU 个数。每个 GPU 将针对各自的输入数据独立进行 forward 计算,最后将各个 GPU 的 loss 进行求和,再用反向传播更新单个 GPU 上的模型参数,再将更新后的模型参数复制到剩余指定的 GPU 中,这样就完成了一次迭代计算。所以该接口还要求输入数据的 batch 数量要不小于所指定的 GPU 数量。
这里有两点需要注意:
- 主 GPU 默认情况下是 0 号 GPU,也可以通过
torch.cuda.set_device(id)
来手动更改默认 GPU。 - 提供的多 GPU 并行列表中需要包含有主 GPU。
------------------------END-------------------------------
Pytorch并行处理机制相关推荐
- Pytorch 多 GPU 并行处理机制
Pytorch 的多 GPU 处理接口是 torch.nn.DataParallel(module, device_ids),其中 module 参数是所要执行的模型,而 device_ids 则是指 ...
- 【收藏】万字综述,核心开发者全面解读PyTorch内部机制
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:Edward Z.Yang,Pytorch核心开发者 斯坦福大学博 ...
- 综述|核心开发者全面解读Pytorch内部机制
↑ 点击蓝字 关注视学算法 作者丨Edward Z. Yang 来源丨机器之心 编辑丨极市平台 极市导读 Edward Z. Yang 是PyTorch开源项目的核心开发者之一.在PyTorch纽约聚 ...
- 全面解读PyTorch内部机制
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|深度学习这件小事 斯坦福大学博士生与 Facebook ...
- 万字综述,核心开发者全面解读PyTorch内部机制
选自ezyang博客 作者:Edward Z. Yang 机器之心编译 参与:panda 斯坦福大学博士生与 Facebook 人工智能研究所研究工程师 Edward Z. Yang 是 PyTorc ...
- 一文搞懂 PyTorch 内部机制
文 | ArchWalker 译者序:这篇博文是一篇非常新的介绍PyTorch内部机制的文章,作者Edward Z Yang来自于Stanford大学,是PyTorch的核心开发者之一.文章中介绍了如 ...
- pytorch并行处理详解(多GPU,环境变量)
目录 数据并行 方法一:环境变量 + device + to(device) 第一步,指定*备选*的GPU 直接终端中设定: python代码中设定: 第二步,创建设备(device) 第三步,将da ...
- pytorch hook机制
pytorch_hook机制 文章目录 pytorch_hook机制 前言 一.hook简介 二.Tensor的hook机制 三.基于Module的hook机制 register_forward_ho ...
- x265笔记_3_并行处理机制
文章目录 HEVC中的并行处理技术 功能并行和数据并行 HEVC解码端的并行处理框架 HEVC中编码单元数据之间的依赖关系 HEVC编解码的并行策略 Tile级别的并行策略 CTB级别的并行策略/波前 ...
- 想读读PyTorch底层代码?这份内核机制简介送给你
学习 PyTorch 比较简单,但你能学习 PyTorch 内部机制吗?最近,有 14 年 ML 经验的大神 Christian 介绍了 PyTorch 的内核机制.虽然在实际使用中并不需要这些知识, ...
最新文章
- 给Python代码加上酷炫进度条的几种姿势
- 单网卡部署WEB+Mail+FTP+ISA服务器之四:局域网内部署FTP和winwebmail服务器
- 前端开发中Cookie那些事儿
- hashCode之一--两个对象值相同,有相同的hash code
- 1 分钟教会你用 Spring Boot 发邮件
- 奖学金pascal程序
- jenkins linux虚拟机,Linux系统中jenkins使用的简单介绍
- 网络延迟造成插入多条重复数据
- CodeForces - 1559D2 Mocha and Diana (Hard Version)(思维)
- linux中grep命令查找目录下,linux中查找grep与find命令的使用
- baidumap vue 判断范围_vue中百度地图API的调用
- Hbase的基于快照的表修复
- 【HDOJ2087】剪花布条(KMP)
- 无线传感器网络技术原理及应用 知识点
- 【万字总结】基于多智能体强化学习的《星际争霸II》中大师级水平的技术研究
- 最好的60个国外壁纸网站
- java获取当天星期几
- javascript百炼成仙 第一章 掌握JavaScript基础1.8 对象的取值
- 变态Java系列 String
- 主成分回归分析实战教程