使用vscode进行debug时,需要写一个launch.json文件来启动,这就需要将原始的bash文件中的变量配置转换为json配置。
原始bash指令如下
#!/usr/bin/env bash
CONFIG=$1
PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \
python -m torch.distributed.launch \
$(dirname "$0")/train.py \
$CONFIG \
--seed 0 \
--launcher pytorch ${@:3}
launch.json如下:program里面使用launch.py 对应 python -m torch.distributed.launch。env一定要填写pythonpath,否则会出现找不到模块的情况。
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "/root/miniconda3/envs/occformer/lib/python3.7/site-packages/torch/distributed/launch.py",
"console": "integratedTerminal",
"args": [
"tools/train.py",
"--config",
"/root/OccFormer/projects/configs/occformer_nusc/occformer_nusc_panoptic_r50_256x704.py"
],
"env": {"PYTHONPATH": "\"$(dirname $0)/..\":${env:PYTHONPATH}"},
}
]
}