arXiv:2509.10712cs.DCcs.LG2025-09中稿 · EuroSys 2026被引 4

优化数据加载,让训练更快更省资源

MinatoLoader: Accelerating Machine Learning Training Through Efficient Data Preprocessing

  • 按预处理速度动态组批,避免慢样本拖累整体
  • 实测提升平均训练速度3.6倍,GPU利用率从46.4%升至90.45%
  • 适合大规模模型训练,尤其对显存和算力敏感场景

机器学习框架中的数据加载器负责在数据送入加速器前进行预处理。若预处理与训练无法高效流水线化,会导致大量GPU空闲,造成显著训练延迟。现有数据加载器存在严重资源浪费,例如使用PyTorch数据加载器时GPU空闲率达76%。核心问题是同一数据集中样本预处理时间差异大,但传统加载器未考虑此差异,导致整个批次被单个慢样本阻塞。为此,本文提出MinatoLoader,一种面向PyTorch的通用数据加载器,专为多GPU单机环境设计。它持续后台准备数据,并优先选择预处理快的样本组批,慢样本并行处理。在配备V100和A100 GPU的服务器上评估显示,在四张A100 GPU上,相比PyTorch DataLoader和Pecan,训练时间最快提升7.5倍(平均3.6倍),相比DALI提升3倍(平均2.2倍),平均GPU利用率从46.4%提升至90.45%,且保持模型精度,加速收敛。

原文摘要 · Abstract (English)

Data loaders are used by Machine Learning (ML) frameworks like PyTorch and TensorFlow to apply transformations to data before feeding it into the accelerator. This operation is called data preprocessing. Data preprocessing plays an important role in the ML training workflow because if it is inefficiently pipelined with the training, it can yield high GPU idleness, resulting in important training delays. Unfortunately, existing data loaders turn out to waste GPU resources, with $76\%$ GPU idleness when using the PyTorch data loader, for example. One key source of inefficiency is the variability in preprocessing time across samples within the same dataset. Existing data loaders are oblivious to this variability, and they construct batches without any consideration of slow or fast samples. In this case, the entire batch is delayed by a single slow sample, stalling the training pipeline and resulting in head-of-line blocking. To address these inefficiencies, we present MinatoLoader, a general-purpose data loader for PyTorch that accelerates training and improves GPU utilization. MinatoLoader is designed for a single-server setup, containing multiple GPUs. It continuously prepares data in the background and actively constructs batches by prioritizing fast-to-preprocess samples, while slower samples are processed in parallel. We evaluate MinatoLoader on servers with V100 and A100 GPUs. On a machine with four A100 GPUs, MinatoLoader improves the training time of a wide range of workloads by up to $7.5\times$ ($3.6\times$ on average) over PyTorch DataLoader and Pecan, and up to $3\times$ ($2.2\times$ on average) over DALI. It also increases average GPU utilization from 46.4\% with PyTorch to 90.45\%, while preserving model accuracy and enabling faster convergence.

数据加载训练加速GPU利用

Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。