Affine calculator in GCC
Date Issued
2009
Date
2009
Author(s)
Wang, Ying-Jie
Abstract
Multicore processors have become pervasive in these days. But, it is still difficult to program these architectures to effectively utilize the computation power of multiple processing units. There are several research topics addressing this issue, one of the strong and at the same time very hard approaches is automatic parallelization. Affine partitioning provides a systematic framework to find asymptotically optimal computation and data decomposition for multicore processors. Affine partitioning is a powerful unifying theory, the framework uniformly models a large class of high level optimizations such as loop interchange, reversal, skewing, fusion, fission, re-indexing, scaling. Based on this unified framework, that maximize parallelism while minimizing communication in programs with arbitrary loop nestings and affine data accesses. In this papaer, we proposed a compiler pass in GCC called “affine calculator pass” which integrates affine partitioning framework and GCC to achieve the goal of automatic parallelization. We have successfully compiled some programs in C language which composed of different types of array access dependencies in arbitrary nested loop. And the outputs of the compilation are executables. Each of these executables can execute in parallel using GOMP library to utilize the processing units of multicore processor.
Subjects
Auto parallelization
Compiler
GCC
Affine partitioning
OpenMP
Type
thesis
File(s)![Thumbnail Image]()
Loading...
Name
ntu-98-R96922078-1.pdf
Size
23.32 KB
Format
Adobe PDF
Checksum
(MD5):19725ea16f376aff4bcd2eed5ce26ad2
