国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
admin
2023-07-12 21:51:27
0

什么?单块GPU也能训练大模型了?
还是20系就能拿下的那种???
没开玩笑,事实已经摆在眼前:
RTX 2060 6GB普通游戏本能训练15亿参数模型;
RTX 3090 24GB主机直接单挑180亿参数大模型;
Tesla V100 32GB连240亿参数都能拿下 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

【国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了】相比于PyTorch和业界主流的DeepSpeed方法,提升参数容量能达到10多倍 。
而且这种方法完全开源,只需要几行代码就能搞定,修改量也非常少 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

这波操作真是直接腰斩大模型训练门槛啊,老黄岂不是要血亏 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

那么,搞出如此大名堂的是何方大佬呢?
它就是国产开源项目Colossal-AI 。
自开源以来,曾多次霸榜GitHub热门第一 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

△开源地址:https://github.com/hpcaitech/ColossalAI
主要做的事情就是加速各种大模型训练,GPT-2、GPT-3、ViT、BERT等模型都能搞定 。
比如能半小时左右预训练一遍ViT-Base/32,2天训完15亿参数GPT模型、5天训完83亿参数GPT模型 。
同时还能省GPU 。
比如训练GPT-3时使用的GPU资源,可以只是英伟达Megatron-LM的一半 。
那么这一回,它又是如何让单块GPU训练百亿参数大模型的呢?
我们深扒了一下原理~
高效利用GPU+CPU异构内存
为什么单张消费级显卡很难训练AI大模型?
显存有限,是最大的困难 。
当今大模型风头正盛、效果又好,谁不想上手感受一把?
但动不动就“CUDA out of memory”,着实让人遭不住 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

目前,业界主流方法是微软DeepSpeed提出的ZeRO (Zero Reduency Optimizer) 。
它的主要原理是将模型切分,把模型内存平均分配到单个GPU上 。
数据并行度越高,GPU上的内存消耗越低 。
这种方法在CPU和GPU内存之间仅使用静态划分模型数据,而且内存布局针对不同的训练配置也是恒定的 。
由此会导致两方面问题 。
第一,当GPU或CPU内存不足以满足相应模型数据要求时,即使还有其他设备上有内存可用,系统还是会崩溃 。
第二,细粒度的张量在不同内存空间传输时,通信效率会很低;当可以将模型数据提前放置到目标计算设备上时,CPU-GPU的通信量又是不必要的 。
目前已经出现了不少DeepSpeed的魔改版本,提出使用电脑硬盘来动态存储模型,但是硬盘的读写速度明显低于内存和显存,训练速度依旧会被拖慢 。
国产|一块3090单挑180亿参数大模型:国产开源项目这回杀疯了
文章图片

针对这些问题,Colossal-AI采用的解决思路是高效利用GPU+CPU的异构内存 。
具体来看,是利用深度学习网络训练过程中不断迭代的特性,按照迭代次数将整个训练过程分为预热和正式两个阶段 。
预热阶段,监测采集到非模型数据内存信息;

相关内容

热门资讯

C... 本文目录导航: 【最新版本】Creo11.0具体装置教程【附装置包】 PT...
c... 本文目录导航: creo怎样把三维图转cad? Creo怎样导出CAD工程...
C... 本文目录导航: Creo新建工程图把三维模型导出二维图纸的关系操作 cre...
中... 本文目录导航: 在PTC Creo 中机械整机组装成功后,因须要发给客户,为了技术隐秘,公...
P... 本文目录导航: PROE/CREO三维模型导出二维工程图教程 creo怎样...
C... 本文目录导航: Creo新建工程图把三维模型导出二维图纸的关系操作 cre...
C... 本文目录导航: Creo工程图导出CAD文件设置 CREO2.0 如何把模...
阿... 本文目录导航: 阿加莎·克里斯蒂侦探推理波洛系列内容简介 阿加莎克里斯蒂侦...
a... 本文目录导航: anti-aliasing是什么意思? aliasing混...
哪... 本文目录导航: 哪种狗体积最小,最好养? 古希腊神的名字 ...
阿... 本文目录导航: 阿加莎十大经典悬疑电影 阿加莎小说改编的十部侦探片 阿加莎...
号... 本文目录导航: 现代人的“姓、名、字、号”用英文怎样翻译。还有“原名”“人称”“谥号”“别...
指... 本文目录导航: CSGO 指令与cfg指南 linux alias命令详解...
y... 本文目录导航: 宝儿的新歌kissing you的罗马拼音,要每个读音离开写的。 ...
求... 本文目录导航: 求助翻译在装置ubuntu时,有一段英文,想高手协助翻译一下 求助翻...
求... 本文目录导航: 求助翻译在装置ubuntu时,有一段英文,想高手协助翻译一下 ...
在... 本文目录导航: 在欧特克在校生设计联盟下面下载的alias 2010就要到期了请问要如何破...
a... 本文目录导航: alias智能保留怎样设置 alias命令在linux外面...
a... 本文目录导航: alias是什么意思? 工业设计建模和渲染软件选什么好 ...
C... 本文目录导航: CentOS里alias命令解说 alias命令在linu...