UPDF AI

Heterogeneous Acceleration Pipeline for Recommendation System Training

Muhammad Adnan,Yassaman Ebrahimzadeh Maboud,Divyat Mahajan,Prashant J. Nair

2022 · DOI: 10.1109/ISCA59077.2024.00081
International Symposium on Computer Architecture · 23 Citations

TLDR

Hotline develops a dataaware and model-aware scheduling pipeline by leveraging the insight that only a few embedding entries are frequently accessed (popular), and utilizes CPU main memory for nonpopular embeddings and GPUs’ HBM for popular embeddings.

Abstract

Recommendation models rely on deep learning networks and large embedding tables, resulting in computationally and memory-intensive processes. These models are typically trained using hybrid CPU-GPU or GPU-only configurations. The hybrid mode combines the GPU’s neural network acceleration with the CPUs’ memory storage and supply for embedding tables but may incur significant CPU-to-GPU transfer time. In contrast, the GPU-only mode utilizes High Bandwidth Memory (HBM) across multiple GPUs for storing embedding tables. However, this approach is expensive and presents scaling concerns. This paper introduces Hotline, a heterogeneous acceleration pipeline that addresses these concerns. Hotline develops a dataaware and model-aware scheduling pipeline by leveraging the insight that only a few embedding entries are frequently accessed (popular). This approach utilizes CPU main memory for nonpopular embeddings and GPUs’ HBM for popular embeddings. To achieve this, Hotline accelerator fragments a mini-batch into popular and non-popular micro-batches (μ\mu-batches). It gathers the necessary working parameters for non-popular μ\mu-batches from the CPU, while GPUs execute popular μ\mu-batches. The hardware accelerator dynamically coordinates the execution of popular embeddings on GPUs and non-popular embeddings from the CPU’s main memory. Real-world datasets and models confirm Hotline’s effectiveness, reducing average end-to-end training time by 2.2×2.2 \times compared to Intel-optimized CPU-GPU DLRM baseline.