IP Library Granted Patent US 11,221,766
Granted Patent B2
US 11,221,766 · App. 16/422,033 · Granted Jan 11, 2022

System and method for persistent memory rotation based on remaining write endurance

Inventors: Wei Liu (Austin, TX); Ching-Lung Chao (Austin, TX)
Assignee: Dell Products L.P.
G06F3/0616G06F3/0647G06F3/0659G06F3/0679G06F11/2284G06F13/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,221,766
App. No.
16/422,033
Granted
Jan 11, 2022
Kind
B2
Abstract

During a power-on self-test (POST), the BIOS of an information handling system may read a percentage remaining of a persistent memory device. If the percentage remaining satisfies a threshold, the BIOS may provide a message recommending that the persistent memory device be replaced, or automatically swapping the namespaces between two sets of persistent memory devices based on the write endurance remaining threshold.

Claims (55)

1. A method comprising:

reading, by a basic input/output system (BIOS) of an information handling system, a percentage remaining of a flash write endurance of each of a plurality of persistent memory devices, including a first percentage remaining of a first persistent memory device and a second percentage remaining of a second persistent memory device;

determining, by the BIOS, whether the first percentage remaining of the first persistent memory device satisfies a threshold percentage;

determining, by the BIOS, whether the second percentage remaining of the second persistent memory device satisfies the threshold percentage;

in response to the first percentage remaining of the first persistent memory device satisfying the threshold percentage and the second percentage remaining of the second persistent memory device not satisfying the threshold percentage, providing a message with a plurality of options including do nothing, swap namespaces between memory devices, and overwrite namespaces in the second persistent memory device with namespaces from the first persistent memory device;

in response to receiving a selection of overwrite the namespaces in the second persistent memory device with the namespaces from the first persistent memory device, overwriting the namespaces within the second persistent memory device with the namespaces from the first persistent memory device; and

providing, by the BIOS, a first message recommending that the first persistent memory device be replaced.

2. The method of claim 1 , further comprising:

generating a table to store information associated with the persistent memory devices; and

during a boot process of the information handling system, updating, by the BIOS, the information in the table to include a current percentage remaining for each of the persistent memory devices.

3. The method of claim 2 , wherein the information for each persistent memory device includes a memory mode, percent remaining, a slot location, an interleave set, and namespace information.

4. The method of claim 1 , further comprising:

in response to the persistent memory devices being configured in a AppDirect mode:

determining persistent memory devices in a first interleave set with the first persistent memory device;

determining a second interleave set with an equal number of persistent memory devices and with a same amount of total memory capacity as the first interleave set; and

recommending swapping persistent memory devices between the first interleave set and the second interleave set.

5. The method of claim 4 , further comprising:

performing a backup of data in both the first interleave set and the second interleave set;

performing a backup of namespaces of both the first interleave set and the second interleave set; and

swapping the persistent memory devices between the first interleave set and the second interleave set.

6. The method of claim 5 , further comprising:

recreating the namespaces of the first interleave set and the second interleave set; and

restoring the data in the persistent memory devices of the first interleave set and the second interleave set.

7. The method of claim 1 , further comprising:

remapping, by a memory controller of the information handling system, an access request from the first persistent memory device to the second persistent memory device,

wherein the access request is to read or write data to the first persistent memory device.

8. The method of claim 1 , wherein the second persistent memory device is a new persistent memory device of the information handling system.

9. An information handling system comprising:

a plurality of persistent memory devices including first and second persistent memory devices; and

a basic input/output system (BIOS) that during a power-on self-test (POST) of the information handling system: reads a percentage remaining of a flash write endurance of each of the persistent memory devices, including a first percentage remaining of the first persistent memory device and a second percentage remaining of the second persistent memory device; determines whether the first percentage remaining of the first persistent memory device satisfies a threshold percentage;

determines whether the second percentage remaining of the second persistent memory device satisfies the threshold percentage; in response to the first percentage remaining of the first persistent memory device satisfying the threshold percentage and the second percentage remaining of the second persistent memory device not satisfying the threshold percentage, providing a message with a plurality of options including do nothing, swap namespaces between memory devices, and overwrite namespaces in the second persistent memory device with namespaces from the first persistent memory device; in response to receiving a selection of overwrite the namespaces in the second persistent memory device with the namespaces from the first persistent memory device, overwrites the namespaces within the second persistent memory device with the namespaces from the first persistent memory device; and provides a first message recommending that the first persistent memory device be replaced.

10. The information handling system of claim 9 , wherein the BIOS further: generates a table to store information associated with the persistent memory devices; and during a boot process of the information handling system, updates the information in the table to include a current percentage remaining for each of the persistent memory devices.

11. The information handling system of claim 10 , wherein the information for each persistent memory device includes a memory mode, percent remaining, a slot location, an interleave set, and namespace information.

12. The information handling system of claim 9 , in response to the persistent memory devices being configured in a AppDirect mode: the BIOS determines persistent memory devices in a first interleave set with the first persistent memory device, determines a second interleave set with an equal number of persistent memory devices and with a same amount of total memory capacity as the first interleave set, and recommends swapping persistent memory devices between the first interleave set and the second interleave set.

13. The information handling system of claim 12 , the BIOS further: performs a backup of data in both the first interleave set and the second interleave set, performs a backup of namespaces of both the first interleave set and the second interleave set; and swaps the persistent memory devices between the first interleave set and the second interleave set.

14. The information handling system of claim 13 , the BIOS further: recreates the namespaces of the first interleave set and the second interleave set; and restores the data in the persistent memory devices of the first interleave set and the second interleave set.

15. The information handling system of claim 9 , further comprising:

a memory controller in communication with the persistent memory devices, the memory controller remaps an access request from the first persistent memory device to the second persistent memory device, wherein the access request is to read or write data to the first persistent memory device.

16. The information handling system of claim 9 , wherein the first persistent memory device is replaced with a new persistent memory device of the information handling system.

17. A method comprising:

reading, by a basic input/output system (BIOS) of an information handling system, a percentage remaining of a flash write endurance of each of a plurality of persistent memory devices, including a first percentage remaining of the flash write endurance of a first persistent memory device;

determining, by the BIOS, all persistent memory devices in a first interleave set with the first persistent memory device;

determining, by the BIOS, that each percentage remaining of the flash write endurance of at least one persistent memory device within the first interleave set does not exceed the first percentage remaining of the flash write endurance of the first persistent memory device;

determining a second interleave set with an equal number of persistent memory devices and with a same amount of total memory capacity as the first interleave set;

determining each percentage remaining of the flash write endurance of each persistent memory device within the second interleave set exceeds the first percentage remaining of the flash write endurance of the first persistent memory device;

in response to the percentage remaining of the flash write endurance of the at least one persistent memory device within the first interleave set not exceeding the first percentage remaining of the flash write endurance of the first persistent memory device, and in response to each percentage remaining of the flash write endurance of each persistent memory device within the second interleave set exceeding the first percentage remaining of the flash write endurance of the first persistent memory device, providing a message with a plurality of options including do nothing, swap namespaces between memory devices, and overwrite namespaces in the second persistent memory device with namespaces from the first persistent memory device;

in response to receiving a selection of overwrite the namespaces in the second interleave set with the namespaces from the first interleave set, overwriting all namespaces in the second interleave set with the namespaces from the first interleave set; and

erasing the namespaces from the first interleave set.

18. The method of claim 17 , further comprising:

generating a table to store information associated with the persistent memory devices; and

during a boot process of the information handling system, updating, by the BIOS, the information in the table to include a current percentage remaining for each of the persistent memory devices.

19. The method of claim 18 , wherein the information for each persistent memory device includes a memory mode, percent remaining, a slot location, an interleave set, and namespace information.

20. The method of claim 19 , further comprising:

determining, by the BIOS, whether the first percentage remaining satisfies a threshold percentage; and

in response to the first percentage remaining satisfying the threshold percentage, providing, by the BIOS, a first message recommending that the first persistent memory device is replaced with the second persistent memory device, wherein the second percentage remaining of the flash write endurance does not satisfy the threshold percentage.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2019
From: LIU, WEI; CHAO, CHING-LUNG
To: DELL PRODUCTS, LP
Reel/Frame 050176/0171 →