Code generation for accurate array redistribution on automatic distributed-memory parallelization
- DOI
- 10.2991/ijndc.2014.2.1.2How to use a DOI?
- Keywords
- automatic parallelization; data decomposition; array distribution; communication code generation
- Abstract
Code generation belongs to the backend of parallelizing compiler, and is for generating efficient computation and communication code for the target parallel computing system. Traditional research resolve array redistribution mainly by generating communication code that each processor sends all data defined in its local memory to all processors, but this will bring large amount of communication redundancy, which increase with the growth of number of processors. Focusing on this problem, this paper presents an accurate code generation algorithm of array redistribution for distributed-memory architecture. The algorithm determines source processor and goals processor of each array element’s migration in array redistribution by the transformation of data decompositions, then generate accurate communication code. The experimental results show that algorithm proposed by this paper can effectively reduce communication redundancy with the processor scale growth, and improve the parallel performance of applications.
- Copyright
- © 2017, the Authors. Published by Atlantis Press.
- Open Access
- This is an open access article distributed under the CC BY-NC license (http://creativecommons.org/licenses/by-nc/4.0/).
Cite this article
TY - JOUR AU - Bo Zhao AU - Rui Ding AU - Lin Han AU - Jinlong Xu PY - 2014 DA - 2014/01/01 TI - Code generation for accurate array redistribution on automatic distributed-memory parallelization JO - International Journal of Networked and Distributed Computing SP - 11 EP - 25 VL - 2 IS - 1 SN - 2211-7946 UR - https://doi.org/10.2991/ijndc.2014.2.1.2 DO - 10.2991/ijndc.2014.2.1.2 ID - Zhao2014 ER -