IP Library Granted Patent US 10,628,359
Granted Patent B2
US 10,628,359 · App. 15/909,274 · Granted Apr 21, 2020

Storage management system and method

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 10,628,359
App. No.
15/909,274
Granted
Apr 21, 2020
Kind
B2
Abstract

A method, computer program product, and computing system for determining a maximum quantity of unit write operations serviceable by a data bus coupled to a memory system. A first data stream is received for writing data to the memory system. A first unit write operation is assigned to the first data stream. One or more supplemental unit write operations are assigned to the first data stream as needed provided that the one or more supplemental unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

Claims (46)

1. A computer-implemented method, executed on a computing device, comprising:

determining a maximum quantity of unit write operations serviceable by a data bus coupled to a memory system;

receiving a first data stream for writing data to the memory system;

assigning a first unit write operation to the first data stream, wherein assigning the first unit write operation to the first data stream includes writing data of the first data stream to the memory system; and

assigning one or more supplemental unit write operations to the first data stream when writing the data of the first data stream to the memory system is taking longer than a threshold amount of time provided that the one or more supplemental unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

2. The computer-implemented method of claim 1 further comprising:

writing the data to data blocks defined within the first unit write operation in a round-robin fashion.

3. The computer-implemented method of claim 1 wherein the unit write operations are grid block unit write operations.

4. The computer-implemented method of claim 1 wherein:

the data bus is a PCIe data bus; and

the memory system is an SSD memory system.

5. The computer-implemented method of claim 1 further comprising:

receiving an additional data stream for writing data to the memory system.

6. The computer-implemented method of claim 5 wherein further comprising:

assigning one or more additional unit write operations to the additional data stream as needed provided that the one or more additional unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

7. The computer-implemented method of claim 5 wherein assigning one or more supplemental unit write operations to the first data stream includes:

assigning one or more supplemental unit write operations to the first data stream if a busy condition is sensed with respect to the first unit write operation.

8. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

determining a maximum quantity of unit write operations serviceable by a data bus coupled to a memory system;

receiving a first data stream for writing data to the memory system;

assigning a first unit write operation to the first data stream, wherein assigning the first unit write operation to the first data stream includes writing data of the first data stream to the memory system; and

assigning one or more supplemental unit write operations to the first data stream when writing the data of the first data stream to the memory system is taking longer than a threshold amount of time provided that the one or more supplemental unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

9. The computer program product of claim 8 further comprising:

writing the data to data blocks defined within the first unit write operation in a round-robin fashion.

10. The computer program product of claim 8 wherein the unit write operation is a grid block unit write operation.

11. The computer program product of claim 8 wherein:

the data bus is a PCIe data bus; and

the memory system is an SSD memory system.

12. The computer program product of claim 8 further comprising:

receiving an additional data stream for writing data to the memory system.

13. The computer program product of claim 12 further comprising:

assigning one or more additional unit write operations to the additional data stream as needed provided that the one or more additional unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

14. The computer program product of claim 12 wherein assigning one or more supplemental unit write operations to the first data stream includes:

assigning one or more supplemental unit write operations to the first data stream if a busy condition is sensed with respect to the first unit write operation.

15. A computing system comprising:

a memory; and

a processor configured to determine a maximum quantity of unit write operations serviceable by a data bus coupled to a memory system, the processor further configured to receive a first data stream for writing data to the memory system, the processor further configured to assign a first unit write operation to the first data stream, wherein assigning the first unit write operation to the first data stream includes writing data of the first data stream to the memory system, and the processor further configured to assign one or more supplemental unit write operations to the first data stream when writing the data of the first data stream to the memory system is taking longer than a threshold amount of time provided that the one or more supplemental unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

16. The computing system of claim 15 wherein the processor is further configured to write the data to data blocks defined within the first unit write operation in a round-robin fashion.

17. The computing system of claim 15 wherein the unit write operation is a grid block unit write operation.

18. The computing system of claim 15 wherein:

the data bus is a PCIe data bus; and

the memory system is an SSD memory system.

19. The computing system of claim 15 wherein the processor is further configured to receive an additional data stream for writing data to the memory system.

20. The computing system of claim 19 wherein the processor is further configured to assign one or more additional unit write operations to the additional data stream as needed provided that the one or more additional unit write operations do not result in the total unit write operations exceeding the maximum quantity of unit write operations.

21. The computing system of claim 19 wherein assigning, via the processor, one or more supplemental unit write operations to the first data stream includes:

assigning one or more supplemental unit write operations to the first data stream if a busy condition is sensed with respect to the first unit write operation.

Assignments (8)
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 (046366/0014) Recorded May 20, 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 060450/0306 →
RELEASE OF SECURITY INTEREST AT REEL 046286 FRAME 0653 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 058298/0093 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Jun 1, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046286/0653 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jun 1, 2018
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 046366/0014 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2018
From: HA, JUSTIN L; LEE, FREDERICK KWAN HANG
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 045387/0893 →