Computer Cache System Providing Multi-Line Invalidation Messages
First Claim
Patent Images
1. A computer architecture comprising:
- a cache memory holding lines of data that may be individually invalidated;
a processor for executing program instructions operating on data from the cache memory;
a cache controller communicating with the cache memory and operating to;
(a) detect access of cache lines by operations of the processor where the access requires a transmission of invalidation messages for coherent cache operation;
(b) delay communication of the invalidation messages; and
(c) collect multiple delayed invalidation messages in a single combined invalidation message and transmit the single combined invalidation message instead of multiple invalidation messages.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer cache system delays cache coherence invalidation messages related to cache lines of a common memory region to collect these messages into a combined message that can be transmitted more efficiently. This delay may be coordinated with a detection of whether the processor is executing a data-race free portion of the program so that the delay system may be used for a variety of types of programs which may have data-race and data-race free sections.
-
Citations
19 Claims
-
1. A computer architecture comprising:
-
a cache memory holding lines of data that may be individually invalidated; a processor for executing program instructions operating on data from the cache memory; a cache controller communicating with the cache memory and operating to; (a) detect access of cache lines by operations of the processor where the access requires a transmission of invalidation messages for coherent cache operation; (b) delay communication of the invalidation messages; and (c) collect multiple delayed invalidation messages in a single combined invalidation message and transmit the single combined invalidation message instead of multiple invalidation messages. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method of reducing data communication burden for cache coherence protocols in a multiprocessor system having multiple processors associated with cache memory holding lines of data that may be individually invalidated, the method comprising the steps at each processor of:
-
(a) collecting cache line invalidation messages according to common regions of main memory; (b) combining the collected cache line invalidation messages in a compressed form; and (c) transmitting the combined compressed invalidation messages. - View Dependent Claims (15)
-
-
16. A method of operating a computer of a type having a cache memory holding lines of data that may be individually invalidated and a processor executing program instructions operating on data from the cache memory, the method comprising the steps of operating a cache controller communicating with the cache memory to:
-
(a) detect access of cache lines by operations of the processor where the access requires a transmission of invalidation messages for coherent cache operation; (b) detect whether current execution of instructions by the processor are from a data-race free region of the program, the data-race free region being a sequence of instructions operating on data that is unlikely to be invalidated by other processors during execution of the data-race free region by the processor; and (c) delay communication of the invalidation messages when the current execution of instructions is from a data-race free region of the program. - View Dependent Claims (17, 18, 19)
-
Specification