Supercharge Your Innovation With Domain-Expert AI Agents!

A symbolic execution method and system based on image processor acceleration

An image processor and symbolic execution technology, applied in the computer field, can solve the problems of not considering parallelization, symbolic path explosion, accelerated symbolic execution, etc., and achieve the effect of large number of cores, accelerated symbolic execution, and high parallelism

Active Publication Date: 2020-11-06
SHANGHAI JIAOTONG UNIV
View PDF1 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] A very important technical challenge of symbolic execution is the path explosion problem: the phenomenon that the number of paths in a program grows exponentially with the number of branches
As the size of the target program increases, it is difficult to solve the problem of path explosion fundamentally. The above methods can only alleviate the path explosion to a certain extent, and these methods do not consider how to parallelize to speed up symbolic execution.

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
  • A symbolic execution method and system based on image processor acceleration
  • A symbolic execution method and system based on image processor acceleration
  • A symbolic execution method and system based on image processor acceleration

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0063] The process of symbolic execution based on GPU acceleration includes four parts: [CPU state initialization], [GPU parallel execution], [CPU update state collection] and [CPU constraint solving].

[0064] Step (1): The CPU first initializes; allocates memory to store the corresponding state set and path constraint set. The data structure of the state is as follows Figure 4 As shown, the PC value is the current instruction position of the analyzed program; the constraint label is the label of the constraint in the current state, and the constraint information is stored in the main memory, and the internal memory and the video memory only transmit its label; the symbol mapping is variable to symbol Map between expressions. At the beginning, there is only one state, and its state is: (PC value, constraint label, symbol mapping) = (0, 0, null). At this time, the PC value is 0, and the corresponding path constraint of 0 label is 1, which means it must be satisfied . Alloc...

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 provides a symbol execution method and system based on image processor acceleration. The symbol execution method comprises a symbol execution decomposition step of decomposing the symbolexecution into a parallelizable part and a non-parallelizable part; and a task allocation step of allocating the parallelizable part to a GPU for parallel execution, and allocating the non-parallelizable part to the CPU for execution. According to the method and the system, the simple instruction analysis process is executed in parallel by utilizing the characteristics of large kernel number andhigh parallelism of the GPU, so that the path explosion problem is relieved, and the symbol execution is accelerated.

Description

technical field [0001] The present invention relates to the field of computer technology, in particular to a symbolic execution method and system based on image processor acceleration. Background technique [0002] Graphics Processing Unit (GPU) has the advantages of high throughput, high memory bandwidth, and high parallelism, making many applications using GPU acceleration hundreds of times faster than traditional multi-core CPUs; and the programming interface of GPU is now It is also relatively mature. For example, the mainstream GPU programming interface includes CUDA, which is a GPU programming interface launched by NVIDIA (NVIDIA), and OpenCL is an open source GPU programming interface. [0003] Symbolic execution (Symbolic Execution) is a program analysis technique whose main idea is to use symbols as input instead of specific values ​​as input to analyze the program. In software testing, symbolic execution can be used to generate specific test cases for each program...

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): G06T1/20G06F9/50
CPCG06F9/5016G06F9/5027G06T1/20
Inventor 陈典章王夏阳陈海波臧斌宇
Owner SHANGHAI JIAOTONG UNIV
Features
  • R&D
  • 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