Hi,
Because io are slow and can be done in the background, the dataloader will ask for more elements than just the current batch.
This is particularly effective when multiple workers are used so that worker can start loading the next batch while the gpu runs the fw/bw on your network without the user needing to do fancy stuff.