Unlock instant, AI-driven research and patent intelligence for your innovation.

Method and system for task allocation under a multi-level shared cache architecture

A technology of high-speed caching and task allocation, applied in the architecture with a single central processing unit, resource allocation, general-purpose stored program computer, etc. The effect of distribution efficiency

Active Publication Date: 2020-08-18
XI AN JIAOTONG UNIV
View PDF12 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, if the cache space is evenly allocated, it will be unfair to tasks with large cache requirements

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 and system for task allocation under a multi-level shared cache architecture
  • Method and system for task allocation under a multi-level shared cache architecture
  • Method and system for task allocation under a multi-level shared cache architecture

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0050] A method for task allocation under a multi-level shared cache architecture, wherein the shared caches are all at the same level and the number is greater than 2, each shared cache is connected to the same number of cores, and each core can only allocate one task. Each task corresponds to a program, there is no data sharing between programs, and the program hotspots are loops. The number of tasks is greater than the number of shared caches and not greater than the number of all cores, that is, cores do not have hyperthreading when they are working.

[0051] Wherein, the task allocation can be performed in the same processor, or can be performed among multiple processors that share a cache.

[0052] The task assignment method includes the steps of:

[0053] 1) Extract the number of tasks, the number of cores connected to a single shared cache, and the number of shared caches; each task corresponds to a program, and for each program to be allocated, the corresponding foot...

Embodiment 2

[0061] A method for task allocation under the multi-level shared cache architecture based on embodiment 1, the difference is that step 2) is replaced by: 2A) calculate the locality parameter of each program, and then divide the program according to the size of the locality parameter of the program Sorting is performed to obtain a sorting sequence. At this time, each program is used as a sorting unit;

[0062] Wherein, the locality parameter of the program is the ratio of the footprint value of the program to the address sequence length value;

[0063] 2B) If the number of sorting units is greater than twice the number of shared caches, merge the sorting units at both ends of the sorting sequence into a subgroup; merge the remaining sorting units at both ends of the sorting sequence into a subgroup, and repeat until All sorting units form subgroups, or only one sorting unit is left; at this time, each subgroup is used as a new sorting unit, and if there are remaining sorting un...

Embodiment 3

[0070] A method for task allocation under a multi-level shared cache architecture, wherein, during task allocation, for each program to be allocated, the corresponding footprint value and address sequence length value are pre-calculated through off-line analysis. The first allocation method arranges and combines all tasks, enumerates all task allocation methods, calculates the locality parameters (footprint value / address sequence length value) of the task allocation method as the discriminant parameter, and selects the task with the smallest locality parameter The allocation method is used as the optimal task allocation method. The second algorithm directly calculates the locality parameter (footprint value / address sequence length value) of each task, and divides the tasks evenly through the size of the locality parameter to minimize the difference in locality parameters between tasks on each shared cache. What is obtained in this way is the optimal task allocation method.

...

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 task allocation method and system under a multi-level sharing cache memory framework, and belongs to the field of multi-core / many-core processor task allocation. The method introduces the ratio of a footprint value to a length value of an address sequence as a locality parameter, and applies a program locality principle to program allocation to effectively improve the utilization of an on-chip memory, so that system performance is improved, and operability is good. The method finds a task allocation mode with a minimum locality parameter by means of enumeration of taskallocation modes, and performs task allocation according to the task allocation mode; or the task assignment locality is uniform as much as possible by minimizing local difference between program clusters having the same shared Cache, the time of finding the best task allocation mode is reduced in the case of sacrificing a small amount of precision, and allocation efficiency of tasks is improved.

Description

technical field [0001] The invention belongs to the field of multi-core / many-core processor task allocation, and in particular relates to a task allocation method and system under a multi-level shared cache memory architecture. Background technique [0002] With the development of semiconductor technology and in pursuit of higher processor performance, more and more computer cores (core) are integrated into one die. These cores usually share a high level of high-speed cache memory (cache), in order to reduce the performance loss caused by off-chip memory access. However, as the number of cores grows, parallel computing tasks compete for on-chip shared resources, especially cache memory, which may lead to frequent cache failures and reduce the performance of parallel processing. Since different tasks require different shared resources, different combinations of parallel tasks will occupy different amounts of shared cache. Therefore, research on task scheduling and allocatio...

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): G06F9/48G06F9/50G06F15/78
CPCG06F9/4881G06F9/5016G06F15/7807
Inventor 伍卫国刘松谢骁崔元桢邹年俊
Owner XI AN JIAOTONG UNIV