G06F3/0631

METHOD, DEVICE, AND PROGRAM PRODUCT FOR EXTENDING STORAGE SYSTEM
20230012813 · 2023-01-19 ·

A technique extends a storage system that includes a first storage resource pool that is generated using a first plurality of storage devices and based on a first storage array standard. Such a technique involves: adding a second plurality of storage devices to the storage system in response to receiving a request to extend the storage system, the number of the second plurality of storage devices being less than the sum of a first stripe width associated with the first storage array standard and the number of backup storage devices in the first storage resource pool; and creating a second storage resource pool using the second plurality of storage devices and based on a second storage array standard, a second stripe width associated with the second storage array standard being less than the first stripe width. Accordingly, storage space can be extended faster and more effectively.

RESILIENCY AND PERFORMANCE FOR CLUSTER MEMORY

Disclosed are various embodiments for improving the resiliency and performance for clustered memory. A computing device can mark a page of the memory as being reclaimed. The computing device can then set the page of the memory as read-only. Next, the computing device can submit a write request for the contents of the page to individual ones of a plurality of memory hosts. Subsequently, the computing device can receive individual confirmations of a successful write of the page from the individual ones of the plurality of memory hosts. Then, the computing device can mark the page as free in response to receipt of the individual confirmations of the successful write from the individual ones of the plurality of memory hosts.

Dynamic Profiling of Storage Class Memory for Implementation of Various Enterprise Solutions

Configuration and dynamic profiling of storage class memory (SCM) devices is provided. Information is retrieved that includes historical SCM device configurations, historical SCM device utilization, functional and non-functional properties of a plurality of SCM devices on a host node, current real time utilization of the plurality of SCM devices by an application workload of a customer running on the host node, and relationships between the plurality of SCM devices, needs of the customer, and resource capabilities and real time resource utilization on the host node. A configuration of each respective SCM device is determined based on retrieved information and an artificial intelligence-predicted SCM device future utilization trajectory of the customer. Each respective SCM device is dynamically configured with a set of SCM device partitions according to a corresponding SCM device profile based on the determined configuration of each respective SCM device of the plurality of SCM devices.

Resiliency and performance for cluster memory

Disclosed are various embodiments for improving resiliency and performance of clustered memory. A computing device can acquire a chunk of byte-addressable memory from a cluster memory host. The computing device can then identify an active set of allocated memory pages and an inactive set of allocated memory pages for a process executing on the computing device. Next, the computing device can store the active set of allocated memory pages for the process in the memory of the computing device. Finally, the computing device can store the inactive set of allocated memory pages for the process in the chunk of byte-addressable memory of the cluster memory host.

DATA REBALANCING IN DATA STORAGE SYSTEMS

A method includes adding new storage capacity to a data storage system, which has a pre-existing storage capacity. The method further includes rebalancing data from the pre-existing storage capacity to the new storage capacity in connection with a non-rebalancing operation performed on the pre-existing storage capacity.

MEMORY SYSTEM AND METHOD OF CONTROLLING NONVOLATILE MEMORY
20230014508 · 2023-01-19 · ·

According to one embodiment, a controller manages a first set of blocks and a second set of blocks. The controller allocates a second block included in the second set of blocks to a first block included in the first set of blocks. In response to receiving one or more write command specifying the first block, the controller writes data associated with the one or more received write commands to the second block in units of a second minimum write size. When the first block is filled with data that has been written to the first block and unwritten region remains in the second block, the controller deallocates the second block from the first block, and allocates the deallocated second block to a write destination block other than the first block.

MEMORY SYSTEM AND OPERATING METHOD OF MEMORY SYSTEM STORING DOORBELL INFORMATION IN THE BUFFER MEMORY
20230221895 · 2023-07-13 ·

Embodiments of the present disclosure relate to a memory system and an operating method of the memory system. According to embodiments of the present disclosure, a memory system may include a buffer memory for storing tail doorbell information for N submission queues capable of storing a command fetched from the host or head doorbell information for N completion queues capable of storing an execution result of the command fetched from the host.

Providing a distributed and replicated data store in a heterogeneous cluster

A plurality of logical storage segments of storage drives of a plurality of storage nodes are identified. At least one of the storage nodes includes at least a first logical storage segment and a second logical storage segment included in the plurality of logical storage segments. A distributed and replicated data store using a portion of the plurality of logical storage segments that excludes at least the second logical storage segment is provided. An available storage capacity metric associated with the plurality of logical storage segments is determined to meet a first threshold. In response to the determination that the available storage capacity metric meets the first threshold, at least the second logical storage segment is dynamically deployed for use in providing the distributed and replicated data store in a manner that increases a storage capacity of the data store while maintaining a fault tolerance policy of the distributed and replicated data store.

Providing coordination between mapper circuitry and redundant array of independent disks (RAID) circuitry to manage RAID storage space

Techniques are directed to managing Redundant Array of Independent Disks (RAID) storage space. One technique involves providing, by RAID circuitry, a storage space request to mapper circuitry; receiving, by the RAID circuitry, a storage space reply from the mapper circuitry in response to the storage space request; and performing, by the RAID circuitry, a follow-up operation based on the storage space reply from the mapper circuitry. Another technique involves, receiving, by mapper circuitry, a storage space request from RAID circuitry; performing, by the mapper circuitry, a storage space management operation in response to the storage space request; and providing, by the mapper circuitry, a storage space reply to the RAID circuitry, the storage space reply identifying a result of the storage space management operation.

Emulating memory sub-systems that have different performance characteristics

A system and method for updating a configuration of a host system so that the memory sub-system of the host system emulates performance characteristics of a target memory sub-system. An example system determining a configuration of the host system, the host system comprising a memory sub-system; receiving, by a processing device, a request to emulate a characteristic of a target memory sub-system; analyzing a plurality of candidate configurations for the host system, wherein the plurality of candidate configurations comprises a candidate configuration that generates a load on the memory sub-system to decrease characteristics of the memory sub-system; and updating the configuration of the host system based on the plurality of candidate configurations, wherein the updated configuration changes the memory sub-system to emulate the characteristic of the target memory sub-system.