问题描述:单卡运行MMdetection ConsistentTeacher时,train正常但是val出现如下错误
RuntimeError: Default process group has not been initialized, please make sure to call init_process_group.
原因:config中的evaluation使用的是作者写的hook,继承了分布式DistEvalHook,需要手动初始化init_process_group
解决方法:在ssod/utils/hooks/submodules_evaluation.py中加入如下代码
dist.init_process_group('gloo', init_method='file:///tmp/somefile', rank=0, world_size=1)
如有问题,欢迎评论文明讨论
执行时如果出现卡死的情况,可以改为加入以下代码:
torch.distributed.init_process_group(backend='nccl',init_method='tcp://localhost:23456', world_size=1, rank=0)