Patent classifications
G06F12/00
Adaptive user defined health indication
Methods, systems, and devices for adaptive user defined health indications are described. A host device may be configured to dynamically indicate adaptive health flags for monitoring health and wear information for a memory device. The host device may indicate, to a memory device, a first index. The first index may correspond to a first level of wear of a set of multiple indexed levels of wear for the memory device. The memory device may determine that a metric of the memory device satisfies the first level of wear and indicate, to the host device, that the first level of wear is satisfied. The host device may receive the indication that the first level of wear is satisfied and indicate, to the memory device, a second level of wear of the set of indexed levels of wear that is different than the first level of wear.
Semiconductor memory device
A method of controlling a memory device includes receiving a write instruction; starting a write operation to a first address in response to the write instruction; receiving a first read instruction of the first address; suspending the write operation; and applying a read voltage to a word line corresponding to the first address in a first read operation in response to the first read instruction.
Log data storage for flash memory
Devices and techniques for managing flash memory are disclosed herein. A memory controller may receive a first program request comprising first host data to be written to the flash memory. The flash memory may comprise a number of storage units with each storage unit comprising a number of storage sub-units. If the first host data is less than a remainder threshold, the memory controller may generate a first program data unit comprising the first host data and first log data describing the flash memory. The memory controller may program the program data unit to the first storage unit of the flash memory, where the first log data is written to a first storage sub-unit of the number of storage sub-unit. The memory controller may also store an indication that the first storage sub-unit is invalid.
Methods and systems for efficient metadata management
Methods, computer program products, computer systems, and the like for efficient metadata management are disclosed, which can include receiving a subunit of storage, storing a first metadata portion of the subunit of storage in a first unit of storage, and storing a second metadata portion of the subunit of storage in a second unit of storage.
Banked memory architecture for multiple parallel datapath channels in an accelerator
The present disclosure relates to devices and methods for using a banked memory structure with accelerators. The devices and methods may segment and isolate dataflows in datapath and memory of the accelerator. The devices and methods may provide each data channel with its own register memory bank. The devices and methods may use a memory address decoder to place the local variables in the proper memory bank.
Recovering from system faults for replicated datasets
Recovering from system faults for replicated datasets, including: receiving, by the cloud-based storage system, a request to modify a dataset that is stored by the cloud-based storage system, wherein the dataset is synchronously replicated among a plurality of storage systems that includes the cloud-based storage system, wherein a request to modify the dataset is acknowledged as being complete when each of the plurality of storage systems has modified its copy of the dataset; generating recovery information indicating whether the request to modify the dataset has been applied on all storage systems in the plurality of storage systems synchronously replicating the dataset; and after a system fault, applying a recovery action in dependence upon the recovery information indicating whether the request to modify the dataset has been applied on all storage systems in the plurality of storage systems synchronously replicating the dataset.
Backup and/or restore as a service
A service, responsive to a request, determines a scope that includes a specific tenant and a specific component. The service is extensible through addition of different components to manage different data sources used by different services that contribute to a set of one or more multi-tenant cloud services. The service also determines, for the specific component, parameters usable to identify the specific tenant and a specific storage path. Each of the components, responsive to being called to perform a backup or restore with a current set of parameters, is to be implemented to cause data, which belongs to a currently identified tenant, to be copied between the respective one of the data sources and a backup store according to a currently identified storage path. The service also calls the specific component to perform the backup or restore with the parameters.
Request routing management for a distributed storage system
Systems and methods are provided for managing data partitions in a distributed storage system and, in particular, the routing data used by the distributed storage system to route requests to the proper caching layers, persistent storage nodes, etc. Data items may be managed in a multi-tier configuration in which they are grouped into different partitions based on their key prefixes, and partitions are grouped into different cells based on key ranges. When partitions are moved from cell-to-cell, or when cells are split, the routing data is changed accordingly. In order to ensure that the correct routing data is used throughout the distributed storage system, a change to routing data may be accompanied by a special barrier record being written to the transaction log of affected partitions.
Delegating low priority tasks to a passive storage controller
A computer program product and a data storage device including first and second storage controllers operating in active-passive mode with a shared disk. Each storage controller includes a storage device storing program instructions and a processor to process the program instructions and perform various operations. The operations include receiving a task to be performed by the storage device containing the first and second storage controllers, wherein the first storage controller is currently operating as an active storage controller and the second storage controller is currently operating as a passive storage controller. The operations further include determining whether the received task has a high priority or a low priority, performing the received task in response to determining that the received task has a high priority, and delegating the received task to the second storage controller for performance in response to determining that the received task has a low priority.
Managed NAND data compression
Apparatus and methods are disclosed, including providing available data operations for the storage system processor to a host processor, identifying data operations to be performed by the storage system processor, and assigning identified data operations to the storage system processor to reduce bus traffic between the host processor and the storage system processor, to improve host processor performance, and to reduce energy use by the host processor.