Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Golang program efficient interprocess escape analysis method based on value flow analysis

An analysis method and inter-process technology, applied in the field of program analysis, can solve problems such as low efficiency of escape analysis, and achieve the effect of improving efficiency and high scalability

Pending Publication Date: 2022-07-22
NANJING UNIV OF POSTS & TELECOMM
View PDF0 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, the current escape analysis efficiency is still low, especially there is no good solution for inter-process escape analysis. Therefore, this paper combines the idea of ​​value flow graph to reduce the scale of escape analysis within the process, and uses data flow analysis to construct an abstract value flow graph. process, improve the accuracy of value flow analysis, and combine the idea of ​​high-order functions in functional programming to abstract the analysis process of escape variables, reduce the time of escape analysis, improve the accuracy of escape analysis between processes, and improve the execution efficiency of Golang programs. The improvement of compilation optimization technology is of great significance

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
  • Golang program efficient interprocess escape analysis method based on value flow analysis
  • Golang program efficient interprocess escape analysis method based on value flow analysis
  • Golang program efficient interprocess escape analysis method based on value flow analysis

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0032] refer to figure 1 , the present invention discloses a Golang program high-efficiency inter-procedural escape analysis method based on value flow analysis, comprising the following steps:

[0033]Firstly, the function escape analysis is performed based on the function call graph (Call Graph) of the Golang program to be analyzed. This process is further divided into intra-procedure escape analysis and inter-procedure escape analysis.

[0034] The above steps include, taking the Golang source file as input, preprocessing the Golang program, obtaining an intermediate code representation based on the SSA (Static Single Assignment) form, creating an interprocedural function call graph (CallGraph) and intraprocedural control Control Flow Graph; reverse topological sorting of the function call graph (Call Graph) to obtain the function sequence to be analyzed; if the function sequence to be analyzed is not empty, take out the function from the function sequence to be analyzed to...

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

The invention discloses a value flow analysis-based Golang program efficient interprocess escape analysis method, which comprises the following steps of: preprocessing a Golang program to obtain an intermediate code representation based on a static single assignment form, and creating an interprocess function call graph and an intra-process control flow graph; performing inverse topological sorting on the function call graph, establishing a to-be-analyzed function sequence, and judging whether the to-be-analyzed function relates to inter-process call or not; respectively calculating escape variables of the target function according to different discriminations; based on escape variables of all functions in a function call graph analysis program, combining ESCs of all analysis functions to obtain a final set of escape variable values; the escape analysis of the Golang program is carried out based on the SSA code intermediate representation, the expandability is high, and subsequent code data flow analysis is facilitated.

Description

technical field [0001] The invention relates to the technical field of program analysis, in particular to a method for analyzing efficient inter-procedural escape of Golang programs based on value flow analysis. Background technique [0002] With the continuous development and improvement of programming languages, the performance of program execution begins to receive more and more attention. In order to improve the performance of a program, optimization techniques are often needed. Compilation optimization refers to the technology of improving system or program-related performance through certain methods or strategies in the process of program compilation. At present, compilers of many mainstream programming languages ​​have compilation optimization functions. A program needs to be compiled to generate an executable file before it can run on the corresponding target machine. The compilation process includes compilation front-end, compilation back-end optimization and comp...

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
IPC IPC(8): G06F8/41
CPCG06F8/41G06F8/441G06F8/4435
Inventor 张迎周密杰卢跃
Owner NANJING UNIV OF POSTS & TELECOMM
Features
  • Generate Ideas
  • Intellectual Property
  • Life Sciences
  • Materials
  • Tech Scout
Why Patsnap Eureka
  • Unparalleled Data Quality
  • Higher Quality Content
  • 60% Fewer Hallucinations
Social media
Patsnap Eureka Blog
Learn More