Validation of Loop Parallelization and Loop Vectorization Transformations

被引:5
|
作者
Dutta, Sudakshina [1 ]
Sarkar, Dipankar [1 ]
Rawat, Arvind [1 ]
Singh, Kulwant [1 ]
机构
[1] Indian Inst Technol Kharagpur, Kharagpur, W Bengal, India
关键词
Loop Parallelization; Loop Vectorization; Dependence Graph; Conflict Access; Validation; EQUIVALENCE-CHECKING; VERIFICATION;
D O I
10.5220/0005869501950202
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:195 / 202
页数:8
相关论文
共 50 条
  • [31] An Object-Oriented Framework for Loop Parallelization
    Youichi Omori
    Akira Fukuda
    Kazuki Joe
    The Journal of Supercomputing, 1999, 13 : 57 - 69
  • [32] An object-oriented framework for loop parallelization
    Omori, Y
    Fukuda, A
    JOURNAL OF SUPERCOMPUTING, 1999, 13 (01): : 57 - 69
  • [33] GPU Parallelization of HEVC In-Loop Filters
    Wang, Biao
    de Souza, Diego F.
    Alvarez-Mesa, Mauricio
    Chi, Chi Ching
    Juurlink, Ben
    Ilic, Aleksandar
    Roma, Nuno
    Sousa, Leonel
    INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2017, 45 (06) : 1515 - 1535
  • [34] Automatic loop parallelization: An abstract interpretation approach
    Ricci, L
    PAR ELEC 2002: INTERNATIONAL CONFERENCE ON PARALLEL COMPUTING IN ELECTRICAL ENGINEERING, 2002, : 112 - 118
  • [35] GPU Parallelization of HEVC In-Loop Filters
    Biao Wang
    Diego F. de Souza
    Mauricio Alvarez-Mesa
    Chi Ching Chi
    Ben Juurlink
    Aleksandar Ilic
    Nuno Roma
    Leonel Sousa
    International Journal of Parallel Programming, 2017, 45 : 1515 - 1535
  • [36] PERFECT PIPELINING - A NEW LOOP PARALLELIZATION TECHNIQUE
    AIKEN, A
    NICOLAU, A
    LECTURE NOTES IN COMPUTER SCIENCE, 1988, 300 : 221 - 235
  • [37] Loop Parallelization Techniques for FPGA Accelerator Synthesis
    Reiche, Oliver
    Ozkan, M. Akif
    Hannig, Frank
    Teich, Juergen
    Schmid, Moritz
    JOURNAL OF SIGNAL PROCESSING SYSTEMS FOR SIGNAL IMAGE AND VIDEO TECHNOLOGY, 2018, 90 (01): : 3 - 27
  • [38] Loop Parallelization using Dynamic Commutativity Analysis
    Vasiladiotis, Christos
    Lozano, Roberto Castaneda
    Cole, Murray
    Franke, Bjorn
    CGO '21: PROCEEDINGS OF THE 2021 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION (CGO), 2021, : 150 - 161
  • [39] Loop Nests Parallelization for Digital System Synthesis
    Chemeris, Alexander
    Gorunova, Julia
    Lazorenko, Dmiry
    PROCEEDINGS OF IEEE EAST-WEST DESIGN & TEST SYMPOSIUM (EWDTS 2013), 2013,
  • [40] Loop parallelization algorithm for specific case of loop-carried dependence for hardware compilation
    Sadykhov, R. Kh
    Uvarov, A. A.
    IDAACS 2007: PROCEEDINGS OF THE 4TH IEEE WORKSHOP ON INTELLIGENT DATA ACQUISITION AND ADVANCED COMPUTING SYSTEMS: TECHNOLOGY AND APPLICATIONS, 2007, : 265 - +