torch.distributed.DistBackendError: NCCL error in: ../torch/csrc/distributed/c10d/ProcessGroupNCCL.cpp:1275, internal error, NCCL version 2.14.3 ncclInternalError: Internal check failed. Last error: Proxy Call to rank 1 failed (Connect) ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 976) of binary: /usr/bin/python3 INFO:torch.distributed.elastic.agent.server.api:Local worker group finished (FAILED). Waiting 300 seconds for other agents to finish INFO:torch.distributed.elastic.agent.server.api:Done waiting for other agents. Elapsed: 0.00165557861328125 seconds INFO:torch.distributed.elastic.multiprocessing.errors:local_rank 1 FAILED with no error file. Decorate your entrypoint fn with @record for traceback info. See: https://pytorch.org/docs/stable/elastic/errors.html Traceback (most recent call last):
时间: 2023-08-02 08:09:31 浏览: 3134
pytorch:torch.mm()和torch.matmul()的使用
这是一个 PyTorch 分布式训练过程中遇到的错误。出现这个错误的原因可能是因为在使用 NCCL 通信时,进程间的连接失败了。解决这个问题的方法有:
1. 确认你的 NCCL 版本是否正确,建议使用与 PyTorch 版本匹配的 NCCL 版本。
2. 确认你的网络环境是否正常,特别是防火墙是否允许进程间通信。
3. 确认你的代码是否正确,特别是分布式训练时是否正确设置了进程间通信的参数。
4. 确认你的机器是否有足够的资源支持分布式训练,例如 GPU 内存、CPU 内存等。
如果以上方法都无法解决问题,建议查看 PyTorch 和 NCCL 的文档,或者在 GitHub 上搜索相关的 issue。同时,你也可以在你的代码中加上 `@record` 装饰器来记录错误信息,方便排查问题。
阅读全文