ALP: Alleviating CPU-Memory Data Movement Overheads in Memory-Centric Systems
Nika Mansouri Ghiasi, Nandita Vijaykumar, Geraldo F. Oliveira, Lois, Orosa, Ivan Fernandez, Mohammad Sadrosadati, Konstantinos Kanellopoulos,, Nastaran Hajinazar, Juan G\'omez Luna, Onur Mutlu

TL;DR
ALP is a programmer-transparent technique that reduces data movement overhead between CPU and memory-centric systems, significantly improving performance by intelligently managing data transfers and application segmentation.
Contribution
ALP introduces a novel compiler and hardware-assisted approach to minimize inter-segment data movement, enabling more efficient application partitioning in memory-centric systems.
Findings
Achieves 54.3% average speedup over CPU-only execution.
Reduces inter-segment data movement overhead effectively.
Enhances application performance by optimized data transfer management.
Abstract
Partitioning applications between NDP and host CPU cores causes inter-segment data movement overhead, which is caused by moving data generated from one segment (e.g., instructions, functions) and used in consecutive segments. Prior works take two approaches to this problem. The first class of works maps segments to NDP or host cores based on the properties of each segment, neglecting the inter-segment data movement overhead. The second class of works partitions applications based on the overall memory bandwidth saving of each segment, and does not offload each segment to the best-fitting core if they incur high inter-segment data movement. We show that 1) mapping each segment to its best-fitting core ideally can provide substantial benefits, and 2) the inter-segment data movement reduces this benefit significantly. To this end, we introduce ALP, a new programmer-transparent technique…
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.
