摘要:
A system for conducting memory transactions includes a non-volatile main memory and a memory buffer including a plurality of cache lines. Each of the cache lines includes content and one or more bits signifying whether a memory transaction corresponding to the content of the cache line has been performed to completion and whether the content of the cache line matches content of a corresponding location of the non-volatile main memory. When the one or more bits of a cache line of the plurality of cache lines signifies that the transaction has been performed to completion and the content of the cache line does not match the content of the corresponding location of the non-volatile memory, access to modify the content of the cache line is restricted until the content of the cache line is written to the corresponding location of the non-volatile main memory.
摘要:
A system for conducting memory transactions includes a non-volatile main memory and a memory buffer including a plurality of cache lines. Each of the cache lines includes content and one or more bits signifying whether a memory transaction corresponding to the content of the cache line has been performed to completion and whether the content of the cache line matches content of a corresponding location of the non-volatile main memory. When the one or more bits of a cache line of the plurality of cache lines signifies that the transaction has been performed to completion and the content of the cache line does not match the content of the corresponding location of the non-volatile memory, access to modify the content of the cache line is restricted until the content of the cache line is written to the corresponding location of the non-volatile main memory.
摘要:
A method for conducting memory transactions includes receiving a transaction. The steps of the received transaction are performed in a memory buffer. A state of the memory buffer cache lines is set as pending and unstored while the transaction is in progress. After all steps have been successfully performed, the state of the memory buffer cache lines are changed to complete and unstored. When it is determined that the memory buffer cache lines are to be written to the non-volatile main memory, the contents is written to the non-volatile main memory. The state of the memory buffer cache lines are then changed to complete and stored. When the memory buffer cache lines are in the complete and unstored state, access to modify their content is restricted.
摘要:
A system and method for effectively increasing the amount of data that can be stored in the main memory of a computer, particularly, by a hardware enhancement of a memory controller apparatus that detects duplicate memory contents and eliminates duplicate memory contents wherein the duplication and elimination are performed by hardware without imposing any penalty on the overall performance of the system.
摘要:
A set of disks in a plurality of disk arrays are configured to have one or more spare partitions. Upon detecting a faulty disk in a faulty array, the method involves the steps of: (a) migrating data in the faulty array containing the faulty disk to one or more spare partitions; (b) reconfiguring the faulty array to form a new array without the faulty disk; (c) migrating data from one or more spare partitions in the set of disks to the reconfigured new array; (d) monitoring to identify when overall spare capacity falls below a predetermined threshold; and when the predetermined threshold is exceeded, scheduling a service visit for replacement of the failed disks.
摘要:
A method and service creates and maintains a virtual point-in-time copy of source data stored within a source storage unit. The method/service receives at least one request to create a point-in-time copy of the source data. However, instead of creating a copy of the source data, the invention creates a target storage unit mapping table within a target storage unit or other storage units managed by the same storage system. This target storage unit mapping table contains pointers to the source data. In addition, the invention maintains a modification space within the target storage unit or other storage units managed by the same storage system. Each portion of the modification space is associated with a given target storage unit. The modification space only stores changes to the source data that are unique to the corresponding target storage unit. The target storage unit mapping table is modified as the data is written to the modification space by redirecting corresponding pointers in the target storage unit mapping table from the source data to the modification space.
摘要:
A computer implemented method, apparatus, and computer usable program product for managing redundant array of independent drives. In response to a failure of a hard disk in a first RAID array, the process calculates an amount of free capacity available across a set of remaining hard disks in the first RAID array. The set of remaining hard disks comprises every hard disk associated with the first RAID array except the failed disk. In response to a determination that the amount of free capacity is sufficient to re-create the first RAID array at a same RAID level, the process reconstructs the first RAID array using an amount of space in the set of remaining drives utilized by the first RAID array and the free capacity to form a new RAID array without utilizing a spare hard disk.
摘要:
A system and method for storing data objects in a storage device includes storing data objects where the data objects include associated main data and metadata that describes properties of the main data. Associated identifiers of computational procedures that can be applied to the main data are further included. Execution of the computational procedures associated with the data objects is also supported.
摘要:
The present invention describes lossless data compression/decompression methods and systems. A random access memory (RAM) operates as a static dictionary and includes commonly used strings/symbols/phrases/words. An input buffer operates as a dynamic dictionary and includes input strings/phrases/symbols/words. A set-associative cache memory operates as a hash table, and includes pointers pointing to the commonly used strings/symbols/phrases/words in the static dictionary and/or pointing to one or more of the input strings/phrases/symbols/words in the dynamic dictionary. Alternatively, the set-associative cache memory combines the dynamic dictionary, the static dictionary and the hash table. When encountering a symbol/phrase/string/word in the static or dynamic dictionary in an input stream, a compressor logic or module places a pointer pointing to the symbol/phrase/string/word at a current location on the output stream. The hash table may include phrases/symbols/strings/words and/or pointers pointing to phrases/symbols/strings/words.
摘要:
The present invention reduces the number of writes to a main memory to increase useful life of the main memory. To reduce the number of writes to the main memory, data to be written is written to a cache line in a lowest-level cache memory and in a higher-level cache memory(s). If the cache line in the lowest-level cache memory is full, the number of used cache lines in the lowest-level cache reaches a threshold, or there is a need for an empty entry in the lowest-level cache, a processor or a hardware unit compresses content of the cache line and stores the compressed content in the main memory. The present invention also provides LZB algorithm allowing decompression of data from an arbitrary location in compressed data stream with a bound on the number of characters which needs to be processed before a character or string of interest is processed.