Evaluation and Analysis of Effects of Auto-vectorization in Typical Compilers
Juan Chen
Abstract
Juan Chen
Abstract
SIMD(Single-Instruction-Multiple-Data) architecture plays an important role in the architecture of modern processors.Also,it is supported in multiple types of homemade high performance general purpose processors.For exploiting the data-parallel performance potentials of the short vector processing ability presented by the SIMD architecture,the auto-vectorization of compilers is one of the main means for improving the performance of applications.Evaluating the effects of auto-vectorization in typical compilers using mature commercial general purpose processor with SIMD support,is beneficial both to processor architecture design and to compiler analysis and design.We evaluated the effects of auto-vectorization in the typical compilers(including Intel compiler,PGI compiler and GCC compiler) with the stan-dard benchmarks SPECCPU2006 and SPECOMPM2001.Then taking the open source product level GCC compiler as the target,we thoroughly evaluated the effects of auto-vectori-zation in GCC with hand-coded program segments(mainly multiple types of loops),and we analyzed the ability and limitations of the current implementations of the auto-vectori-zation in GCC.Our work provides a valuable contribution for the research and development of auto-vectorization in compilers.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
SIMD(Single-Instruction-Multiple-Data) architecture plays an important role in the architecture of modern processors.Also,it is supported in multiple types of homemade high performance general purpose processors.For exploiting the data-parallel performance potentials of the short vector processing ability presented by the SIMD architecture,the auto-vectorization of compilers is one of the main means for improving the performance of applications.Evaluating the effects of auto-vectorization in typical compilers using mature commercial general purpose processor with SIMD support,is beneficial both to processor architecture design and to compiler analysis and design.We evaluated the effects of auto-vectorization in the typical compilers(including Intel compiler,PGI compiler and GCC compiler) with the stan-dard benchmarks SPECCPU2006 and SPECOMPM2001.Then taking the open source product level GCC compiler as the target,we thoroughly evaluated the effects of auto-vectori-zation in GCC with hand-coded program segments(mainly multiple types of loops),and we analyzed the ability and limitations of the current implementations of the auto-vectori-zation in GCC.Our work provides a valuable contribution for the research and development of auto-vectorization in compilers.
Key concepts: Compiler, Vectorization (mathematics), Computer science, SIMD, Parallel computing, Compiler correctness, Implementation, Computer architecture