最近遇到一个问题,发现dataloader中数据加载异常的慢,慢慢的排查到了dataloader这一步,我以前一直以为num_work共同维护一个大小为batch size的队列,但是不是,它每次会开启num_work个线程,分别去加载dataset里面的数据,直到每个worker加载数据量为batch size 大小(num_work*batch_size)才会进行下一步训练。而不是我之前理解的,只要总数据量达到batch size就立刻进行下一步训练。
PyTorch实战:探索Dataloader的num_workers工作机制
最新推荐文章于 2024-08-07 00:15:00 发布