多卡微调全参qwen-14b ubuntu22.04 8*4090 踩坑简单记录

1、环境版本冲突

        可以先选择requirements.txt是否与自己环境冲突再决定安装哪些

2、NotImplementedError:Using RTX 3090 or 4000 series dosen’t support faster communication via P2P or IB。
        4090不支持P2P/IB通信方式

        添加环境变量尝试解决:

        export NCCL_IB_DISABLE=1; export NCCL_P2P_DISABLE=1。

3、OOM显存爆炸、deepspeed配置

        我们采用adam+16bit

        关于计算算模型所需显存的文章很多。

        model参数+优化器+梯度+中间计算变量即4份model参数,我们需要112g的显存

        我们的8*4090 8*24G=192G显然是远远足够的。

        实际工作中:

               配置zero-2,不起作用

               配置zero-3,不起作用

               调小batchsize=8,调小batchsize=4,调小batchsize=1,都不起作用

               调小序列长度=1024,调小序列长度=256,不起作用

        不得尝试速度最慢的ZeRO-Offload,即在zero3的基础上启用cpu计算,

        在"zero_optimization"配置中添加

"offload_optimizer": {
        "device": "cpu",
        "pin_memory": true
    },
"offload_param": {
        "device": "cpu",
        "pin_memory": true
    },
       

终于成功跑起来了

        最后序列长度恢复为512,batchsize恢复为16,梯度累计为16,成功跑起来。每张卡可以占满,内存占用520G。

  • 14
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值