VSCode上用debugpy搭配time调试DDP程序
VSCode上用debugpy搭配time调试DDP程序
由于不少任务并不是通过python直接启动的,尤其是使用slurm等方式调度的集群,由于机卡分离,难以直接从vscode启动调试;DDP由于其多进程的特性,调试起来也十分麻烦。debugpy与time搭配使用算是这种条件下一个不错的调试方案。
launch.json基本配置
1 |
|
在需要调试的程序内加入
1 |
|
通过在适当位置加入time.sleep来防止其他主进程继续运行导致主进程断开与vscode的连接。另外也可以在所有进程共用的部分使用time.sleep,不过这样只能调试sleep之前的部分。
调试时先在vscode上左上角开启调试,之后终端运行程序等待连接即可。
Reference
VSCode上用debugpy搭配time调试DDP程序
https://blog.iks-ran.com/2023/09/30/vsc_ddpdebug/