Patent EP0389151A2 successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0389151A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

System and method for partitioned cache memory management

Assignee: International Business Machines Corp
•
Filing: 1990-03-08
•
Granted: —
•
Expires: 2010-03-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Improved performance of the storage system cache memory can be obtained by using a partitioned cache, in which storage data is classified into k categories using a pre-specified scheme of classification, and the cache is partitioned into a global sub-cache and k local sub-caches. When the data is required by the processor, data can be staged from the storage device, or the local sub-caches, to the global sub-cache, with data belonging to one of the categories being pushed from the global sub-cache to a corresponding one of the sub-caches, and additionally pushing data from the sub-caches into the storage device.

Inventors

  • 👤 Richard Lewis Mattson

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-30 10:38
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/084; G06F12/0866; G06F12/0871; G06F12/0873; G06F12/0893; G06F12/0897; G06F12/12; G06F12/121; G06F12/128; G06F12/0862; G06F2212/00; G06F2212/28; G06F2212/282; G06F2212/31; G06F2212/311

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 123 words
A storage system including main storage, a partitioned cache memory, a system controller and a user interface, wherein the data stored in the system is classified into k categories using a pre-specified scheme of classification and the cache partitioning defines a global sub-cache and k counterpart local sub-caches such that, when data is required via the user interface, it is supplied from the global sub-cache, data being staged from main storage, or form the appropriate local sub-cache, to the global sub-cache, as and if required, with data belonging to one of the categories being pushed from the global sub-cache to the corresponding one of the k sub-caches and other data being pushed from that sub-cache into main storage device, as and if required.
Claim 2
Dependent Claim 123 words
A storage system including main storage, a partitioned cache memory, a system controller and a user interface, wherein the data stored in the system is classified into k categories using a pre-specified scheme of classification and the cache partitioning defines a global sub-cache and k counterpart local sub-caches such that, when data is required via the user interface, it is supplied from the global sub-cache, data being staged from main storage, or form the appropriate local sub-cache, to the global sub-cache, as and if required, with data belonging to one of the categories being pushed from the global sub-cache to the corresponding one of the k sub-caches and other data being pushed from that sub-cache into main storage device, as and if required.
Claim 3
Dependent Claim 154 words
A system as claimed in claim 1, wherein the controller is arranged to maintain: a most recently referenced pointer that identifies the data item stored in the global sub-cache, irrespective of category, most recently referenced via the user interface, as determined by a pre-established formula; a global least recently referenced pointer that identifies the data item stored in the global sub-cache least recently referenced via the user interface, as determined by the pre-established formula; and K category pointers, each of which identifies the least recently referenced or lowest priority data item of its corresponding category in the corresponding sub-cache; whereby by staging required data via the subcache corresponding to its category and pushing data indicated by the global and corresponding category pointers the controller is able to store data items most recently referenced by the processor in the global sub-cache and, in each of K category sub-cache, only data items of the corresponding category.
Claim 4
Independent Claim 47 words
A system as claimed in either preceding Claim, as part of a hierarchy of such systems, the user interface interfacing with a processor or with the cache of the next lower system and main storage being able to be the cache of the connected next higher system.
Claim 5
Dependent Claim 52 words
A system as claimed in Claim 3, wherein when a data item requested via the user interface is already stored in one of the category sub-caches, the data item is staged to the global sub-cache, and a data item of the same category in main storage is staged into that category sub-cache.
Claim 6
Independent Claim 132 words
A method of data promotion in a storage system including main storage, a partitioned cache memory, a system controller and a user interface, wherein the data stored in the system is classified into k categories using a pre-specified scheme of classification and the cache partitioning defines a global sub-cache and k counterpart local sub-caches, the method being such that, when data is required via the user interface, it is supplied from the global sub-cache, data being staged from main storage, or form the appropriate local sub-cache, to the global sub-cache, as and if required, with data belonging to one of the categories being pushed from the global sub-cache to the corresponding one of the k sub-caches and other data being pushed from that sub-cache into main storage device, as and if required.
Claim 7
Independent Claim 132 words
A method of data promotion in a storage system including main storage, a partitioned cache memory, a system controller and a user interface, wherein the data stored in the system is classified into k categories using a pre-specified scheme of classification and the cache partitioning defines a global sub-cache and k counterpart local sub-caches, the method being such that, when data is required via the user interface, it is supplied from the global sub-cache, data being staged from main storage, or form the appropriate local sub-cache, to the global sub-cache, as and if required, with data belonging to one of the categories being pushed from the global sub-cache to the corresponding one of the k sub-caches and other data being pushed from that sub-cache into main storage device, as and if required.
Claim 8
Dependent Claim 213 words
A method as claimed in Claim 5, wherein the cache and data are partitioned by: dividing the cache into k category sub-caches and a global sub-cache; identifying each data item in main storage as belonging to one of k categories of data items, each category corresponding to one of the category sub-caches; storing in each of at least some of the k local sub-caches a plurality of data items belonging to the corresponding data category; storing in a global sub-cache data items belonging to any of the data categories: and when attempting to reference a first data item and, if the first data item is not located in the global sub-cache nor in any of the category sub-caches: removing a second data item from the global sub-cache, wherein the second data item is the least-recently-used or lowest priority data item in the global sub-cache; noting the data type of the second data item as type k; removing a third data item from a category sub-cache k, wherein the third data item is the least recently used or lowest priority data item in category sub-cache k; placing the second data item into category sub-cache k; designating the second data item as the most recently used or lowest priority data item in category sub-cache k.
Claim 9
Dependent Claim 70 words
A method as claimed in Claim 6, additionally comprising referencing a first data item and, if the first data item is stored in the global sub-cache, identifying the first data item as the most recently used or highest priority data item in the global sub-cache and wherein pointers are maintained to identify the highest priority data item in the global sub-cache and the lowest priority data items in each sub-cache.
Claim 10
Dependent Claim 151 words
A method as claimed in either Claim 6 or Claim 7, additionally comprising referencing a first data item and, if the first data item is stored in local sub-cache j: removing a second data item from the global sub-cache, wherein the second data item is the least recently used or lowest priority data item in the global sub-cache; noting the data type of the second data item as type k; if type k is different from type j, then: pre-fetching from the storage device into the category sub-cache j the most recently used or highest priority data item of type j that is in neither the global sub-cache nor in category sub-cache j; removing from the composite cache the least recently used or lowest priority data item in category sub-cache k; and designating the second data item as the most recently used or highest priority data item in category sub-cache k.
Claim 11
Dependent Claim 341 words
In a staged storage system in which data from a secondary storage is first staged to a cache before being accessed by a processor, a method comprising: classifying each stored data item into one of K categories using a pre-specified scheme of classification; partitioning the cache into a global sub-cache and K category sub-caches; receiving a request from the host processor for a first data item; 1) if the first data item is located in the global sub-cache, identifying the first data item as the most recently used or highest priority data item in the global sub-cache; 2) if the first data item is not located in the global sub-cache nor in any of the category sub-caches: removing a second data item from the global sub-cache, wherein the second data item is the least-recently-used or lowest priority data item in the global sub-cache; noting the data type of the second data item as type k; removing a third data item from a category sub-cache k, wherein the third data item is the least recently used or lowest priority data item in that category sub-cache k; placing the second data item into category sub-cache k; designating the second data item as the most recently used or highest priority data item in category sub-cache k; 3) if the first data item is located in category sub-cache j: removing a fourth data item from the global sub-cache, wherein the fourth data item is the least recently used or lowest priority data item in the global sub-cache; noting the data type of the fourth data item as type k; if type k is different from type j, then: pre-fetching from the secondary storage into the category sub-cache j the most recently used or highest priority data item of type j that is in neither the global sub-cache nor in category sub-cache j; removing from the cache the least recently used or lowest priority data item in category sub-cache k; designating the fourth data item as the most recently used data item in category sub-cache k.
Claim 12
Dependent Claim 341 words
In a staged storage system in which data from a secondary storage is first staged to a cache before being accessed by a processor, a method comprising: classifying each stored data item into one of K categories using a pre-specified scheme of classification; partitioning the cache into a global sub-cache and K category sub-caches; receiving a request from the host processor for a first data item; 1) if the first data item is located in the global sub-cache, identifying the first data item as the most recently used or highest priority data item in the global sub-cache; 2) if the first data item is not located in the global sub-cache nor in any of the category sub-caches: removing a second data item from the global sub-cache, wherein the second data item is the least-recently-used or lowest priority data item in the global sub-cache; noting the data type of the second data item as type k; removing a third data item from a category sub-cache k, wherein the third data item is the least recently used or lowest priority data item in that category sub-cache k; placing the second data item into category sub-cache k; designating the second data item as the most recently used or highest priority data item in category sub-cache k; 3) if the first data item is located in category sub-cache j: removing a fourth data item from the global sub-cache, wherein the fourth data item is the least recently used or lowest priority data item in the global sub-cache; noting the data type of the fourth data item as type k; if type k is different from type j, then: pre-fetching from the secondary storage into the category sub-cache j the most recently used or highest priority data item of type j that is in neither the global sub-cache nor in category sub-cache j; removing from the cache the least recently used or lowest priority data item in category sub-cache k; designating the fourth data item as the most recently used data item in category sub-cache k.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag