ADHA: Automatic Data layout framework for Heterogeneous Architectures
Deepak Majeti, Kuldeep S. Meel, Rajkishore Barik, Vivek Sarkar

TL;DR
ADHA is an automated framework that optimizes data layouts for heterogeneous architectures, significantly improving application performance and reducing programmer effort by shifting layout decisions to the compiler.
Contribution
It introduces a hierarchical formulation of data layout optimization and demonstrates its effectiveness in a parallel programming system for heterogeneous platforms.
Findings
Achieves up to 6.92× performance improvement over manual layouts.
Validates the approach on CPU+GPU heterogeneous systems.
Provides a reference implementation within H2C.
Abstract
Data layouts play a crucial role in determining the performance of a given application running on a given architecture. Existing parallel programming frameworks for both multicore and heterogeneous systems leave the onus of selecting a data layout to the programmer. Therefore, shifting the burden of data layout selection to optimizing compilers can greatly enhance programmer productivity and application performance. In this work, we introduce {\ADHA}: a two-level hierarchal formulation of the data layout problem for modern heterogeneous architectures. We have created a reference implementation of ADHA in the Heterogeneous Habanero-C (H2C) parallel programming system. ADHA shows significant performance benefits of up to 6.92 compared to manually specified layouts for two benchmark programs running on a CPU+GPU heterogeneous platform.
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 and Parallel Computing Systems
