Assessing Impact of Data Partitioning for Approximate Memory in C/C++ Code
Soramichi Akiyama

TL;DR
This paper analyzes how data partitioning impacts approximate memory performance in C/C++ applications, highlighting challenges when critical and approximate data are interleaved within data structures.
Contribution
It is the first study to evaluate the effects of data interleaving on approximate memory in realistic C/C++ code, providing insights into data types and interleaving patterns.
Findings
Most target data types are structs or classes.
Interleaving of approximate and critical data is common in analyzed benchmarks.
Data interleaving can degrade application performance due to memory region splitting.
Abstract
Approximate memory is a technique to mitigate the performance gap between memory subsystems and CPUs with its reduced access latency at a cost of data integrity. To gain benefit from approximate memory for realistic applications, it is crucial to partition applications' data to approximate data and critical data and apply different error rates. However, error rates cannot be controlled in a fine-grained manner (e.g., per byte) due to fundamental limitations of how approximate memory can be realized. Due to this, if approximate data and critical data are interleaved in a data structure (e.g., a C struct that has a pointer and an approximatable number as its members), data partitioning may degrade the application's performance because the data structure must be split to separate memory regions that have different error rates. This paper is the first to conduct an analysis of realistic…
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
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Distributed systems and fault tolerance
