Abstract

Nowadays, in scientific and computational programs, increasing the execution speed of programs is very important. In implementing scientific programs, loops are dedicating a large part of time to themselves. Therefore, the parallel execution of the iteration loop reduces the runtime of all programs. This paper has been working on the parallelism of two-level perfectly nested loops with non-uniform dependencies and rectangular iteration space, and then their scheduling is based on the scheduling of task graphs. For this purpose, the iteration space of non-uniform loop is partitioned using a tiling transformation, and then the tiled space is modelled as a task, graph for scheduling. In the task graph, vertices expressive tiles and edges expressive data dependencies inter-tiles. It should be noted that the computational load of vertices is not the same, and the vertices corresponding imperfect tiles have a less computational load. The scheduling is done on both types of homogeneous and heterogeneous multiprocessor systems. The tiling of iteration space loop and the scheduling of task graph is arranged in the category of NP-Hard problems that using evolutionary algorithms can be efficient to discover a suitable solution for them. The results of the proposed approach show the performance of this method better than previous methods in the tiling and scheduling of non-uniform loops. According to the examinations performed on uniform loops, this algorithm also performs better than previous algorithms on these types of loops.

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