Abstract

SLP (superword level parallelism) is an efficient solution to exploit the parallelism between statements in the basic blocks of SIMD (single instruction multiple data). It has been implemented in almost all the mainstream vectorizing compilers. However, its vectorization ability is limited due to the conservativeness of the parallelism identification process. To solve this problem, this paper proposes an edg (extended dependence graph) approach to identify SLP. First, we extend the adg (array dependence graph) and sdg (statement dependence graph) to construct the edg, which includes both the dependences between each array pair and those between each statement pair. When a statement is represented as an SCC (strong connected component), all of its array references are also constructed in this SCC. We then eliminate the redundant dependence edges between the SCCs from the edg. The dependence information of each statement pair and its SLP vectorization are thus determined by analyzing the reachability between each node pair from the corresponding SCC. We implement this approach to optimize the Open64-5.0 compiler, which improves the compilers identification ability. The evaluation tests on the gcc-vect benchmarks show that the optimized Open64-5.0 compiler can identify more SLP vectorizable loops than the GCC4.9, and that the number of vectorizable loops is comparable to that of ICC14.0. The performance of our generated codes is better than the state-of-the-art for most practical applications.

Full Text
Paper version not known

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

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.