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

ModelScope中, 这样的报错有大佬遇到过没? DDP-DS 2卡的

ModelScope中,lQLPJwH3tTtlEm_NAs_NBpCwPqkqtZ3GzI8FR3WhxUD6AA_1680_719.png../aten/src/ATen/native/cuda/IndexKernel.cu:92: operator(): block: [36,0,0], thread: [64,0,0] Assertion -sizes[i] <= index && index < sizes[i] && "index out of bounds" failed 这样的报错有大佬遇到过没?
DDP-DS 2卡的

展开
收起
多麻辣哦 2023-11-22 20:53:17 268 0
2 条回答
写回答
取消 提交回答
  • 这个报错信息表示在运行一个深度学习模型时,发生了索引越界的错误。具体来说,错误发生在IndexKernel.cu文件的第92行,涉及到一个名为sizes的数组。报错信息中提到了sizes[i]index的值,以及一个断言条件sizes[i] <= index && index < sizes[i]

    这个报错通常发生在使用分布式数据并行(DDP)训练深度学习模型时,特别是在多GPU环境下。在这种情况下,每个进程都有自己的数据集切片,这些切片的大小可能不同。当某个进程试图访问其数据集切片之外的数据时,就会发生索引越界的错误。

    要解决这个问题,你可以尝试以下方法:

    1. 检查你的代码,确保在访问数据集切片时没有越界。特别是要注意sizes数组的值是否正确,以及index是否在有效范围内。

    2. 如果问题仍然存在,尝试减小批量大小(batch size),以减少每个进程需要处理的数据量。这可能会降低训练速度,但可以防止索引越界错误。

    3. 如果上述方法都无法解决问题,可以考虑使用其他分布式训练框架,如Horovod或MegEngine,它们可能对这种情况有更好的支持。

    2023-11-29 10:37:00
    赞同 展开评论 打赏
  • 8eb18af76ab888efd03ced07aabb0b2c.png
    您先看一下这里的kernel日志从这里开始不一样了,会不会是和这个有关。我这找一下。22b95225e56835acf6f0d61a2110a53a.png
    双卡没问题swift/examples/pytorch/llm/scripts/openbuddy_mistral_7b_chat/lora_ddp_ds/sft.sh 中,--max_length 8192 其余未改动。期间报错:AttributeError: 'FieldInfo' object has no attribute 'required'。pip install deepspeed之后,训练可以正常跑起来,如下:6fa3ab263e02248cb92ef4ed73f349c4.png
    显存占用每张卡约18G镜像registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-cuda11.8.0-py38-torch2.0.1-tf2.13.0-1.9.5——此回答整理自钉群:魔搭ModelScope开发者联盟群 ①

    2023-11-22 22:01:05
    赞同 展开评论 打赏

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

相关电子书

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