本文探讨TorchSemiSeg项目的调试。
TorchSemiSeg给出了一键脚本的运行方式,例如如下脚本:
export volna="./TorchSemiSeg/"
export OUTPUT_PATH="./TorchSemiSeg/output"
export NGPUS=1
export batch_size=2
python -m torch.distributed.launch --master_port 29501 --nproc_per_node=$NGPUS train.py --debug 1
这样的脚本很方便在terminal下运行,但如果在pycharm中调试会稍微麻烦一点。
进入run->Edit configuration中设置环境变量,即将export后面的变量导入pycharm,注意源码给出的export volna=“./TorchSemiSeg/” 为双引号,导入pycharm则直接写为./TorchSemiSeg/,如下图:

接下来需要导入python运行参数。注意到有个-m选项,即启动一个python模块,此时需要修改Modulename,如下:

即对于命令:python -m torch.distributed.launch --master_port 29501 --nproc_per_node=$NGPUS train.py --debug 1
Module name输入:torch.distributed.launch
Parameters:–master_port 29501 --nproc_per_node=1 train.py --debug 1
参考: https://blog.csdn.net/m0_37030242/article/details/108639456