Tensor Casting: Co-Designing Algorithm-Architecture for Personalized Recommendation Training
This addresses a critical performance issue in training personalized recommendations, a widely deployed ML workload, by focusing on a previously underexplored area with incremental architectural innovation.
The paper tackles the performance bottleneck of sparse embedding layer training in personalized recommendation systems by proposing Tensor Casting, an algorithm-architecture co-design that achieves 1.9-21x improvements in training throughput compared to state-of-the-art approaches.
Personalized recommendations are one of the most widely deployed machine learning (ML) workload serviced from cloud datacenters. As such, architectural solutions for high-performance recommendation inference have recently been the target of several prior literatures. Unfortunately, little have been explored and understood regarding the training side of this emerging ML workload. In this paper, we first perform a detailed workload characterization study on training recommendations, root-causing sparse embedding layer training as one of the most significant performance bottlenecks. We then propose our algorithm-architecture co-design called Tensor Casting, which enables the development of a generic accelerator architecture for tensor gather-scatter that encompasses all the key primitives of training embedding layers. When prototyped on a real CPU-GPU system, Tensor Casting provides 1.9-21x improvements in training throughput compared to state-of-the-art approaches.