Automatic vectorizing method for heterogeneous SIMD expansion components

A technology for expanding components and vectors, applied in the field of automatic parallelization of high-performance computing, can solve the problems of inability to vectorize, poor portability and scalability, inconsistent results, etc., and achieve the effect of improving execution efficiency.

Inactive Publication Date: 2013-09-04
THE PLA INFORMATION ENG UNIV
View PDF2 Cites 30 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0007] Among the above three typical vectorization methods, the traditional vectorization analyzes the loop layer by layer, and cannot be vectorized when the dependency is the inner loop carrying a dependency ring; the superword parallel vectorization has certain randomness in the packet generation, which may cause The fina

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 vectorizing method for heterogeneous SIMD expansion components
  • Automatic vectorizing method for heterogeneous SIMD expansion components
  • Automatic vectorizing method for heterogeneous SIMD expansion components

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0056] see Figure 1~3 , described in detail for the present invention, a kind of automatic vectorization method for heterogeneous SIMD expansion components The specific implementation steps are as follows:

[0057] 1 virtual vector instruction set

[0058] The virtual instruction set includes seven types of basic instructions, including access instructions, arithmetic operation instructions, logical operation instructions, shift instructions, selection instructions, comparison instructions, and sorting instructions. These instructions are basic vectors abstracted from different lengths and different SIMD instruction sets. Operations can be regarded as atomic instructions, and special instructions in a specific SIMD instruction set architecture can be implemented through the sequence combination of virtual instructions. The actual instruction set has a variety of different vector lengths such as 128 bits, 160 bits, 256 bits, 320 bits and 512 bits, not 2 n The vector length o...

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 relates to the field of high-performance computing automatic parallelization, in particular to an automatic vectorizing method for heterogeneous SIMD expansion components. The automatic vectorizing method is suitable for the heterogeneous SIMD expansion components with different vector quantity lengths and different vector quantity instruction sets, a set of virtual instruction sets are designed, and an input C and a Fortran program can be converted into an intermediate representation of virtual instructions under an automatic vectorizing unified framework. The virtual instruction sets are automatically converted into vectorizing codes for the heterogeneous SIMD expansion components through solving virtualization of the vector quantity lengths and solving virtualization of the instruction sets so that a programmer can be free from complex manual vectorizing coding work. The vectorizing method is combined with relative optimizing methods, vectorizing recognition is carried out from different granularities, mixing parallelism of a circulation level and a basic block level is explored to the greatest extent through conventional optimization and invocation point optimization, the redundancy optimization is carried out on generated codes through the analysis about striding data dependence of a basic block, and executing efficiency of a program is effectively improved.

Description

technical field [0001] The invention relates to the field of automatic parallelization of high-performance computing, in particular to an automatic vectorization method for heterogeneous SIMD expansion components. Background technique [0002] Human beings' endless demand for computing power makes parallel computing technology more and more people's attention. Generally speaking, the development of parallel hardware technology is much faster than the development of parallel software technology. SIMD expansion components provide hardware support for improving program performance. In order to give full play to the performance of SIMD expansion, it is necessary to fully explore the parallelism in the program and develop vectorized programs with good scalability. [0003] Nowadays, the scale of computing problems is huge and the amount of calculation is large, and it is difficult to manually write vectorized programs. Automatic vectorization technology analyzes the characteristi...

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): G06F9/34
Inventor 赵荣彩庞建民姚远刘鹏索维毅
Owner THE PLA INFORMATION ENG UNIV
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