IP Library Granted Patent US 11,216,197
Granted Patent B2
US 11,216,197 · App. 16/530,764 · Granted Jan 4, 2022

System and method for smart pool space reclamation

Inventors: Leonid Wang (Shanghai, CN); Kent J. Costa (Cary, NC); Haitao Kenny Zhou (Shanghai, CN); Feng Zhang (Shanghai, CN); Jiajie Sun (Shanghai, CN)
Assignee: EMC IP HOLDING COMPANY, LLC
G06F3/064G06F3/0608G06F3/0673
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,216,197
App. No.
16/530,764
Granted
Jan 4, 2022
Kind
B2
Abstract

A method, computer program product, and computer system for identifying, by a computing device, historical block usage in a plurality of slices for a user. At least a portion of the plurality of slices to keep during an evacuation process for the plurality of slices may be determined. At least the portion of the plurality of slices may be excluded from the evacuation process for the plurality of slices based upon, at least in part, the historical block usage in the plurality of slices for the user.

Claims (29)

1. A computer-implemented method comprising:

identifying, by a computing device, historical block usage in a plurality of slices for a user;

determining at least a portion of the plurality of slices to keep during an evacuation process for the plurality of slices, wherein the at least a portion of the plurality of slices to keep during an evacuation process includes one or more slices eligible for being reclaimed wherein determining at least the portion of the plurality of slices to keep during the evacuation process for the plurality of slices includes:

predicting a required allocation of slice numbers for the user based upon, at least in part, the historical block usage in the plurality of slices for the user, and

comparing a current allocated number of slices with the required allocation of slice numbers predicted for the user; and

excluding at least the portion of the plurality of slices from the evacuation process for the plurality of slices based upon, at least in part, comparing the current allocated number of slices with the required allocation of slice numbers predicted for the user, wherein excluding the at least a portion of the plurality of slices from the evacuation process prevents subsequent repetitive evacuating and reallocating of slices.

2. The computer-implemented method of claim 1 wherein the block usage in the plurality of slices for the user is identified for a pre-determined interval.

3. The computer-implemented method of claim 1 wherein at least the portion of the plurality of slices is excluded from the evacuation process when the current allocated number of slices is less than the required allocation of slice numbers predicted for the user.

4. The computer-implemented method of claim 1 further comprising evacuating at least a second portion of the plurality of slices when the current allocated number of slices is greater than the required allocation of slice numbers predicted for the user.

5. The computer-implemented method of claim 4 wherein the current allocated number of slices is at least equal to the required allocation of slice numbers predicted for the user after evacuating at least the second portion of the plurality of slices.

6. A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising:

identifying historical block usage in a plurality of slices for a user;

determining at least a portion of the plurality of slices to keep during an evacuation process for the plurality of slices, wherein the at least a portion of the plurality of slices to keep during an evacuation process includes one or more slices eligible for being reclaimed, wherein determining at least the portion of the plurality of slices to keep during the evacuation process for the plurality of slices includes:

predicting a required allocation of slice numbers for the user based upon, at least in part, the historical block usage in the plurality of slices for the user, and

comparing a current allocated number of slices with the required allocation of slice numbers predicted for the user; and

excluding at least the portion of the plurality of slices from the evacuation process for the plurality of slices based upon, at least in part, comparing the current allocated number of slices with the required allocation of slice numbers predicted for the user, wherein excluding the at least a portion of the plurality of slices from the evacuation process prevents subsequent repetitive evacuating and reallocating of slices.

7. The computer program product of claim 6 wherein the block usage in the plurality of slices for the user is identified for a pre-determined interval.

8. The computer program product of claim 6 wherein at least the portion of the plurality of slices is excluded from the evacuation process when the current allocated number of slices is less than the required allocation of slice numbers predicted for the user.

9. The computer program product of claim 6 wherein the operations further comprise evacuating at least a second portion of the plurality of slices when the current allocated number of slices is greater than the required allocation of slice numbers predicted for the user.

10. The computer program product of claim 9 wherein the current allocated number of slices is at least equal to the required allocation of slice numbers predicted for the user after evacuating at least the second portion of the plurality of slices.

11. A computing system including one or more processors and one or more memories configured to perform operations comprising:

identifying historical block usage in a plurality of slices for a user;

determining at least a portion of the plurality of slices to keep during an evacuation process for the plurality of slices, wherein the at least a portion of the plurality of slices to keep during an evacuation process includes one or more slices eligible for being reclaimed, wherein determining at least the portion of the plurality of slices to keep during the evacuation process for the plurality of slices includes:

predicting a required allocation of slice numbers for the user based upon, at least in part, the historical block usage in the plurality of slices for the user, and

comparing a current allocated number of slices with the required allocation of slice numbers predicted for the user; and

excluding at least the portion of the plurality of slices from the evacuation process for the plurality of slices based upon, at least in part, comparing the current allocated number of slices with the required allocation of slice numbers predicted for the user, wherein excluding the at least a portion of the plurality of slices from the evacuation process prevents subsequent repetitive evacuating and reallocating of slices.

12. The computing system of claim 11 wherein the block usage in the plurality of slices for the user is identified for a pre-determined interval.

13. The computing system of claim 11 wherein at least the portion of the plurality of slices is excluded from the evacuation process when the current allocated number of slices is less than the required allocation of slice numbers predicted for the user.

14. The computing system of claim 11 wherein the operations further comprise evacuating at least a second portion of the plurality of slices when the current allocated number of slices is greater than the required allocation of slice numbers predicted for the user, and wherein the current allocated number of slices is at least equal to the required allocation of slice numbers predicted for the user after evacuating at least the second portion of the plurality of slices.

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 2, 2019
From: WANG, LEONID; COSTA, KENT J.; ZHOU, HAITAO KENNY; ZHANG, FENG; SUN, JIAJIE
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 049947/0099 →