Accelerate笔记:本地SGD

  • 本地 SGD 是一种分布式训练技术,其中梯度不是每一步都同步。
  • 每个进程都会更新自己版本的模型权重,在给定的步数后,通过跨所有进程平均这些权重来同步它们
    • 在底层,本地 SGD 代码禁用了自动梯度同步(但累积仍然如预期工作!)。
    • 它每 local_sgd_steps 步(以及在训练循环结束时)平均模型参数。
  • 提高了通信效率,并且特别是在计算机缺乏如 NVLink 等更快的互连时,可以显著加速训练。
    • 如有必要,本地 SGD 也可以与梯度累积结合使用
  • 限制:当前的实现只适用于基本的多 GPU(或多 CPU)训练,例如,没有 DeepSpeed 等
相关推荐
骁的小小站11 小时前
Verilator 和 GTKwave联合仿真
开发语言·c++·经验分享·笔记·学习·fpga开发
kkkkk02110611 小时前
软考高级-系统架构设计师案例专题三:系统开发基础
笔记·系统架构
新子y15 小时前
【小白笔记】区分类方法/实例方法和静态函数/命名空间函数
笔记·分类
梁辰兴16 小时前
企业培训笔记:外卖平台后端--套餐管理模块--新建套餐信息
笔记·vue·mybatis·springboot·外卖管理系统
degen_16 小时前
第一次进入 PEICORE 流程
c语言·笔记
YJlio16 小时前
Process Monitor 学习笔记(5.24):工具栏参考与高效快捷键指南
笔记·学习·php
摇滚侠16 小时前
Spring Boot 3零基础教程,WEB 开发 Thymeleaf 核心语法 笔记39
spring boot·笔记·后端·thymeleaf
张人玉17 小时前
WPF 常用样式属性及示例笔记
笔记·wpf
报错小能手18 小时前
linux学习笔记(49)Redis详解(1)
linux·笔记·学习
QT 小鲜肉18 小时前
【个人成长笔记】在本地Windows系统中如何正确使用adb pull命令,把Linux系统中的文件或文件夹复制到本地中(亲测有效)
linux·windows·笔记·学习·adb