将数据加载器数据移动到GPU PyTorch
我刚刚开始使用PyTorch 目前我正在采用这种方法将训练数据传输到GPU。资料来源:将数据加载器数据移动到GPU PyTorch,pytorch,Pytorch,我刚刚开始使用PyTorch 目前我正在采用这种方法将训练数据传输到GPU。资料来源: 问题:这似乎不如将整个数据集加载到GPU上。在每个批上加载数据是否不会导致延迟?我遗漏了什么吗?您遗漏了一个事实,即整个数据集通常不适合RAM内存,更不用说GPU内存了。是的,您是对的。CPU在每个小批量时将数据加载到GPU中。PyTorch(和其他框架)中有一些技巧,使它们能够在并行进程中加载数据,从而在一定程度上减少延迟。请看文档中的内容。 # Loop over epochs for epoch in
问题:这似乎不如将整个数据集加载到GPU上。在每个批上加载数据是否不会导致延迟?我遗漏了什么吗?您遗漏了一个事实,即整个数据集通常不适合RAM内存,更不用说GPU内存了。是的,您是对的。CPU在每个小批量时将数据加载到GPU中。PyTorch(和其他框架)中有一些技巧,使它们能够在并行进程中加载数据,从而在一定程度上减少延迟。请看文档中的内容。
# Loop over epochs
for epoch in range(max_epochs):
# Training
for local_batch, local_labels in training_generator:
# Transfer to GPU
local_batch, local_labels = local_batch.to(device), local_labels.to(device)
# Model computations
[...]