Techniques for reducing memory write operations using coalescing memory buffers and difference information
First Claim
Patent Images
1. An apparatus comprising:
- a difference computation module;
one or more coalescing memory buffers;
wherein the difference computation module is enabled toreceive from a host processor a command initiating an operation to be applied to storage devices,identify the operation as a write operation directed to one or more of a plurality of blocks of the storage devices,reconstruct a current state of data of the one or more blocks,compute a difference between the current state and a state that would result from the write operation, andpopulate at least one of the coalescing memory buffers with difference information associated with the difference and to be used to update an associated one of the blocks;
wherein the coalescing memory buffers are separate from the storage devices; and
wherein the difference computation module is further enabled to determine whether the coalescing memory buffers are full, and to selectively write the difference information in the coalescing memory buffers to the storage devices, based on the determination of whether the coalescing memory buffers are full.
4 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described for reducing write operations in memory. In use, write operations to be performed on data stored in memory are identified. A difference is then determined between results of the write operations and the data stored in the memory. Difference information is stored in coalescing memory buffers. To this end, the write operations may be reduced, utilizing the difference information.
-
Citations
12 Claims
-
1. An apparatus comprising:
-
a difference computation module; one or more coalescing memory buffers; wherein the difference computation module is enabled to receive from a host processor a command initiating an operation to be applied to storage devices, identify the operation as a write operation directed to one or more of a plurality of blocks of the storage devices, reconstruct a current state of data of the one or more blocks, compute a difference between the current state and a state that would result from the write operation, and populate at least one of the coalescing memory buffers with difference information associated with the difference and to be used to update an associated one of the blocks; wherein the coalescing memory buffers are separate from the storage devices; and wherein the difference computation module is further enabled to determine whether the coalescing memory buffers are full, and to selectively write the difference information in the coalescing memory buffers to the storage devices, based on the determination of whether the coalescing memory buffers are full. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An apparatus comprising:
-
a difference computation module; one or more coalescing memory buffers; wherein the difference computation module comprises means for receiving from a host processor a command initiating an operation to be applied to storage devices, means for identifying the operation as a write operation directed to one or more of a plurality of blocks of the storage devices, means for reconstructing a current state of data of the one or more blocks, means for computing a difference between the current state and a state that would result from the write operation, and means for populating at least one of the coalescing memory buffers with difference information associated with the difference and to be used to update an associated one of the blocks; and wherein the coalescing memory buffers are separate from the storage devices; and wherein the difference computation module further comprises means for determining whether the coalescing memory buffers are full, and to selectively write the difference information in the coalescing memory buffers to the storage devices, based on the determination of whether the coalescing memory buffers are full. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification