Browse Prior Art Database

Prefetching Confirmation Array

IP.com Disclosure Number: IPCOM000043878D
Original Publication Date: 1984-Oct-01
Included in the Prior Art Database: 2005-Feb-05
Document File: 2 page(s) / 36K

Publishing Venue

IBM

Related People

Pomerene, J: AUTHOR [+4]

Abstract

Cache line prefetching accuracy is improved by preventing recurrent prefetches of cache lines not used within a specific period of time. Any prefetch mechanism operates in the following manner: 1) Driven by an access key, a line address is generated. 2) If the generated address is not in the cache, the line is prefetched subject to valid bit(s) being checked. The Prefetching Mechanism (M) is created and maintained through the access pattern of the processor. Whatever the form of M, the prefetching accuracy can be improved through the use of a Prefetching Confirmation Array (PCA), as described below. As shown in the figure, the PCA is made up of a number of entries. Each PCA entry has the key which induced the prefetch and the address of the line prefetched.

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 72% of the total text.

Page 1 of 2

Prefetching Confirmation Array

Cache line prefetching accuracy is improved by preventing recurrent prefetches of cache lines not used within a specific period of time. Any prefetch mechanism operates in the following manner: 1) Driven by an access key, a line address is generated. 2) If the generated address is not in the cache, the line is prefetched subject to valid bit(s) being checked. The Prefetching Mechanism (M) is created and maintained through the access pattern of the processor. Whatever the form of M, the prefetching accuracy can be improved through the use of a Prefetching Confirmation Array (PCA), as described below. As shown in the figure, the PCA is made up of a number of entries. Each PCA entry has the key which induced the prefetch and the address of the line prefetched. All processor accesses (MRU (Most Recently Used) changes suffice) are monitored by PCA. If the address field of the PCA entry equals the accessed address, the PCA entry is deleted (the prefetch has been used). On each prefetch attempt the address of the line to be prefetched is compared to the current PCA line addresses and to the current cache contents. A - If the address is not in the PCA and not in the cache, a new PCA entry is created. Should this added entry cause the PCA to overflow its capacity, an existing entry is removed. The removed entry initiates an invalidation action. B - If the address is in the cache and not in the PCA, one can optionally do as in A or make no PC...