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

Method for automatically parallelizing program

An automatic and procedural technology, applied in the direction of program control devices, concurrent instruction execution, machine execution devices, etc., can solve the problems of complex parallel programming and poor portability, and achieve accelerated computing processes, reduced development costs, and high reusability Effect

Inactive Publication Date: 2011-03-23
ZHEJIANG UNIV
View PDF3 Cites 16 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] In order to solve the problems of complex parallel programming and poor portability in the multi-core hardware environment, improve the utilization efficiency of multi-core hardware resources, and reduce the programming burden of multi-core parallel programmers, the purpose of the present invention is to provide a platform-independent serial program automatic parallelization Methods

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
  • Method for automatically parallelizing program
  • Method for automatically parallelizing program
  • Method for automatically parallelizing program

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0016] The method for automatic parallelization of programs provided by the present invention will be described in further detail below in conjunction with the accompanying drawings:

[0017] figure 1 It is an overall flowchart of an embodiment of the present invention, and the method includes the following steps:

[0018] The first step is to obtain the source program, and obtain the parallel part including the loop and the branch part by analyzing the source program;

[0019] The second step is to divide the parallel part in the source program into multiple parallel modules, and each parallel module is assigned to different processors for processing through threads;

[0020] The third step is to compile the parallel expanded source program into executable code.

[0021] Wherein, to obtain the parallel part including the loop and the branch part in the source program, a commonly used judgment method can be adopted. For example, if there are keywords in the program such as w...

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 method for automatically parallelizing a program. The method comprises the following steps of: (1) acquiring a source program and acquiring a parallel part comprising a cyclic part and a branch part by analyzing the source program; (2) dividing the parallel part in the source program into a plurality of parallel modules, wherein the parallel modules are allocated to different processors for processing through threads; and (3) compiling the source program subjected to parallel extension into an executable code. The method has the advantages of providing a simple program parallelizing environment, fully designing the unique advantages in aspects of simplicity, safety and portability, achieving extremely high operating safety and reusability during development, greatly reducing multi-platform development cost, fully utilizing hardware resource, improving program performance and quickening a computation process.

Description

technical field [0001] The invention relates to the field of parallel program design and compiler design, in particular to a method for automatic parallelization of programs. Background technique [0002] At present, the number of computer cores is increasing continuously. To reflect the advantages of multi-core, it is necessary to make full use of multi-core hardware resources, so it is necessary to realize multi-core parallel computing. Parallel programming is a good implementation method, but parallel programming is difficult, which makes it difficult for programmers who are accustomed to serial programming to adapt to parallel programming mode. The difficulty of parallel programming is that it is difficult for programmers to determine where to implement parallelism in the program, and the height of multi-threaded parallel programs is very troublesome. The processing of data dependencies between threads and the choice of parallel level all affect parallel programming. If...

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 Applications(China)
IPC IPC(8): G06F9/38G06F9/44
Inventor 陈天洲虞保忠乐金明乔福明马建良
Owner ZHEJIANG UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products