Font Size: a A A

Research On SIMD Compilation Technology Based On Polyhedron Model

Posted on:2023-01-07Degree:MasterType:Thesis
Country:ChinaCandidate:B Y WangFull Text:PDF
GTID:2558306623975159Subject:Software engineering
Abstract/Summary:PDF Full Text Request
As one of the main means of program optimization,vectorization technology is widely used.Today,major mainstream compilers have relatively complete vectorization functions,thereby improving program performance.However,traditional vectorization optimization often requires manual tuning and mapping with the hardware architecture,which not only imposes higher requirements on programmers,but also generates a large time cost.With the continuous change of hardware architecture,the length of vector registers also changes,how to use the compiler to automatically generate more efficient vectorized code has become an important problem to be solved urgently.The emergence of the polyhedron model provides us with a new research idea.Polyhedron compilation technology is most concerned with loop optimization,which improves program performance through a series of loop transformations.Therefore,the vectorized code generation based on the polyhedral model can not only mine the parallelism of the program from different levels,but also the generated program has a large space for optimization.The main research work and results of this thesis include:1、This thesis designs and implements a SIMD vector parallel mining and code generation framework based on the polyhedron model.The framework mainly includes three parts: vectorized analysis,vectorized loop transformation,and code generation.Firstly,the vectorization analysis is carried out according to different program characteristics,and the appropriate vectorization scheme is selected to guide the code generation of the framework.Secondly,create vectorization conditions and add vectorization flags by performing vectorization loop transformation in the scheduling transformation part.Finally,in the code generation part,through the vectorization flags provided above and the corresponding loop attributes,different situations are processed separately,and finally the corresponding architecture vectorization code is generated.By selecting the typical scientific computing core matrix multiplication to carry out experimental verification under different scales,the average speedup ratio reaches 3.39 times.2、A vector parallel cost model based on the polyhedron model is proposed.By analyzing the vectorized parallel optimization process based on polyhedron model,a performance model of vector cost analysis based on polyhedron model is designed.By combining the compilation process of the polyhedral model,the performance-critical parameters are extracted.For each stage of optimization,a vector cost model is constructed,and the operations and factors affecting vectorized optimization are further analyzed,and a vector cost calculation formula based on the polyhedron model is proposed.Taking the CPU platform as the experimental platform and PPCG as the polyhedron compilation platform,the common scientific computing core program is used for verification,and the validity of the cost model is verified by comparing it with the theoretical value obtained by the cost calculation formula.
Keywords/Search Tags:polyhedron model, vectorization, code generation, cost analysis
PDF Full Text Request
Related items