Efficient Matrix Factorization on Heterogeneous CPU-GPU Systems
Yuanhang Yu, Dong Wen, Ying Zhang, Xiaoyang Wang, Wenjie Zhang and, Xuemin Lin

TL;DR
This paper presents a novel matrix division and task assignment strategy for stochastic gradient descent-based matrix factorization on heterogeneous CPU-GPU systems, significantly improving computational efficiency.
Contribution
It introduces a new matrix division strategy and a tailored cost model for efficient parallel SGD on heterogeneous systems, balancing workloads and maximizing GPU utilization.
Findings
Achieves high efficiency in MF computation on CPU-GPU systems.
Balances workloads effectively between CPU and GPU.
Maintains high training quality despite optimization.
Abstract
Matrix Factorization (MF) has been widely applied in machine learning and data mining. A large number of algorithms have been studied to factorize matrices. Among them, stochastic gradient descent (SGD) is a commonly used method. Heterogeneous systems with multi-core CPUs and GPUs have become more and more promising recently due to the prevalence of GPUs in general-purpose data-parallel applications. Due to the large computational cost of MF, we aim to improve the efficiency of SGD-based MF computation by utilizing the massive parallel processing power of heterogeneous multiprocessors. The main challenge in parallel SGD algorithms on heterogeneous CPU-GPU systems lies in the granularity of the matrix division and the strategy to assign tasks. We design a novel strategy to divide the matrix into a set of blocks by considering two aspects. First, we observe that the matrix should be…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsStochastic Gradient Optimization Techniques · Recommender Systems and Techniques · Advanced Graph Neural Networks
