当前位置: 首页 > news >正文

Gradient-checkpointing的原理

原文:

将更大的网络安装到内存中。|by 雅罗斯拉夫·布拉托夫 |张量流 |中等 (medium.com)




 

前向传播时,隔几层就保留一层activation数据,其余层的activation都释放掉;

反向传播时,从最近的checkpoint去重新跑forward,这次跑的不删除;计算梯度每用完一层,才释放掉该层的activation;

N层网络,使用sqrt(N)个checkpoint,activation内存峰值是2*sqrt(N),计算额外增加N层的forward计算;

一般大模型中,该功能增加20%计算时间,减少20%显存占用;

更激进的做法:如果有SSD等高速存储,可以将所有activation层落盘,backward时从SSD中load进显存,每次只load一层用完即删;

最激进的做法:model weights、optimizer states、lr等,也落盘;随用随读;

相关文章:

  • 将list对象里的某一个属性取出组成一个新的list
  • PyTorch深度学习快速入门——P1-P13
  • 【python006】miniconda3环境搭建(非root目录,最近更新中)
  • Windows Presentation Foundation(WPF)要点总结
  • 大数据之Hive函数大全
  • 阿里云数据库 SelectDB 版全面商业化,开启现代化实时数据仓库的全新篇章
  • 工具方法 - 如何在网上找资料
  • 领导VS管理:技术团队掌舵者的双重角色解析
  • 贪心-leetcode402.移掉 K 位数字-XMUOJ符文序列
  • 算法思想汇总
  • 这样的直男程序员,活该你单身一万年!
  • 夜雨触花感怀
  • Git总结超全版
  • Vue-前端自动化部署方案-scp2(实战版)
  • DolphinScheduler 3.3.0版本更新一览
  • 【译】JS基础算法脚本:字符串结尾
  • ES6指北【2】—— 箭头函数
  • 2017届校招提前批面试回顾
  • 230. Kth Smallest Element in a BST
  • AWS实战 - 利用IAM对S3做访问控制
  • CSS盒模型深入
  • es6要点
  • extract-text-webpack-plugin用法
  • IP路由与转发
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • JDK9: 集成 Jshell 和 Maven 项目.
  • oldjun 检测网站的经验
  • Python语法速览与机器学习开发环境搭建
  • Sublime Text 2/3 绑定Eclipse快捷键
  • Travix是如何部署应用程序到Kubernetes上的
  • 从伪并行的 Python 多线程说起
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 如何编写一个可升级的智能合约
  • 使用Gradle第一次构建Java程序
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • 《码出高效》学习笔记与书中错误记录
  • gunicorn工作原理
  • 积累各种好的链接
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #14vue3生成表单并跳转到外部地址的方式
  • #我与Java虚拟机的故事#连载07:我放弃了对JVM的进一步学习
  • $.ajax,axios,fetch三种ajax请求的区别
  • $con= MySQL有关填空题_2015年计算机二级考试《MySQL》提高练习题(10)
  • (175)FPGA门控时钟技术
  • (2024)docker-compose实战 (8)部署LAMP项目(最终版)
  • (2024,RWKV-5/6,RNN,矩阵值注意力状态,数据依赖线性插值,LoRA,多语言分词器)Eagle 和 Finch
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (附源码)计算机毕业设计ssm基于B_S的汽车售后服务管理系统
  • (四)库存超卖案例实战——优化redis分布式锁
  • (四)事件系统
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .net core + vue 搭建前后端分离的框架
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法