IP Library › Granted Patent US 10,897,428
Granted Patent B2
US 10,897,428 · App. 16/166,543 · Granted Jan 19, 2021

Method, server system and computer program product for managing resources

Inventors: Junping Zhao (Beijing, CN); Fan Guo (Shanghai, CN); Kun Wang (Beijing, CN)
Assignee: EMC IP Holding Company LLC
H04L47/803G06F9/505G06F9/5088G06F2209/5021G06F2209/5022H04L47/74H04L47/821H04L47/822
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,897,428
App. No.
16/166,543
Filed
Oct 22, 2018
Granted
Jan 19, 2021
Kind
B2
Art Unit
2458
USPC
709/226
Abstract

Embodiments of the present disclosure provide a method, a server system and a computer program product of managing resources. The method may comprise receiving a request for a first amount of resources of the dedicated processing unit from an application with an assigned priority. The method may further comprise determining a total amount of resources of the dedicated processing unit to be occupied by the application based on the request. The method may also comprise in response to the total amount approximating or exceeding a predetermined quota associated with the priority, allocating the first amount of resources of the general-purpose processing unit to the application.

Claims (53)

1. A method of managing resources, comprising:

receiving a request for a first amount of resources of a dedicated processing unit from an application with an assigned priority;

determining, based on the request, a total amount of resources of the dedicated processing unit to be occupied by the application;

in response to the total amount approximating or exceeding a predetermined quota associated with the priority, allocating the first amount of resources of a general-purpose processing unit to the application;

in response to the application releasing a portion of resources of the dedicated processing unit occupied previously, determining whether a total amount of resources of the dedicated processing unit occupied by the application after the releasing is below the predetermined quota by a threshold difference; and

in response to the total amount of resources after the releasing being below the predetermined quota by the threshold difference, migrating at least a portion of data occupying the allocated resources of the general-purpose processing unit to the resources of the dedicated processing unit.

2. The method of claim 1 , wherein the resources of the dedicated processing unit include storage resources of a Graphics Processing Unit (GPU), and the resources of the general-purpose processing unit include storage resources of a Central Processing Unit (CPU).

3. The method of claim 1 , wherein the resources of the dedicated processing unit and the resources of the general-purpose processing unit have unified addressing by means of a shared pointer, and allocating the first amount of resources of the general-purpose processing unit comprises:

setting the shared pointer to point to the first amount of resources of the general-purpose processing unit allocated to the application; and

returning information of the pointer to the application.

4. The method of claim 1 , further comprising:

detecting utilization of resources of the dedicated processing unit; and

in response to the utilization exceeding a predetermined threshold, sending a signal to the application to instruct the application to defer sending of a next request for the resources of the dedicated processing unit.

5. The method of claim 1 , further comprising:

receiving an indication of the predetermined quota from the application.

6. The method of claim 1 , wherein the total amount of resources of the dedicated processing unit to be occupied by the application comprises a sum of an amount of resources of the dedicated processing unit already occupied by the application plus the requested first amount of resources of the dedicated processing unit.

7. The method of claim 1 , wherein the application is allocated either the first amount of resources of the dedicated processing unit or the first amount of resources of the general-purpose processing unit based at least in part on whether or not the total amount approximates or exceeds the predetermined quota associated with the priority.

8. A server system, comprising:

a dedicated processing unit;

a general-purpose processing unit; and

a controller configured to:

receive a request for a first amount of resources of the dedicated processing unit from an application with an assigned priority;

determine, based on the request, a total amount of resources of the dedicated processing unit to be occupied by the application;

in response to the total amount approximating or exceeding a predetermined quota associated with the priority, allocate the first amount of resources of the general-purpose processing unit to the application;

in response to the application releasing a portion of resources of the dedicated processing unit occupied previously, determine whether a total amount of resources of the dedicated processing unit occupied by the application after the releasing is below the predetermined quota by a threshold difference; and

in response to the total amount of resources after the releasing being below the predetermined quota by the threshold difference, migrate at least a portion of data occupying the allocated resources of the general-purpose processing unit to the resources of the dedicated processing unit.

9. The server system of claim 8 , wherein the resources of the dedicated processing unit include storage resources of a Graphics Processing Unit (GPU), and the resources of the general-purpose processing unit include storage resources of a Central Processing Unit (CPU).

10. The server system of claim 8 , wherein the resources of the dedicated processing unit and the resources of the general-purpose processing unit have unified addressing by means of a shared pointer, and allocating the first amount of resources of the general-purpose processing unit comprises:

setting the shared pointer to point to the first amount of resources of the general-purpose processing unit allocated to the application; and

returning information of the pointer to the application.

11. The server system of claim 8 , wherein the controller is further configured to:

detect utilization of resources of the dedicated processing unit; and

in response to the utilization exceeding a predetermined threshold, send a signal to the application to instruct the application to defer sending of a next request for the resources of the dedicated processing unit.

12. The server system of claim 8 , wherein the controller is further configured to:

receive an indication of the predetermined quota from the application.

13. The server system of claim 8 , wherein the application is allocated either the first amount of resources of the dedicated processing unit or the first amount of resources of the general-purpose processing unit based at least in part on whether or not the total amount approximates or exceeds the predetermined quota associated with the priority.

14. A computer program product being tangibly stored on a non-volatile computer readable medium and including machine executable instructions which, when executed, cause a machine to perform a method of managing resources, the method comprising:

receiving a request for a first amount of resources of a dedicated processing unit from an application with an assigned priority;

determining, based on the request, a total amount of resources of the dedicated processing unit to be occupied by the application;

in response to the total amount approximating or exceeding a predetermined quota associated with the priority, allocating the first amount of resources of a general-purpose processing unit to the application;

in response to the application releasing a portion of resources of the dedicated processing unit occupied previously, determining whether a total amount of resources of the dedicated processing unit occupied by the application after the releasing is below the predetermined quota by a threshold difference; and

in response to the total amount of resources after the releasing being below the predetermined quota by the threshold difference, migrating at least a portion of data occupying the allocated resources of the general-purpose processing unit to the resources of the dedicated processing unit.

15. The computer program product of claim 14 , wherein the resources of the dedicated processing unit include storage resource of a Graphics Processing Unit (GPU), and the resources of the general-purpose processing unit include storage resources of a Central Processing Unit (CPU).

16. The computer program product of claim 14 , wherein the resources of the dedicated processing unit and the resources of the general-purpose processing unit have unified addressing by means of a shared pointer, and allocating the first amount of resources of the general-purpose processing unit comprises:

setting the shared pointer to point to the first amount of resources of the general-purpose processing unit allocated to the application; and

returning information of the pointer to the application.

17. The computer program product of claim 14 , wherein the method further comprises:

detecting utilization of resources of the dedicated processing unit; and

in response to the utilization exceeding a predetermined threshold, sending a signal to the application to instruct the application to defer sending of a next request for the resources of the dedicated processing unit.

18. The computer program product of claim 14 , wherein the method further comprises:

receiving an indication of the predetermined quota from the application.

19. The computer program product of claim 14 , wherein the total amount of resources of the dedicated processing unit to be occupied by the application comprises a sum of an amount of resources of the dedicated processing unit already occupied by the application plus the requested first amount of resources of the dedicated processing unit.

20. The computer program product of claim 14 , wherein the application is allocated either the first amount of resources of the dedicated processing unit or the first amount of resources of the general-purpose processing unit based at least in part on whether or not the total amount approximates or exceeds the predetermined quota associated with the priority.

Assignments (6)
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 AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
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 Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2018
From: ZHAO, JUNPING; GUO, FAN; WANG, KUN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 047261/0768 →
Priority Claims (1)
CN 2017 1 1029488 · Oct 27, 2017 · national
Continuity (1)
Related Publication 20190132257A1 · May 2, 2019