Browse Prior Art Database

Management of Traffic in Memory Hierarchy

IP.com Disclosure Number: IPCOM000042034D
Original Publication Date: 1984-Mar-01
Included in the Prior Art Database: 2005-Feb-03
Document File: 2 page(s) / 34K

Publishing Venue

IBM

Related People

Giraud, FA: AUTHOR [+4]

Abstract

Bottlenecks of traffic in memory hierarchies are dealt with by stacking pending blocks/lines according to a first-come, first-serve scheme. Let L1, L2 and L3 be three levels of storage in a memory hierarchy of a computer system such that L1 is the closest one to a CPU. For example, L1 and L2 are caches, and L3 is the main memory. Since, for a fixed-size storage, there is a trade-off between the directory space and storage units, in order that L2 be substantially larger than L1, its storage units must also be much larger. Let us call the storage units line and block in L1 and L2, respectively. On a L1 miss of a line, the request goes to L2, and if the line is not in L2, the whole block containing the line must be fetched from L3 to L2.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 87% of the total text.

Page 1 of 2

Management of Traffic in Memory Hierarchy

Bottlenecks of traffic in memory hierarchies are dealt with by stacking pending blocks/lines according to a first-come, first-serve scheme. Let L1, L2 and L3 be three levels of storage in a memory hierarchy of a computer system such that L1 is the closest one to a CPU. For example, L1 and L2 are caches, and L3 is the main memory. Since, for a fixed-size storage, there is a trade-off between the directory space and storage units, in order that L2 be substantially larger than L1, its storage units must also be much larger. Let us call the storage units line and block in L1 and L2, respectively. On a L1 miss of a line, the request goes to L2, and if the line is not in L2, the whole block containing the line must be fetched from L3 to L2. Since it takes a much longer period of time to transfer a block than a line, there are bottlenecks of traffic between L2 and L3 if bursts of misses of L2 blocks occur from time to time. An obvious idea is to install a queue (first-come, first-serve) of lines waiting to be loaded. However, this does not reflect the reference pattern of the CPU. This article proposes that pending blocks/lines be stacked up (last-come, first-serve), as shown in the figure based on the following observations: 1. When a line of a block is referenced, the chance that the rest of the lines in the block will be immediately referenced is very high. 2. For a short period of time, when a CPU references lines from block...