# US 12,223,176 B1 · Managing wear levels of storage devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,223,176 B1
- Document ID: US12223176B1
- Status: Granted
- Kind: B1
- Application number: 18/526,533
- Filed: 2023-12-01
- Granted: 2025-02-11
- Earliest claimed: 2023-12-01
- Assignees: Dell Products L.P.
- Applicants: Dell Products L.P.
- Inventors: Amitai Alkalay; Vamsi K. Vankamamidi; Lior Kamran
- Web page: https://patentgrep.com/patent/US12223176B1

## CPC

- G06F 3/0616: {in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/0685: {Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays}
- G06F 3/0689: {Disk arrays, e.g. RAID, JBOD}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A technique is directed to managing wear leveling between storage devices. The technique includes generating a wear imbalance level indicating a variance between a first wear level of a first set of storage devices and a second wear level of a second set of storage devices. The technique further includes, after generating the wear imbalance level, performing a comparison operation that compares the wear imbalance level to a predefined imbalance threshold. The technique further includes, in response to the comparison operation indicating that the wear imbalance level is above the predefined imbalance threshold, providing the first set of storage devices as a first storage tier and the second set of storage devices as a second storage tier.

## Claims

### Claim 1

A method of managing storage devices, the method comprising:
generating a wear imbalance level indicating a variance between a first wear level of a first set of storage devices and a second wear level of a second set of storage devices, the first set of storage devices being different from the second set of storage devices;
after generating the wear imbalance level, performing a comparison operation that compares the wear imbalance level to a predefined imbalance threshold, a result of the comparison operation indicating that the wear imbalance level is above the predefined imbalance threshold; and
in response to the result of the comparison operation indicating that the wear imbalance level is above the predefined imbalance threshold, providing the first set of storage devices as a first storage tier and the second set of storage devices as a second storage tier.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
in response to the first wear level of the first set of storage devices being higher than the second wear level of the second set of storage devices, directing write data to the second storage tier to manage wear leveling between the first set of storage devices and the second set of storage devices.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
in response to a write rate to the second storage tier reaching a predefined write bandwidth threshold, directing at least a portion of additional write data to the first storage tier to provide additional write bandwidth when writing to the storage devices.

### Claim 4 (depends on 2)

The method of claim 2, further comprising:
performing garbage collection that consolidates valid data stored in the second set of storage devices; and
in response to efficiency of the garbage collection falling below a predefined efficiency threshold, moving data from the second storage tier to the first storage tier to provide additional storage space in the second storage tier.

### Claim 5 (depends on 1)

The method of claim 1 wherein the first set of storage devices is configured as a first redundant array of independent disks (RAID);
wherein the method further comprises:
receiving a signal indicating that the second set of storage devices includes a number of storage devices greater than or equal to a predefined minimum RAID-width threshold; and
wherein providing the second set of storage devices as the second storage tier includes:
in response to receiving the signal indicating that the second set of storage devices includes a number of storage devices greater than or equal to a predefined minimum RAID-width threshold, configuring the second set of storage devices as a second RAID.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
in response to the wear imbalance level falling below a predefined merging threshold, merging the first storage tier and the second storage tier by providing both the first set of storage devices and the second set of storage devices as a single storage tier.

### Claim 7 (depends on 6)

The method of claim 6 wherein merging the first storage tier and the second storage tier includes:
performing a striping operation that forms RAID stripes from storage devices of both the first set of storage devices and the second set of storage devices.

### Claim 8 (depends on 7)

The method of claim 7 wherein performing the striping operation includes:
provisioning the RAID stripes to have respective RAID widths larger than both a first number of storage devices in the first set of storage devices and a second number of storage devices in the second set of storage devices.

### Claim 9 (depends on 1)

The method of claim 1 wherein generating the wear imbalance level includes:
providing the first wear level by averaging first proportions of respective numbers of consumed program/erase (P/E) cycles of the first set of storage devices to respective total estimated numbers of P/E cycles of the first set of storage devices;
providing the second wear level by averaging second proportions of respective numbers of consumed P/E cycles of the second set of storage devices to respective total estimated numbers of P/E cycles of the second set of storage devices; and
providing, as the wear imbalance level, a difference between the first wear level and the second wear level.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
while operating the first set of storage devices, receiving an expansion instruction to utilize the second set of storage devices;
wherein providing the first set of storage devices as the first storage tier and the second set of storage devices as the second storage tier includes:
configuring the second set of storage devices to provide storage space to perform data storage operations together with the first set of storage devices.

### Claim 11

An electronic environment, comprising:
a first set of storage devices and a second set of storage devices, the first set of storage devices being different from the second set of storage devices;
memory; and
control circuitry coupled with the memory, the memory storing instructions that, when carried out by the control circuitry, cause the control circuitry to perform a method of managing storage devices, the method including:
generating a wear imbalance level indicating a variance between a first wear level of the first set of storage devices and a second wear level of the second set of storage devices;
after generating the wear imbalance level, performing a comparison operation that compares the wear imbalance level to a predefined imbalance threshold; and
in response to a result of the comparison operation indicating that the wear imbalance level is above the predefined imbalance threshold, providing the first set of storage devices as a first storage tier and the second set of storage devices as a second storage tier.

### Claim 12 (depends on 11)

The electronic environment of claim 11 wherein the method further includes:
in response to the first wear level of the first set of storage devices being higher than the second wear level of the second set of storage devices, directing write data to the second storage tier to manage wear leveling between the first set of storage devices and the second set of storage devices.

### Claim 13 (depends on 12)

The electronic environment of claim 12 wherein the method further includes:
in response to a write rate to the second storage tier reaching a predefined write bandwidth threshold, directing at least a portion of additional write data to the first storage tier to provide additional write bandwidth when writing to the storage devices.

### Claim 14 (depends on 12)

The electronic environment of claim 12 wherein the method further includes:
performing garbage collection that consolidates valid data stored in the second set of storage devices; and
in response to efficiency of the garbage collection falling below a predefined efficiency threshold, moving data from the second storage tier to the first storage tier to provide additional storage space in the second storage tier.

### Claim 15 (depends on 11)

The electronic environment of claim 11 wherein the first set of storage devices is configured as a first redundant array of independent disks (RAID);
wherein the method further includes:
receiving a signal indicating that the second set of storage devices includes a number of storage devices greater than or equal to a predefined minimum RAID-width threshold; and
wherein providing the second set of storage devices as the second storage tier includes:
in response to receiving the signal indicating that the second set of storage devices includes a number of storage devices greater than or equal to a predefined minimum RAID-width threshold, configuring the second set of storage devices as a second RAID.

### Claim 16 (depends on 11)

The electronic environment of claim 11 wherein the method further includes:
in response to the wear imbalance level falling below a predefined merging threshold, merging the first storage tier and the second storage tier by providing both the first set of storage devices and the second set of storage devices as a single storage tier.

### Claim 17 (depends on 16)

The electronic environment of claim 16 wherein merging the first storage tier and the second storage tier includes:
performing a striping operation that forms RAID stripes from storage devices of both the first set of storage devices and the second set of storage devices.

### Claim 18 (depends on 17)

The electronic environment of claim 17 wherein performing the striping operation includes:
provisioning the RAID stripes to have respective RAID widths larger than both a first number of storage devices in the first set of storage devices and a second number of storage devices in the second set of storage devices.

### Claim 19

A computer program product having a non-transitory computer readable medium that stores a set of instructions to manage storage devices, the set of instructions, when carried out by computerized circuitry, causes the computerized circuitry to perform a method of:
generating a wear imbalance level indicating a variance between a first wear level of a first set of storage devices and a second wear level of a second set of storage devices, the first set of storage devices being different from the second set of storage devices;
after generating the wear imbalance level, performing a comparison operation that compares the wear imbalance level to a predefined imbalance threshold; and
in response to a result of the comparison operation indicating that the wear imbalance level is above the predefined imbalance threshold, providing the first set of storage devices as a first storage tier and the second set of storage devices as a second storage tier.
