最近在使用单机多卡进行分布式(DDP)训练时遇到一个错误:ERROR: torch.distributed.elastic.multiprocessing.api:failed。
而实际报错的内容是:ValueError: sampler option is mutually exclusive with shuffle.
报错的详细内容如下截图所士:
在这里插入图片描述
出现这种错误的原因是,在分布式训练时使用了sampler,并且dataloader时参数shuffle设置成True。由于sampler在分配数据给gpu时已经自动打乱了数据,所以dataloader无需重复打乱数据,二者是相冲的。
因此,使用分布式训练时,会使用sampler,在dataloader时参数shuffle默认False即可。

Logo

一站式虚拟内容创作平台,激发创意,赋能创作,进入R空间,遇见同道,让优质作品闪耀发光。​

更多推荐