Asynchronous swap mechanism and page eviction from memory
First Claim
1. A method comprising:
- scanning a random access memory device for one or more compressed pages of memory uncommitted to a physical storage device;
selecting at least one uncommitted page from the random access memory device;
creating a replica of the selected uncommitted page, including copying the selected uncommitted page, and decompressing the copy; and
asynchronously writing the replica to the physical storage device, and setting a replica indicator on the selected uncommitted page while the selected uncommitted page remains in the random access memory device.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the invention relate to mitigating page eviction from cache memory. Pages of data in the cache are compressed, and are periodically swapped to a physical storage device to create space in the cache for additional pages. To avoid the impact of eviction latencies, an asynchronous thread scanning process scans the cache for any pages that are not committed to the storage device, decompresses a selected one of the pages, and asynchronously writes the decompressed page copy to the physical storage device. The compressed copy of the selected page remains in the cache during the asynchronous write with an indicator for the page set to convey that a replica of the page has been written to physical storage, allowing for efficient eviction from the in-memory pool at a later time.
5 Citations
20 Claims
-
1. A method comprising:
-
scanning a random access memory device for one or more compressed pages of memory uncommitted to a physical storage device; selecting at least one uncommitted page from the random access memory device; creating a replica of the selected uncommitted page, including copying the selected uncommitted page, and decompressing the copy; and asynchronously writing the replica to the physical storage device, and setting a replica indicator on the selected uncommitted page while the selected uncommitted page remains in the random access memory device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product for managing a random access memory device, the computer program product comprising a computer readable storage device having program code embodied therewith, the program code executable by a processor to:
-
scan the random access memory device for one or more compressed pages of memory uncommitted to a physical storage device; select at least one uncommitted page from the random access memory device; create a replica of the selected uncommitted page, including program code to copy the selected uncommitted page, and decompress the copy; asynchronously write the replica to the physical storage device, and set a replica indicator on the selected uncommitted page while the selected uncommitted page remains in the random access memory device. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A computer system comprising:
-
a processing unit operatively coupled to a random access memory device; a physical storage device in communication with the random access memory device; and tools in communication with the processing unit to manage the random access memory device, including; a scanner to scan the random access memory device for one or more compressed pages of memory uncommitted to the physical storage device; a selector in communication with the scanner, the selector to select at least one uncommitted page from the memory device; a manager in communication with the selector, the manager to; create a replica of the selected uncommitted page, including the manager to copy the selected uncommitted page, and decompress the copy; and asynchronously write the replica to the physical storage device, and set a replica indicator on the selected uncommitted page while the selected page remains in the random access memory device. - View Dependent Claims (17, 18, 19, 20)
-
Specification