运行BEiT相关代码,出现没有init_process错误,但确实各个组件都init了。
一开始以为是没有torch.distributed.init_process_group(),加上代码以后仍报错。查资料发现是多进程在1GPU上运行时,model中的nn.SyncBatchNorm不能正常运行,把nn.SyncBatchNorm改成nn.BatchNorm2d就可以了。
运行BEiT相关代码,出现没有init_process错误,但确实各个组件都init了。
一开始以为是没有torch.distributed.init_process_group(),加上代码以后仍报错。查资料发现是多进程在1GPU上运行时,model中的nn.SyncBatchNorm不能正常运行,把nn.SyncBatchNorm改成nn.BatchNorm2d就可以了。