Automatic Performance Prediction Method of Scientific Computing Program Based on llvm

An automatic performance and prediction method technology, applied in software testing/debugging, etc., can solve problems that are difficult to be reasonable, cannot be continuously changed, and cannot be satisfied, so as to achieve user-friendly use, improve accuracy, and rely on simple effects

Active Publication Date: 2018-03-16
哈尔滨工业大学人工智能研究院有限公司
View PDF2 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

If it is to measure the 1024 degree of parallelism, and the selected sampling scale range is only a curve fitted by a small range such as [0-128], it is difficult to guarantee that it is reasonable under the 1024 scale
Even if the fitting function can overlap well in the previous range, there is no guarantee that it can fit well on a large scale
This limits the scope of application of the forecast
Moreover, the parallelism of some programs is required and cannot be changed continuously. In this way, the sampled data points cannot be evenly distributed.
[0008] The results are not reasonable enough: because the whole fitting process is analyzed purely mathematically, many internal dependencies of the program are ignored, so the need for program features is also ignored
[0011] Insufficient rationality: the branch probability is only the type of prior probability and branch instruction applied, and it cannot actually represent the target program
However, this does not meet our requirements

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Automatic Performance Prediction Method of Scientific Computing Program Based on llvm
  • Automatic Performance Prediction Method of Scientific Computing Program Based on llvm
  • Automatic Performance Prediction Method of Scientific Computing Program Based on llvm

Examples

Experimental program
Comparison scheme
Effect test

specific Embodiment approach 1

[0043] Specific implementation mode one: as figure 1 As shown, the present embodiment elaborates on the LLVM-based automatic performance prediction method for scientific computing programs of the present invention:

[0044] 1. Overall structure:

[0045] Realize the overall architecture diagram of the automatic performance prediction method for scientific computing programs based on LLVM, such as figure 1 shown;

[0046] For the performance model, our solution is not to give a formula and submit it to manual calculation like the traditional dynamic analysis method, because if the formula is too complicated, it is necessary to actually write a program to perform the calculation. So we skip the step of the formula, and then directly give a program, which can report the predicted program time when executed, and call this program DwarfCode. When building DwarfCode, I choose to build directly from the source code, retain the calculation code from the input to the number of cycle...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

An LLVM-based automatic performance prediction method for scientific computing programs belongs to the technical field of program performance prediction. The purpose of the present invention is to realize the automatic analysis of scientific calculation program, improve the accuracy of static analysis, and at the same time, it can finally give the time of program prediction. Technical points: convert the predicted source program into the intermediate code bitcode in LLVM; analyze the intermediate code bitcode to obtain the call, cycle times, and static branch probability of the identification communication instruction MPI; perform mixed instrumentation on the intermediate code bitcode; mix the The intermediary code bitcode after stubbing is pruned for optimization; run the optimized intermediary code bitcode to obtain the llvmprof.out file; analyze the llvmprof.out file and combine the instruction time to predict the execution time. The method of the invention is suitable for performance prediction of scientific computing programs.

Description

technical field [0001] The invention discloses a scientific calculation program automatic performance prediction method, which belongs to the technical field of program performance prediction. Background technique [0002] High-performance computing is an important branch of computer science, and performance is a key characteristic of high-performance computing. Program execution time is the performance feature that users are most concerned about. The reason why users choose to use hundreds of processors to process programs is that they need to obtain program running results within a limited time. Therefore, predicting the execution time of parallel programs on a certain platform has been more and more researched, and this technique is called program profiling. [0003] Performance evaluation methods can be divided into dynamic analysis and static analysis. [0004] The so-called dynamic analysis method is to predict large-scale through small-scale, that is, to measure mul...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Patents(China)
IPC IPC(8): G06F11/36
Inventor 张伟哲何慧谢虎成郝萌王学惠韩硕鲁刚钊
Owner 哈尔滨工业大学人工智能研究院有限公司
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products