Memory allocation in a data analytics system
First Claim
1. A computer-implemented method of managing memory in a computer comprising:
- monitoring usage of a primary memory associated with the computer, the primary memory storing uncompressed memory blocks in a ready state;
in response to primary memory usage by the uncompressed memory blocks in the ready state exceeding a ready state threshold,compressing at least some of the uncompressed memory blocks in the ready state to form compressed memory blocks,storing the at least some of the uncompressed memory blocks as memory blocks in a ready and compressed state in the primary memory, andstoring the compressed blocks as memory blocks in a compressed state in the primary memory;
in response to primary memory usage by the memory blocks in the ready and compressed state exceeding a release threshold, releasing at least some of the memory blocks in the ready and compressed state; and
in response to primary memory usage by the memory blocks in the compressed state exceeding a compressed threshold, transferring at least some memory blocks in the compressed state to a secondary memory associated with the computer to form memory blocks in an on disk state.
2 Assignments
0 Petitions
Accused Products
Abstract
A module manages memory in a computer. The module monitors usage of a primary memory associated with the computer. The primary memory stores memory blocks in a ready state. In response to primary memory usage by the memory blocks in the ready state exceeding a ready state threshold, the module compresses at least some of the memory blocks in the ready state to form memory blocks in a ready and compressed state. In response to primary memory usage by the memory blocks in the ready and compressed state exceeding a release threshold, the module releases at least some of the memory blocks in the ready and compressed state. In response to primary memory usage by the memory blocks in the compressed state exceeding a compressed threshold, the module transfers at least some memory blocks in the compressed state to a secondary memory associated with the computer.
-
Citations
20 Claims
-
1. A computer-implemented method of managing memory in a computer comprising:
-
monitoring usage of a primary memory associated with the computer, the primary memory storing uncompressed memory blocks in a ready state; in response to primary memory usage by the uncompressed memory blocks in the ready state exceeding a ready state threshold, compressing at least some of the uncompressed memory blocks in the ready state to form compressed memory blocks, storing the at least some of the uncompressed memory blocks as memory blocks in a ready and compressed state in the primary memory, and storing the compressed blocks as memory blocks in a compressed state in the primary memory; in response to primary memory usage by the memory blocks in the ready and compressed state exceeding a release threshold, releasing at least some of the memory blocks in the ready and compressed state; and in response to primary memory usage by the memory blocks in the compressed state exceeding a compressed threshold, transferring at least some memory blocks in the compressed state to a secondary memory associated with the computer to form memory blocks in an on disk state. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system for managing memory in a computer, the system comprising:
a non-transitory computer-readable storage medium storing executable computer program instructions, the computer program instructions comprising instructions that when executed cause a computer processor to perform steps, comprising; monitoring usage of a primary memory associated with the computer, the primary memory storing uncompressed memory blocks in a ready state; in response to primary memory usage by the uncompressed memory blocks in the ready state exceeding a ready state threshold, compressing at least some of the uncompressed memory blocks in the ready state to form compressed memory blocks, storing the at least some of the uncompressed memory blocks as memory blocks in a ready and compressed state in the primary memory, and storing the compressed blocks as memory blocks in a compressed state in the primary memory; in response to primary memory usage by the memory blocks in the ready and compressed state exceeding a release threshold, releasing at least some of the memory blocks in the ready and compressed state; and in response to primary memory usage by the memory blocks in the compressed state exceeding a compressed threshold, transferring at least some memory blocks in the compressed state to a secondary memory associated with the computer to form memory blocks in an on disk state. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
15. A non-transitory computer readable storage medium storing executable computer program instructions for managing memory in a computer, the computer program instructions comprising instructions that when executed cause a computer processor to:
-
monitor usage of a primary memory associated with the computer, the primary memory storing uncompressed memory blocks in a ready state; in response to primary memory usage by the uncompressed memory blocks in the ready state exceeding a ready state threshold, compressing at least some of the uncompressed memory blocks in the ready state to form compressed memory blocks, storing the at least some of the uncompressed memory blocks as memory blocks in a ready and compressed state in the primary memory, and storing the compressed blocks as memory blocks in a compressed state in the primary memory; in response to primary memory usage by the memory blocks in the ready and compressed state exceeding a release threshold, release at least some of the memory blocks in the ready and compressed state; and in response to primary memory usage by the memory blocks in the compressed state exceeding a compressed threshold, transfer at least some memory blocks in the compressed state to a secondary memory associated with the computer to form memory blocks in an on disk state. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification