Font Size: a A A

Iterative Compilation For Large-scale Programs Based On Parallelization And Code Outlining

Posted on:2018-03-09Degree:MasterType:Thesis
Country:ChinaCandidate:Y D TanFull Text:PDF
GTID:2428330569498724Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Iterative compilation is an adaptive program optimization technology,for any compiler and system environment,to achieve fairly good code optimization,so that to achieve the portability of code performance.However,the long iteration time of iterative compilation is widely criticized,which makes it can not be directly used in large-scale program optimization.Therefore,how to use iterative compilation for large program optimization causes extensive research in academic group.In order to solve the problem of how to use iterative compilation to optimize largescale program,we first verify the optimization effect of iterative compilation for the program,analyze the time consumption of iterative compilation directly used in large program,and study the implementation of an iterative compilation framework OpenTuner.Based on the previous analysis work,the following research was carried out on the subject:First,the subject conducted a feasibility study on iterative compilation of fully parallelized.In order to reduce the interference in the iterative compilation of the evaluation process,the traditional implementation of iterative process does not fully parallelized.In the course of the project,it is proposed to completely parallelize the evaluation phase of the iterative compilation and reduce the time consumption of the iterative compilation process.The feasibility of fully parallelization of iterative compilation is analyzed by experimental quantization method.In the course of the experiment,based on the open source iterative compilation framework OpenTuner,the iterative compilation is fully parallelized,and the feasibility of fully parallelization is verified.Next,the iterative compilation method based on program hotspot code fragment extraction is studied in experience.According to the statistical characteristics of the computer program,most of the running time of the program is executed in a very small amount of code.The subject uses the code snippet extraction method to optimize the hot code in the large program.Explore the difficulties of code snippet extraction and encapsulation and use the encapsulated code for iterative compilation to improve the performance of hotspot code to achieve the purpose of optimizing large programs.For the program in SPEC CPU2006,their hot code snippets are extracted and encapsulated,and the encapsulated code fragments are compiled by OpenTuner,the final result of iteration compilation is used to optimize the corresponding code fragments of large programs?Finally,test the optimization effect and most programs achieve good speedup.
Keywords/Search Tags:Compiler Optimization, Iterative Compilation, Parallelization, Code Outlining, Large-scale Programs
PDF Full Text Request
Related items