Memory compression for computer systems
AssigneeHewlett-Packard Development Company, L.P.
InventorsSujoy Basu, Sumit Roy, Rajendra Kumar
Life of this patent
Estimating the term…
Abstract
A computer system is provided including a processor, a persistent storage device, and a main memory connected to the processor and the persistent storage device. The main memory includes a compressed cache for storing data retrieved from the persistent storage device after compression and an operating system. The operating system includes a plurality of interconnected software modules for accessing the persistent storage device and a filter driver interconnected between two of the plurality of software modules for managing memory capacity of the compressed cache and the buffer cache.
Claims24
A method for memory operation in a computer system, comprising:
- compressing data into one of a plurality of fixed size units in main memory;
- determining when compressed data is present in non-persistent memory and:
- decompressing the compressed data as decompressed data, and
- providing the decompressed data from the non-persistent memory for processing;
- and
- determining when the compressed data is not present in the non-persistent memory and:
- providing uncompressed data from the persistent memory for processing.
A method for memory operation in a computer system, comprising:
- compressing data into one of a plurality of fixed size buckets in a compressed cache;
- determining when compressed data is present in the compressed cache and:
- identifying the buckets occupied by the compressed data and compression algorithm used to compress the compressed data,
- maintaining an identity of the buckets, a range of the compressed data, and the compression algorithm used,
- decompressing the compressed data as decompressed data, and
- providing the decompressed data from the compressed cache for processing;
- and
- determining when the compressed data is not present in the compressed cache and:
- providing uncompressed data from the persistent memory for processing.
A computer system comprising:
- a processor,
- a persistent storage device;
- a main memory connected to the processor and the persistent storage device, the main memory including:
- a compressed cache for storing data retrieved from the persistent storage device after compression in one of a plurality of fixed size units in the main memory;
- and
- an operating system including:
- a plurality of software modules for accessing the persistent storage device, the plurality of software modules interconnected, and
- a filter driver for managing memory capacity of the compressed cache, the filter driver interconnected between two of the plurality of software modules.
A computer system comprising:
- a processor;
- a persistent storage device;
- a main memory connected to the processor and the persistent storage device, the main memory including:
- a compressed cache for storing uncompressed data retrieved from the persistent storage device as compressed data in one of a plurality of fixed size buckets, and
- a buffer cache connected to the compressed cache for storing uncompressed date retrieved from the persistent storage device as uncompressed data;
- and
- an operating system including:
- a plurality of software modules for accessing the persistent storage device, the plurality of software modules being organized in a multi-layer structure, and
- a filter driver for managing memory capacity of the compressed cache, the filter driver interconnected between two of the plurality of software modules.
Dependencies are inferred from the claim text.