Font Size: a A A

Research On Automatic Generation Of Analytical Performance Model For Parallel Program

Posted on:2015-09-01Degree:MasterType:Thesis
Country:ChinaCandidate:X H WangFull Text:PDF
GTID:2298330422490919Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With human’s improving demands for understanding and changing nature, largescale high performance computing(HPC) has become an indispensable researchtechnique in production and living. HPC has been applied in some important fields likeweather forecasting, aerospace and nuclear test. The program of HPC is usually verylarge and runs on thousands of CPUs parallelly. Therefore, the performance of theprogram itself and its matching degree with the platform both have significant influenceon the operation performance and cost. In order to improve the performance of HPCprogram and choose a matching platform, performance evaluation for HPC programbecomes a new research direction. HPC programes are usually parallel programs andtheir style is single program multiple data(SPMD). Based on the above analysis, thisthesis takes the SPMD paralle program as research object and proposes a scheme toautomatically generate analytical performance model for parallel program.The common methods for performance evaluation are measurement, benchmarking,simulation and performance modeling, each method has its applicable scope andlimitation. After comparing the advantages and disadvantages of these methods, thisthesis chooses performance modeling as the basic method and designs an analyticalperformance model automatic generation scheme. The current performance modelingmethod is labor intensive and white-box, which makes it difficult to use. This thesisavoids these imperfections by importing analysis tool in computation part and functionwrapper technology in communication part.This thesis determines its performance evaluation metric as execution time andproposes a description of the analytical performance model automatic generationproblem. After analyzing the characteristics of SPMD parallel programs, mathematicalabstractions are applied to its computation part and communication part and a timeperformance model is established. In the time performance model, parametersdepending on platform are extracted out, which makes it possible to evaluate cross-architecture performance.This thesis proposes a complete performance model automatic generation scheme.It takes the LLVM(Low Level Virtual Machine) intermediate representation(IR) file ofthe HPC program as analysis object, which releases the limitation of its programminglanguage to a large extent. For the computation part, assistant analysis tool LLVM isused to automatically calculate the execution times of hot-spot basic blocks and thenumber of basic arithmetic operations in each basic block. For the communication part,the main loop structure of communication functions is obtained by reconstructing theloop structure of the program, and the loop count and the inner communicationfunctions’ information is extracted by text parsing. Curve fitting is used to find the changing rules of basic blocks’ execution times and main loop structure’s loop count.Finally, the performance model for a given HPC program is generated.The analytical performance model automatic generation scheme is applied toCGPOP(Conjugate Gradient Parallel Ocean Program), and a performance model withrunning scale as variable is generated. The performance model is used to evaluate andpredict the perforamnce of CGPOP, and the results are compared with these frommeasurement. As a result, the effectiveness and accuracy of the performance model areproved from both evaluation perspective and prediction perspective.
Keywords/Search Tags:High Performance Computing, Parallel Program, Performance Evaluation, Performance Modeling, Analytical Method, LLVM
PDF Full Text Request
Related items