Browse Prior Art Database

Probabilistic Updating for Store-In Cache Cross-Interrogation

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

Publishing Venue

IBM

Related People

Krygowski, MA: AUTHOR

Abstract

This article describes a cross-interrogate (XI) mechanism for use in a multiprocessor in which each of the plural CPUs has a private store-in cache with its private cache directory. A SCE (system control element) contains the XI mechanism and is connected between main storage (MS) and each of the CPUs in the MP. For example, in a MP having three CPUs and one SCE, there are three copy directories (CDs) in the SCE having contents respectively corresponding to the contents of the cache directories in the three CPUs. An XI operation occurs in response to any cache miss, which is any CPU request that searches its cache directory and does not find any line of data for the requested address. An XI operation searches the other two CDs (i.e.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 2

Probabilistic Updating for Store-In Cache Cross-Interrogation

This article describes a cross-interrogate (XI) mechanism for use in a multiprocessor in which each of the plural CPUs has a private store-in cache with its private cache directory. A SCE (system control element) contains the XI mechanism and is connected between main storage (MS) and each of the CPUs in the MP. For example, in a MP having three CPUs and one SCE, there are three copy directories (CDs) in the SCE having contents respectively corresponding to the contents of the cache directories in the three CPUs. An XI operation occurs in response to any cache miss, which is any CPU request that searches its cache directory and does not find any line of data for the requested address. An XI operation searches the other two CDs (i.e., all remote CDs) for the requested line address to determine whether the latest version of a requested line of data is in the cache of another CPU or is in main storage. During the search of each remote CD, a conflicting CD entry may be found (i.e., a conflicting entry will have the same absolute address as the request). A conflicting entry may need to be changed or invalidated in its remote CPU cache directory, and the way it is changed is dependent on the request type (i.e., exclusive, read only, or conditionally exclusive) and the type of conflicting entry found. During the XI searching, a "probabilistic update" is done in the requestor's CPU directory and in its corresponding CD directory, and in any remote CD in which a conflicting entry is found. The XI search takes a fixed number of cycles (e.g., 2 cycles) regardless of whether any conflicting entry is found or not in any remote CD. The requestor's CD entry is probabilistically updated in the requestor's CPU directory and CD during the first cycle of this period. Any found conflicting entry is probabilistically updated during the last cycle of this XI search period. A verification of the probabilistic update overlaps the next operations for t...