Dataloader precompute next batch


I was monitoring my training and I realized something. The load alternates between 100%CPU, 0%GPU and 0%CPU, 100%GPU, leading to a huge waste of hardware resources. Would it be possible to start computing the next batch while the GPU is working on the current one ? I tried to look at the documentation and the code itself but it seems it is not possible to do it. I think it would be a feature that benefit a lot of users. Or is it already possible to do it?

Thank you