Lower overhead shared cache invalidations
AssigneeInternational Business Machines Corporation
InventorsBrian K. Martin, Martin J. C. Presler-Marshall
Life of this patent
Estimating the term…
Abstract
Under the present invention, a system, method, and program product are provided for reducing the overhead of cache invalidations in a shared cache by transmitting a hashed code of a key to be invalidated. The method for shared cache invalidation comprises: hashing a key corresponding to an object in a first cache that has been modified or deleted to provide a hashed code of the key, wherein the first cache forms part of a shared cache; transmitting the hashed code of the key to other caches in the shared cache; comparing the hashed code of the key with entries in the other caches; and dropping any keys in the other caches having a hash code the same as the hashed code of the key.
Claims16
A method for shared cache invalidation, comprising:
- hashing a key corresponding to an object in a first cache that has been modified or deleted to provide a hashed code of the key, wherein the first cache forms part of a shared cache;
- transmitting only the hashed code of the key to other caches in the shared cache;
- comparing the hashed code of the key with entries in the other caches;
- and
- dropping any keys in the other caches having a hash code the same as the hashed code of the key.
A method for shared cache invalidation, comprising:
- hashing a key corresponding to an object in a cache that has been modified or deleted to provide a hashed code of the key, wherein the cache forms part of a shared cache;
- and
- transmitting only the hashed code of the key to other caches in the shared cache for invalidation processing.
A method for shared cache invalidation, comprising:
- hashing a key corresponding to an object in a cache that has been modified or deleted to provide a hashed code of the key, wherein the cache forms part of a shared cache;
- transmitting the key and the hashed code of the key to the other caches in the shared cache for invalidation processing;
- at each of the other caches in the shared cache:
- hashing the key to provide a second hashed code of the key;
- and
- comparing the hashed code of the key and the second hashed code of the key;
- wherein the method for shared cache invalidation is not applicable to the key if the hashed code of the key and the second hashed code of the key are not the same at any of the other caches.
A method for shared cache invalidation, comprising:
- receiving at a cache a key and a hashed code of the key, wherein the hashed code of the key corresponds to an object that has been modified or deleted in another cache;
- performing invalidation processing on the cache based on the received hashed code of the key;
- hashing the key to provide a second hashed code of the key;
- and
- comparing the hashed code of the key and the second hashed code of the key;
- wherein the invalidation processing is not performed if the hashed code of the key and the second hashed code of the key are not the same at any of the other caches.
A system for shared cache invalidation, comprising:
- a system for hashing a key corresponding to an object in a cache that has been modified or deleted to provide a hashed code of the key, wherein the cache forms part of a shared cache;
- and
- a system for transmitting only the hashed code of the key to other caches in the shared cache for invalidation processing.
A system for shared cache invalidation, comprising:
- a system for receiving at a cache a key and a hashed code of the key, wherein the hashed code of the key corresponds to an object that has been modified or deleted in another cache;
- a system for performing invalidation processing on the cache based on the received hashed code of the key;
- a system for hashing the key to provide a second hashed code of the key;
- and
- a system for comparing the hashed code of the key and the second hashed code of the key;
- wherein the invalidation processing is not performed if the hashed code of the key and the second hashed code of the key are not the same at any of the other caches.
A program product for shared cache invalidation stored on a recordable medium, which when executed, comprises:
- program code for hashing a key corresponding to an object in a cache that has been modified or deleted to provide a hashed code of the key, wherein the cache forms part of a shared cache;
- and
- program code for transmitting only the hashed code of the key to other caches in the shared cache for invalidation processing.
A program product for shared cache invalidation stored on a recordable medium, which when executed, comprises:
- program code for receiving at a cache a key and a hashed code of a the key, wherein the hashed code of the key corresponds to an object that has been modified or deleted in another cache;
- program code for performing invalidation processing on the cache based on the received hashed code of the key;
- program code for hashing the key to provide a second hashed code of the key;
- and
- program code for comparing the hashed code of the key and the second hashed code of the key;
- wherein the invalidation processing is not performed if the hashed code of the key and the second hashed code of the key are not the same at any of the other caches.
Dependencies are inferred from the claim text.