Tiling and Scheduling of Three-level Perfectly Nested Loops with Dependencies on Heterogeneous Systems
Author(s) -
Ebrahim Zarei Zefreh,
Shahriar Lotfi,
Leyli Mohammad Khanli,
Jaber Karimpour
Publication year - 2016
Publication title -
scalable computing practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.192
H-Index - 18
ISSN - 1895-1767
DOI - 10.12694/scpe.v17i4.1205
Subject(s) - nested loop join , computer science , scheduling (production processes) , parallel computing , distributed computing , mathematics , mathematical optimization
Nested loops are one of the most time-consuming parts and the largest sources of parallelism in many scientific applications. In this paper, we address the problem of 3-dimensional tiling and scheduling of three-level perfectly nested loops with dependencies on heterogeneous systems. To exploit the parallelism, we tile and schedule nested loops with dependencies by awareness of computational power of the processing nodes and execute them in pipeline mode. The tile size plays an important role to improve the parallel execution time of nested loops. We develop and evaluate a theoretical model to estimate the parallel execution time of tilled nested loops. Also, we propose a tiling genetic algorithm that used the proposed model to find the near-optimal tile size, minimizing the parallel execution time of dependence nested loops. We demonstrate the accuracy of theoretical model and effectiveness of the proposed tiling genetic algorithm by several experiments on heterogeneous systems. The 3D tiling reduces the parallel execution time by a factor of 1.2x to 2x over the 2D tiling, while parallelizing 3D heat equation as a benchmark.
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom