您的当前位置:首页正文

【大模型-驯化】成功解决fused_adam.so: undefined symbol: _ZN3c107WarningC1ENS中fused_adam .. [NO] ..[OKAY]问题

2024-11-29 来源:个人技术集锦

大模型-驯化】成功解决fused_adam.so: undefined symbol: _ZN3c107WarningC1ENS中fused_adam … [NO] …[OKAY]问题
 
本次修炼方法请往下查看

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


下滑查看解决方法

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

  

? 1.问题介绍

  目前大模型的训练大都是是基于deepspeed来进行多卡并行加速,大家在安装deepspeed成功后,在训练大模型是经常会遇到运行的过程中出现训练:

.cache/torch_extensions/py310_cu118/fused_adam/fused_adam.so: undefined symbol: _ZN3c107WarningC1ENS

? 2. 问题分析

  对于这个问题,博主踩了好几天的坑,最后发现其实最终的原因是deepspeed安装的不成功的问题,对于这个问题,如果大家直接是用的服务器登录,比如学校的小伙伴一般不会遇到这个问题,如果大家使用的是一个docker里面的环境,很有可能会遇到这个问题,对于这个问题,网上一堆的解决方法,博主这边对这个问题给出一个比较好的解决方法,具体我们查看deepspeed安装成功后fused_adam的配置开关情况,这个玩意的作用是deepspeed加速中很重要的一部分,我们可以通过命令:ds_report来查看机器安装的情况,具体如果安装deepspeed成功,但是对于上述的问题,运行命令ds_report的结果如下所示:

? 3. 解决方法

3.1 常用的解决方法

  关于上述的问题,网上通常的解决方法是,重新安装deepspeed,具体的命令如下所示:

pip uninstall deepspeed

tar -zxvf Deepseepd.tar.gz
cd DeepSpeed
DS_BUILD_FUSED_ADAM=1 pip3 install .

  通常我们通过上述的代码后,在执行判断安装是否成功会出现如下的情况,执行ds_report

显示全文