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

Method for partitioning dynamic tasks of CPU and GPU based on load balance

A technology of load balancing and dynamic tasks, applied in the direction of resource allocation, multi-programming devices, etc., can solve the problems of large performance fluctuation range, unbalanced task load between CPU and GPU, unbalanced task load between CPU cores, etc., to improve performance. , to ensure the effect of task load balancing

Inactive Publication Date: 2010-05-12
NAT UNIV OF DEFENSE TECH
View PDF0 Cites 71 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

Second, GPU performance is greatly affected by other factors, and the performance fluctuates in a large range
[0007] 1. The task division ratio between CPU and GPU is specified by a static method, resulting in unbalanced CPU and GPU task loads
[0008] 2. The task division ratio between CPU cores adopts an even distribution method, resulting in unbalanced task load among CPU cores

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 partitioning dynamic tasks of CPU and GPU based on load balance
  • Method for partitioning dynamic tasks of CPU and GPU based on load balance
  • Method for partitioning dynamic tasks of CPU and GPU based on load balance

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0036] figure 1 It is an overall flow chart of the present invention. The present invention comprises the following steps:

[0037] The first step is to build and initialize the CPU-GPU task division ratio database DB1, and DB1 records Gsplit under different problem scales of M groups i , i ∈ [0, M-1] values.

[0038] The second step is to construct and initialize the task division ratio database DB2 among CPU cores, and record the proportion of each CPU core participating in task execution to the total CPU tasks.

[0039] The third step is to start the application.

[0040] The fourth step is to execute the code in the CPU execution area of ​​the application program.

[0041] The fifth step is to enter the entrance of the GPU acceleration area, and calculate the problem scale F and the total calculation amount S of this parallel task. The calculation amount S includes all fixed-point and floating-point operations in the parallel task.

[0042] The sixth step is to divide...

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 partitioning dynamic tasks of CPU and GPU based on load balance, aiming at solving the technical problem of realizing the load balance between CPU and GPU and among multiple cores of CPU. The technical scheme of the method is as follows: establishing two databases for the task partitioning between CPU and GPU and among multiple cores of CPU; recording the partitioning proportion of tasks, wherein the partitioning proportion of tasks between CPU and GPU is determined according to problem scales; automatically adjusting the partitioning proportion of tasks in the whole executing processes of an application according to the actual measurement performance of CPU and GPU, thus realizing the load balance of task partitioning. The adoption of the method can ensure the load balance of tasks of CPU and GPU, improve the performance that a scientific computing program utilizes the GPU to accelerate, balance the task load among all the cores of CPU, and improve the performance of the multi-core CPU.

Description

technical field [0001] The invention relates to an optimization method for accelerating scientific computing by using a Graphics Processing Unit (GPU), in particular to a two-level dynamic task division method based on load balance between CPU and GPU. Background technique [0002] In the past, GPUs were usually used in graphics and image applications. With the continuous development of GPU hardware technology and the development of programming models, more and more attention has been paid to the powerful computing capabilities of GPUs. A large number of scientific computing programs use GPUs to accelerate their key code segments. , a good speedup is obtained. At the same time, with the advent of the CPU multi-core era, the computing power of the CPU is also increasing. If the CPU is also involved in the calculation while the GPU is performing calculations, a better speedup ratio will be obtained. The load balance of this mixed programming method of CPU+GPU heterogeneous sy...

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/50
Inventor 廖湘科王锋杨灿群陈娟杜云飞易会战黄春赵克佳
Owner NAT UNIV OF DEFENSE TECH
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