IP Library Granted Patent US 11,341,035
Granted Patent B2
US 11,341,035 · App. 16/698,530 · Granted May 24, 2022

Optimizing virtual storage devices by determining and optimizing associations between virtual storage devices and physical storage devices

Inventor: Charles J. Hickey (Aptos, CA)
Assignee: EMC IP Holding Company LLC
G06F11/3692G06F9/45504G06F11/3457G06F11/3688G06F9/5077G06F11/3485
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,341,035
App. No.
16/698,530
Granted
May 24, 2022
Kind
B2
Abstract

Systems and methods for aligning needs of virtual devices with hardware resources. The performance of virtual devices are tested using different groupings to determine mappings or relationships between the virtual devices and the physical devices from which they are drawn. Based on the results of the tests, spindle groups can be optimized.

Claims (30)

1. A method for determining associations between virtual devices and physical devices, the method comprising:

obtaining a baseline performance for each of the virtual devices by performing a performance test for each of the virtual devices, wherein the virtual devices are associated with virtual machines and wherein the virtual devices and the virtual machines are associated with the physical devices;

grouping the virtual devices into different groupings;

performing a plurality of performance tests on the different groupings, wherein each test determines a performance of each virtual device with respect to other virtual devices in the same grouping, wherein the plurality of tests determine how each of the virtual devices impact the performance of the other virtual devices;

assigning, for each of the tests, each of the tested virtual devices to an associated list when performance is impacted by the other virtual devices or an unassociated list when performance is not impacted by the other virtual devices;

determining spindle groups for the virtual devices based on results of the plurality of tests including the associated lists and the unassociated lists; and

optimizing the associations between the virtual devices and the spindle groups to improve the performance of the virtual devices.

2. The method of claim 1 , wherein the baseline performance is determined by operating each of the virtual devices by itself.

3. The method of claim 1 , wherein the groupings comprise first groupings that each include half of the virtual devices, wherein second groupings each include one-fourth of the virtual devices, and wherein subsequent groupings each include half of a previous grouping size until the grouping size is one.

4. The method of claim 1 , further comprising, for each test and each grouping, determining which of the virtual devices are impacted by other virtual devices in the grouping and determining which of the virtual devices are not impacted by the other virtual devices in the grouping, wherein each test is associated with results identifying these associations.

5. The method of claim 4 , further comprising accumulating the results for all of the tests.

6. The method of claim 1 , further comprising determining the spindle groups to optimize throughput of the virtual devices, wherein determining the spindle groups includes associating the virtual devices to physical devices.

7. The method of claim 1 , further comprising performing the plurality of performance tests by performing the test for each grouping size using at least two different offsets such that different combinations of the virtual devices are in each group tested together and such that the virtual devices are tested in different groupings.

8. The method of claim 1 , further comprising performing each of the tests for a predetermined amount of time.

9. The method of claim 1 , wherein the groupings including groupings of multiple block sizes, each block size corresponding to a certain number of the virtual devices, wherein the offsets allow the groupings to be applied to different combinations of the virtual devices.

10. A non-transitory storage medium comprising computer executable instructions configured to be executed by a processor to perform a method, the method comprising:

obtaining a baseline performance for each of the virtual devices by performing a performance test for each of the virtual devices, wherein the virtual devices are associated with virtual machines and wherein the virtual devices and the virtual machines are associated with the physical devices;

grouping the virtual devices into different groupings;

performing a plurality of performance tests on the different groupings, wherein each test determines a performance of each virtual device with respect to other virtual devices in the same grouping, wherein the plurality of tests determine how each of the virtual devices impact the performance of the other virtual devices;

assigning, for each of the tests, each of the tested virtual devices to an associated list when performance is impacted by the other virtual devices or an unassociated list when performance is not impacted by the other virtual devices;

determining spindle groups for the virtual devices based on results of the plurality of tests including the associated lists and the unassociated lists; and

optimizing the associations between the virtual devices and the spindle groups to improve the performance of the virtual devices.

11. The non-transitory storage medium of claim 10 , wherein the baseline performance is determined by operating each of the virtual devices by itself.

12. The non-transitory storage medium of claim 10 , wherein the groupings comprise first groupings that each include half of the virtual devices, wherein second groupings each include one-fourth of the virtual devices, and wherein subsequent groupings each include half of a previous grouping size until the grouping size is one.

13. The non-transitory storage medium of claim 10 , the method, further comprising, for each test and each grouping, determining which of the virtual devices are impacted by other virtual devices in the grouping and determining which of the virtual devices are not impacted by the other virtual devices in the grouping, wherein each test is associated with results identifying these associations.

14. The non-transitory storage medium of claim 13 , the method the method further comprising accumulating the results for all of the tests.

15. The non-transitory storage medium of claim 10 , the method further comprising determining the spindle groups to optimize throughput of the virtual devices, wherein determining the spindle groups includes associating the virtual devices to physical devices.

16. The non-transitory storage medium of claim 10 , the method further comprising performing the plurality of performance tests by performing the test for each grouping size using at least two different offsets such that different combinations of the virtual devices are in each group tested together and such that the virtual devices are tested in different groupings.

17. The non-transitory storage medium of claim 10 , the method further comprising performing each of the tests for a predetermined amount of time.

18. The non-transitory storage medium of claim 10 , wherein the groupings including groupings of multiple block sizes, each block size corresponding to a certain number of the virtual devices, wherein the offsets allow the groupings to be applied to different combinations of the virtual devices.

Assignments (9)
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 (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 (052216/0758) 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 IP HOLDING COMPANY LLC
Reel/Frame 060438/0680 →
RELEASE OF SECURITY INTEREST AF REEL 052243 FRAME 0773 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0152 →
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 →
SECURITY AGREEMENT Recorded Mar 26, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052243/0773 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Mar 24, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052216/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 27, 2019
From: HICKEY, CHARLES J.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051132/0960 →