Font Size: a A A

Compilation Optimization On Compiler Directive And Conditional Branch For SIMD

Posted on:2012-05-23Degree:MasterType:Thesis
Country:ChinaCandidate:J F ZhuFull Text:PDF
GTID:2218330371962541Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With the development of SIMD Extension, most of microprocessor manufacturers have provided SIMD Extension and related SIMD Instruction Set for their own microprocessors. However, applications can be hardly adapt to SIMD Extension, vectorizing them before running is essential. This thesis introduces two kinds of SIMD Compilation Optimization Technology for the problem in the research on SIMD Compilation Optimization Technology. The first one is SIMD Compilation Optimization Technology of Conditional Branch Statement, and the second one is SIMD Compilation Optimization Technology based on Compiler Directive.For Conditional Branch Statement in SIMD Compiler Optimization, the thesis proposes a method to transform Conditional Branch Statement within a Vector Length, according to the characteristics of SIMD Extension and Conditional Branch Statement. Control dependence triggered by Conditional Branch Statement can be effectively transformed into data dependence, and the control dependence?s impact of compiler?s optimization analysis can be avoided. With the transformed vector loop, the control flow?s semantics of the original loop will be rebuilt by rebuilding conditional branch. Finally, under the precondition of the correctness of control flow semantics, the parallelism of the data flow can be fully exploited.On the other hand, the idea of popular parallel programming language in parallel compilation is used for reference by SIMD Compilation Optimization Technology based on Compiler Directive. According to the programmer?s understanding of the application, Compiler Directive is used to set the state of the compiler or guide the compiler to perform some special actions in order to generate the required code. Thus, the problems that compiler can not perform auto-vectorization or does blind auto-vectorization because of the low capability of code analysis can be effectively solved.The SIMD Compilation Optimization Technologies in this thesis have been achieved in SW-VEC vectorization compiler. Test result shows that the performance of SW-VEC vectorization compiler to identify the statements which can be vectorized and generate the vectorization code can be effectively improved, and application can run faster in SIMD Extension.
Keywords/Search Tags:SIMD Extension, SIMD Instruction, SIMD Compilation Optimization, Vector Length, Conditional Branch, Compiler Directive
PDF Full Text Request
Related items