开发者社区 > ModelScope模型即服务 > 计算机视觉 > 正文

ModelScope中,大佬们4卡跑lora时,遇到这样的错,怎么解决?

ModelScope中,大佬们4卡跑lora时,遇到这样的错,怎么解决? [E ProcessGroupNCCL.cpp:474] [Rank 1] Watchdog caught collective operation timeout: WorkNCCL(SeqNum=32, OpType=BROADCAST, NumelIn=159383552, NumelOut=159383552, Timeout(ms)=1800000) ran for 1800130 milliseconds before timing out.
[E ProcessGroupNCCL.cpp:474] [Rank 0] Watchdog caught collective operation timeout: WorkNCCL(SeqNum=32, OpType=BROADCAST, NumelIn=159383552, NumelOut=159383552, Timeout(ms)=1800000) ran for 1800842 milliseconds before timing out.
Some NCCL operations have failed or timed out. Due to the asynchronous nature of CUDA kernels, subsequent GPU operations might run on corrupted/incomplete data.Watchdog caught collective operation timeout: WorkNCCL(SeqNum=32, OpType=BROADCAST, NumelIn=159383552, NumelOut=159383552, Timeout(ms)=1800000) ran for 1800130 milliseconds before timing out

展开
收起
多麻辣哦 2023-11-22 20:40:19 729 0
4 条回答
写回答
取消 提交回答
  • 这个错误信息表示你的NCCL(NVIDIA Collective Communications Library)操作超时了。这可能是由于网络延迟、硬件故障或者是并行计算的同步问题导致的。以下是一些可能的解决方法:

    1. 增加超时时间:你可以尝试增加NCCL操作的超时时间。在PyTorch中,你可以通过设置torch.nn.utils.convert_parameters_to_tensors()函数的timeout参数来实现这一点。

    2. 优化网络环境:如果你的网络环境不稳定,可能会导致NCCL操作超时。你可以尝试优化你的网络环境,例如使用更快的网络连接,或者在网络稳定的时候进行训练。

    3. 检查硬件状态:你可以检查你的GPU和其他相关硬件的状态,确保它们正常工作。如果有任何硬件故障,你应该及时修复。

    4. 调整并行策略:你可以尝试调整你的并行策略,例如减少并行节点数量,或者改变并行计算的顺序,看看是否可以改善这个问题。

    5. 更新驱动和库:你可以尝试更新你的CUDA驱动和PyTorch库,看看是否可以解决这个问题。

    2023-11-29 10:56:12
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    这个错误通常是由NCCL操作超时引起的,可能是由于网络或硬件问题导致通信失败,也可能是由于某些进程挂起或死锁导致操作超时。

    以下是一些可能的解决方法:

    1. 增加timeout时间:可以尝试增加NCCL操作的timeout时间,例如将其设置为更长的时间,以便等待操作完成。可以在ModelScope的配置文件中找到NCCL操作的timeout设置。

    2. 检查网络和硬件:检查网络是否正常,确保所有设备都连接稳定。另外,可以检查GPU的状态,确保GPU驱动程序已经正确安装并且没有硬件故障。

    3. 降低batch size:如果在运行大型模型时遇到此错误,可以尝试减小batch size,减少NCCL操作的负载。

    4. 使用更高效的算法:可以尝试使用更高效的NCCL算法,例如Tree-based All-reduce,以提高通信效率和性能。

    5. 升级NCCL版本:如果使用较老的NCCL版本,可以尝试升级到最新版本,以获得更好的性能和稳定性。

    2023-11-29 09:17:55
    赞同 展开评论 打赏
  • 当出现这样的报错时,考虑以下几个因素:

    1. 显存不足;
    2. 数据传输过程中出现问题;
    3. NCCL 配置存在问题。

    建议您可以:

    1. 增加显存大小;
    2. 检查数据传输情况,确保数据完整无损;
    3. 优化 NCCL 配置,提高运算效率。
    2023-11-24 15:12:10
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个问题可能是由于您的网络环境不稳定或者GPU设备之间的通信延迟较高引起的。为了解决这个问题,可以尝试以下几种方法:

    1. 检查网络连接情况,确保所有节点之间有足够的带宽和低延迟连接。
    2. 更新CUDA驱动程序以及nccl包到最新版本,以便于提高GPU设备之间的通信效率。
    3. 增加Watchdog超时时间(如Timeout(ms)=1800000),给节点之间的通信留出更多的缓冲时间。
    4. 如果其他方法无效,考虑更换硬件配置或者调整网络拓扑结构以改善网络状况。
    2023-11-23 13:44:28
    赞同 展开评论 打赏

包含图像分类、图像生成、人体人脸识别、动作识别、目标分割、视频生成、卡通画、视觉评价、三维视觉等多个领域

相关电子书

更多
视觉AI能力的开放现状及ModelScope实战 立即下载
ModelScope助力语音AI模型创新与应用 立即下载
低代码开发师(初级)实战教程 立即下载