Thread division method for avoiding unrelated dependence on many-core processor structure

A technology of many-core processors and threads, applied in the field of microprocessor architecture design, to achieve the effects of reducing synchronization overhead, improving effective utilization, and improving overall parallel performance

Inactive Publication Date: 2014-04-02
SOUTHWEAT UNIV OF SCI & TECH
View PDF3 Cites 9 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

The resulting unnecessary dependencies between specu

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
  • Thread division method for avoiding unrelated dependence on many-core processor structure
  • Thread division method for avoiding unrelated dependence on many-core processor structure
  • Thread division method for avoiding unrelated dependence on many-core processor structure

Examples

Experimental program
Comparison scheme
Effect test

Example Embodiment

[0054] Examples:

[0055] LLVM is a compilation framework tool that provides compilation analysis and optimization of the entire program life cycle. Its architecture is mainly divided into three parts: LLVM intermediate representation-LLVM virtual instruction set (LLVA); an integrated library that completes program analysis, optimization and code generation; and tools built on the above integrated library, including assembler , Linker, debugger, etc. The intermediate representation of LLVM provides an explicit control flow graph and an explicit data flow graph, which can effectively support the control flow graph and data flow graph construction required by our proposed method. And LLVA is independent of the target machine, which makes it not dependent on a specific machine architecture and has better versatility. The steps of the many-core thread division method implemented on LLVM to avoid irrelevant dependencies are as follows:

[0056] Step one, program analysis, determine t...

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 thread division method for avoiding unrelated dependence on a many-core processor structure. The method comprises the following steps of profiling to determine a loop structure with parallel potential; determining a control flow diagram of the loop iteration body; determining a data flow diagram of the loop iteration body; determining the number of derivative speculation threads; performing thread division through dependence separation; performing thread encapsulation. Based on the current situation that the existing many-core thread division mechanisms all introduce unrelated dependence by taking the instruction basic block as a minimum unit, the invention provides a fine-grit thread division method based on dependence separation, which performs further fine-gritting of iteration inside the loop, and divides a serial program into simple and independent threads for speculative execution through unrelated data dependence between minimal threads, thereby reducing the influence on synchronous overhead caused by unnecessary dependence between speculative threads from the source.

Description

technical field [0001] The invention belongs to the field of microprocessor architecture design, in particular to a thread division method for avoiding irrelevant dependencies in the structure of many-core processors. Background technique [0002] The many-core processor structure is an exploration of the development path of the micro-processing chip architecture with on-chip scalability reaching thousands of cores and computing power reaching trillions of operations. Its computing resource density is higher, the on-chip communication overhead is significantly reduced, it can achieve high scalability of chip structure and performance, and it can well deal with the problems of power consumption, line delay and design complexity of nanotechnology generation chip design. [0003] Thread division refers to dividing a serial program into several threads (a thread is a discrete sequence of some related instructions in the program, which is independent from the execution of other i...

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/38
Inventor 王耀彬刘志勤陈菲彭莉娟李凌赵旭剑
Owner SOUTHWEAT UNIV OF SCI & TECH
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