用pycharm远程连接服务器跑代码的时候,想在配置中设置好入参,可以直接运行如下图。
但是运行之后发现总会在运行脚本前多出来一个参数选项'-u',不能被正确识别就走不下去。
bash
ssh://root@xxxxx:22/usr/bin/python -m torch.distributed.launch --nproc_per_node=1 -u /root/xxxx/train_.py --teacher-model resnet101
参考类似的帖子发现,这是pycharm解释器自带的一个硬编码,不能删除。对于我的这种情况,只要把-u 提前加上就可以了,即在编辑配置中的Interpreter options: -u -m torch.distributed.launch --nproc_per_node=1。自己的Interpreter options没什么要写的话,只写上'-u'也可以。
'-u'参数提前后,运行时命令如下:
bash
ssh://root@xxxxx:22/usr/bin/python -u -m torch.distributed.launch --nproc_per_node=1 /root/train_.py --teacher-model resnet101
或者写一个空(测试)脚本,提前指定给-u ,就不会影响自己代码的运行了。(我猜的,暂时还没实践过)