在服务器上跑代码的时候有的时候会出现一系列的警告,虽然不是错误,但是看着也不舒服,于是就动手给他解决一下
要解决这个问题,需要使用torchrun来替代torch.distributed.launch。torchrun是一个新的工具,可以用于在分布式环境中运行PyTorch训练脚本。它已经默认设置了–use-env选项
1、首先要先确保pytorch版本是比较新的,可以使用以下命令升级PyTorch:这里一定要记住升级的时候你的torch版本要符合你的代码所使用的版本,否则不要满盲目更新。
pip install --upgrade torch
2、然后,将训练脚本中的torch.distributed.launch替换为torchrun。例如,如果原始命令如下
python -m torch.distributed.launch --nproc_per_node=2 train.py
将其修改为下面的命令:
python -m torch.distributed.run --use-env --nproc_per_node=2 train.py
如果出现下面的情况
将命令中的–use-env去掉,使用下面的命令:
python -m torch.distributed.run --nproc_per_node=2 train.py
3、保存并运行修改后的命令。
通过这些步骤,将能够解决FutureWarning并使用torchrun来替代torch.distributed.launch。