最近遇到一个问题,发现dataloader中数据加载异常的慢,慢慢的排查到了dataloader这一步,我以前一直以为num_work共同维护一个大小为batch size的队列,但是不是,它每次会开启num_work个线程,分别去加载dataset里面的数据,直到每个worker加载数据量为batch size 大小(num_work*batch_size)才会进行下一步训练。而不是我之前理解的,只要总数据量达到batch size就立刻进行下一步训练。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐