http://repository.iitr.ac.in/handle/123456789/21613
Title: | Validation of loop parallelization and loop vectorization transformations |
Authors: | Dutta, Sudakshina Sarkar D. Rawat A. Singh K. Maciaszek L. Maciaszek L. Filipe J. |
Published in: | ENASE 2016 - Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering, ENASE 2016 |
Abstract: | Loop parallelization and loop vectorization of array-intensive programs are two common transformations applied by parallelizing compilers to convert a sequential program into a parallel program. Validation of such transformations carried out by untrusted compilers are extremely useful. This paper proposes a novel algorithm for construction of the dependence graph of the generated parallel programs. The transformations are then validated by checking equivalence of the dependence graphs of the original sequential program and the parallel program using a standard and fairly general algorithm reported elsewhere in the literature. The above equivalence checker still works even when the above parallelizing transformations are preceded by various enabling transformations except for loop collapsing which changes the dimensions of the arrays. To address the issue, the present work expands the scope of the checker to handle this special case by informing it of the correspondence between the index spaces of the corresponding arrays in the sequential and the parallel programs. The augmented algorithm is able to validate a large class of static affine programs. The proposed methods are implemented and tested against a set of available benchmark programs which are parallelized by the polyhedral auto-parallelizer LooPo and the auto-vectorizer Scout. During experiments, a bug of the compiler LooPo on loop parallelization has been detected. Copyright © 2016 by SCITEPRESS - Science and Technology Publications, Lda. All rights reserved. |
Citation: | ENASE 2016 - Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering (2016): 195-202 |
URI: | https://doi.org/10.5220/0005869501950202 http://repository.iitr.ac.in/handle/123456789/21613 |
Issue Date: | 2016 |
Publisher: | SciTePress |
Keywords: | Conflict access Dependence graph Loop parallelization Loop vectorization Validation |
ISBN: | 9.7899E+12 |
Author Scopus IDs: | 55098724900 56263537600 57190382824 57213995011 |
Author Affiliations: | Dutta, S., Indian Institute of Technology Kharagpur, Kharagpur, India Sarkar, D., Indian Institute of Technology Kharagpur, Kharagpur, India Rawat, A., Indian Institute of Technology Kharagpur, Kharagpur, India Singh, K., Indian Institute of Technology Kharagpur, Kharagpur, India |
Appears in Collections: | Conference Publications [CE] |
Items in Repository are protected by copyright, with all rights reserved, unless otherwise indicated.