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

Dynamic load balancing

a load balancing and dynamic technology, applied in the field of dynamic load balancing, can solve the problems of high latency, high latency, and impeded operation of the ama, and achieve the effect of optimizing memory latency

Active Publication Date: 2005-10-20
MIPS TECH INC
View PDF6 Cites 16 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

[0008] Preferred embodiments of the present invention seek to optimise the memory latency in situations where more than one thread is requesting memory access. To achieve this, a register is used to store the page address of the last memory access accepted by the memory. For each access of each thread at the arbiter input the respective page addresses are calculated and compared with the page address held in the register storing the page address of the last memory access. This comparison can then be used to produce an in-page indication. In-page metrics of the various threads are then derived by multiplying the in-page indication with a user-defined weight, allowing user control over the in-page optimisation of memory accesses and between different threads. Note that memory with both open and close page policy could be optimised.

Problems solved by technology

However there are two main problems with such a scheme.
For example, if the memory is operating on the open page policy and the pre-arbiter chooses to send a memory access which is not in the same page as the last access, a high memory cycle latency will result due to amount of time needed to open a new page.
On the other hand, if the memory is operating on the close page policy, sending a memory request in the same page as the last would similarly result in a high latency.
This means it is possible that the operation of the AMA could be impeded.
In particular, in cases where there are periods of intense memory activity, the AMA control system could be overloaded simply due to the fact that the prearbiter 3 does not have any thread AMA information.

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
  • Dynamic load balancing
  • Dynamic load balancing
  • Dynamic load balancing

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0011] Preferred embodiments of the invention will now be described in detail by way of example with reference to the accompanying drawings in which:

[0012]FIG. 1 shows the typical sub-modules for a multi-threaded processor discussed above;

[0013]FIG. 2 shows schematically the architecture of a memory prearbiter embodying the invention;

[0014]FIG. 3 shows schematically the implementation of in-page metric generation in an embodiment of the invention;

[0015]FIG. 4 shows schematically the implementation of the AMA extraction block for a thread for use in an embodiment of the invention;

[0016]FIG. 5 shows an implementation of overall metric generation for a thread N in an embodiment of the invention;

[0017]FIG. 6 shows schematically the arbitration block in an embodiment of the invention; and

[0018]FIG. 7 shows re-ordering of thread metrics in an embodiment of the invention.

[0019]FIG. 2 shows schematically a memory prearbiter 1. This comprises an AMA extraction unit 4 receiving AMA inp...

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

A method and apparatus are provided for dynamically allocating access bandwidth to one or more resources to the threads of a multithreaded processor. This is done by providing an execution based metric for each thread and providing access to the resource in dependence on the execution based metrics of the threads. In addition, or alternatively, a resource based metric can be determined and access to the resource provided in dependence on the resource based metric.

Description

FIELD OF THE INVENTION [0001] This invention relates to a method and apparatus to dynamically allocate access bandwidth to one or more resources, such as memory to the threads of a multi-threaded microprocessor. In the case of memory access this improves memory latency, and in particular avoids overloading of an automatic MIPS allocation (AMA) control system in periods of intensive memory activity. BACKGROUND OF THE INVENTION [0002] Our British patent application no. 9607153.5 describes a multi-threaded processor and data processing management system in which a plurality of execution threads are routed between a plurality of data inputs and a plurality of data outputs via a data processing means. The data processing means has access to a data storage means. The system repeatedly determines which routing operations and which data processing operations are capable of being performed and commences execution of at least one of the routing or data processing operations on each clock cycl...

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
CPCG06F9/5016G06F9/50
Inventor KO, YIN NAMISHERWOOD, ROBERT GRAHAM
Owner MIPS TECH INC