Patent classifications
G06F2212/72
Cache memory architecture and management
Aspects of the present disclosure relate to data cache management. In embodiments, a storage array's memory is provisioned with cache memory, wherein the cache memory includes one or more sets of distinctly sized cache slots. Additionally, a logical storage volume (LSV) is established with at least one logical block address (LBA) group. Further, at least one of the LSV's LBA groups is associated with two or more distinctly sized cache slots based on an input/output (IO) workload received by the storage array.
SIGNAL DEVELOPMENT CACHING IN A MEMORY DEVICE
Methods, systems, and devices for signal development caching in a memory device are described. In one example, a memory device in accordance with the described techniques may include a memory array, a sense amplifier array, and a signal development cache configured to store signals (e.g., cache signals, signal states) associated with logic states (e.g., memory states) that may be stored at the memory array (e.g., according to various read or write operations). In various examples, accessing the memory device may include accessing information from the signal development cache, or the memory array, or both, based on various mappings or operations of the memory device.
DYNAMIC CHUNK SIZE ADJUSTMENT FOR CACHE-AWARE LOAD BALANCING
A method in one embodiment comprises separating logical block addresses of one or more storage devices of a storage system into a plurality of ranges of logical block addresses using a designated chunk size, the chunk size denoting a particular number of logical block addresses. The method further comprises assigning different ones of the ranges of logical block addresses to different ones of a plurality of cache entities of the storage system, to select paths for delivery of respective input-output operations from a host device to the storage system based at least in part on the assigning, detecting particular ones of the input-output operations that each overlap with two or more adjacent ranges of the plurality of ranges, and responsive to the detected input-output operations exceeding a threshold, modifying the chunk size and repeating at least portions of the separating, assigning, selecting and detecting utilizing the modified chunk size.
EXPRESS PROGRAMMING USING ADVANCED CACHE REGISTER RELEASE IN A MEMORY SUB-SYSTEM
Control logic in a memory device initiates an express programming operation to program the set of memory cells to a target programming level of a set of programming levels. A set of data associated with the express programming operation is stored in a cache register. At a first time during the execution of the express programming operation, a prediction operation is executed to determine a prediction result corresponding to a programming status of the set of memory cells. The prediction result is compared to a threshold level to determine whether a condition is satisfied. The release of the set of data from the cache register is caused in response to satisfying the condition.
METHOD, DEVICE AND COMPUTER PROGRAM PRODUCT FOR STORAGE SYSTEM MANAGEMENT
Techniques for managing a storage system involve: based on a degree of importance of data stored in a persistent storage device of the storage system, determining key data from the data, wherein a degree of importance of the key data is higher than a threshold degree; respectively identifying first data corresponding to the key data in a first cache of the storage system and second data corresponding to the key data in a second cache of the storage system as non-removable; and in response to corruption of the first data, repairing the first data using the second data in the second cache. Such techniques can avoid system shutdown caused by corruption of key data, thereby optimizing system performance.
DYNAMIC CLOUD WORKLOAD REALLOCATION BASED ON ACTIVE SECURITY EXPLOITS IN DYNAMIC RANDOM ACCESS MEMORY (DRAM)
The present embodiments relate to identifying and mitigating memory bit flips in a cloud infrastructure service. The cloud infrastructure service can provide a monitoring system to monitor low level memory space to detect bit flips by the DRAM instances in the cloud infrastructure service. The bit flips detected in various DRAM computing instances can be processed to verify that the bit flips are sustained (e.g., and possibly relating to a Rowhammer attack) rather than transitory bit flips occurring in DRAM computing devices. Responsive to validating a set of bit flips at one or more computing instances, workloads associated with the affected computing instances can be migrated to other computing instances in the cloud infrastructure service.
STORAGE DEVICE AND METHOD OF OPERATING THE SAME
The present technology relates to an electronic device. A storage device may include a memory device and a memory controller. The memory device may include a buffer block and a plurality of zones each having a plurality of data blocks. The memory controller may control the memory device to: flush target data of write data to the buffer block, a write operation of the write data on a first zone is interrupted due to a sudden power off, and copy data previously stored in the first zone, among the write data, to a second zone and the target data flushed into the buffer block to the second zone after the sudden power off is recovered. The data previously stored in the first zone and the target data correspond to consecutive logical addresses.
Systems and methods for data relocation using a signal development cache
Methods, systems, and devices related to data relocation via a cache are described. In one example, a memory device in accordance with the described techniques may include a memory array, a sense amplifier array, and a signal development cache configured to store signals (e.g., cache signals, signal states) associated with logic states (e.g., memory states) that may be stored at the memory array (e.g., according to various read or write operations). In some cases, the memory device may transfer data from a first address of the memory array to the signal development cache. The memory device may transfer the data stored in the signal development cache to a second address of the memory array based on a parameter associated with the first address of the memory array satisfying a criterion for performing data relocation.
Mirroring data in write caches of a controller of a non-volatile memory
A data storage system provides persistent storage in bulk non-volatile memory. A controller of the data storage system receives a host write command and buffers associated host write data in both a first write cache in non-volatile memory and a mirrored second write cache in volatile memory. The controller destages the host write data to the bulk non-volatile memory from the second write cache but not the first write cache. The controller services relocation write commands requesting data relocation within the bulk non-volatile memory by reference to the second write cache. Servicing the relocation write commands includes buffering relocation write data in the second write cache but not the first write cache and destaging the relocation write data to the bulk non-volatile memory from the second write cache.
Cache-based trace logging using tags in an upper-level cache
Cache-based trace logging using tags in an upper cache level. A processor influxes a cache line into a first cache level from an upper second cache level. Influxing the cache line into the first cache level includes, based on the first cache level being a recording cache, the processor reading a tag that is (i) stored in the second cache level and (ii) associated with the cache line. Based on reading the tag, the processor determines whether a first value of the cache line within the second cache level has been previously captured by a trace. The processor performs one of (i) when the first value is determined to have been previously logged, following a logged value logic path when influxing the cache line; or (ii) when the first value is determined to have not been previously logged, following a non-logged value logic path when influxing the cache line.