Abstract

This work is aimed at creating an automatically parallelizing compiler for a distributed memory computing system. The conditions for the correctness of parallelization of the considered sequential programs on a computing system with distributed memory are described. The article considers the problem of placing data in distributed memory with minimization of interprocessor transfers for a program represented by a sequence of parallelizable loops. To solve this problem, an auxiliary bipartite “statements-variables” graph (SVG) is constructed and analyzed from the text of the program. The problem of grouping transfers of small data volumes into a smaller number of transfers of large data volumes is considered. The solution of this problem also leads to minimization of the time for data transfer. New chips with distributed local memory of thousands of cores have higher performance than the previous ones. Therefore, the development of compilers for the development of such microcircuits is necessary and relevant.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call