Data movement aware computation partitioning
Citations Over TimeTop 10% of 2017 papers
Abstract
Data access costs dominate the execution times of most parallel applications and they are expected to be even more important in the future. To address this, recent research has focused on Near Data Processing (NDP) as a new paradigm that tries to bring computation to data, instead of bringing data to computation (which is the norm in conventional computing). This paper explores the potential of compiler support in exploiting NDP in the context of emerging manycore systems. To that end, we propose a novel compiler algorithm that partitions the computations in a given loop nest into subcomputations and schedules the resulting subcomputations on different cores with the goal of reducing the distance-to-data on the on-chip network. An important characteristic of our approach is that it exploits NDP while taking advantage of data locality. Our experiments with 12 multithreaded applications running on a state-of-the-art commercial manycore system indicate that the proposed compiler-based approach significantly reduces data movements on the on-chip network by taking advantage of NDP, and these benefits lead to an average execution time improvement of 18.4%.
Related Papers
- → Comparative Cross-Platform Performance Results from a Parallelizing SML Compiler(2002)6 cited
- → Toward Compiler Support for Scalable Parallelism Using Multipartitioning(2000)7 cited
- → Improving Locality in the Parallelization of Doacross Loops(2002)1 cited
- DESIGN OF A RECURSIVELY HIERARCHICAL INTERCONNECTION NETWORK(1997)
- Comparative Cross-Platform Performance Results from a Parallelizing SML Compiler(2001)