Method, apparatus and computer program product for allocating processing resource to application

US10877807B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10877807-B2
Application numberUS-201816162475-A
CountryUS
Kind codeB2
Filing dateOct 17, 2018
Priority dateOct 20, 2017
Publication dateDec 29, 2020
Grant dateDec 29, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments of the present disclosure relate to a method and apparatus of allocating a processing resource to an application. The method comprises receiving from the application a request for executing a task. The method further comprises determining a characteristic of the application based on the request. The method may determine stored historical data associated with the application. In addition, the method may further automatically select, based on the characteristic of the application and the historical data, the processing resource applicable to the application for allocation to the application.

First claim

Opening claim text (preview).

We claim: 1. A method of allocating a processing resource to an application, comprising: receiving from the application a request for executing a task; determining a characteristic of the application based on the request; determining stored historical data associated with the application, the historical data comprising at least one of metadata of one or more previous applications and code used by one or more previous applications; and automatically selecting, based on the characteristic of the application and the historical data, the processing resource applicable to the application for allocation to the application; wherein automatically selecting the processing resource comprises: determining, based on the historical data, whether there is stored code that has been determined as being applicable to the application; in response to finding the stored code, determining a resource type applicable to the application based on the code; and selecting the processing resource based on the resource type; in response to receiving code from the application, determining that the received code is executable by the processing resource; and in response to determining that the received code is executable by the processing resource, storing the received code in association with the characteristic of the application and the processing resource, as additional historical data; wherein storing the received code comprises: in response to determining that the received code comprises general-purpose source code, generating a plurality of sets of code applicable to different types of processing resources based on the general-purpose source code; and storing the plurality of sets of code; the plurality of sets of code providing a dynamic update based on the general-purpose source code in a corresponding iteration. 2. The method according to claim 1 , wherein the processing resource is of a first resource type, the method further comprising: in response to receiving, from the application, first code specific to a second resource type, converting the first code into second code, the second code being applicable to the first resource type; and sending the second code to the processing resource for execution. 3. The method according to claim 1 , wherein automatically selecting the processing resource further comprises: determining respective performance of available processing resources; and automatically selecting the processing resource further based on the respective performance of the available processing resources. 4. The method according to claim 1 , wherein the application and the processing resource are positioned remotely to each other. 5. The method according to claim 1 , wherein the historical data comprises the code used by one or more previous applications. 6. The method according to claim 1 , wherein determining, based on the historical data, whether there is stored code that has been determined as being applicable to the application comprises: determining a number of instances of code used by at least one of the one or more previous applications, where said at least one of the one or more previous applications is identical to the application from which the request is received; and responsive to the number of instances of code being greater than a threshold, determining that there is stored code that has been determined as being applicable to the application from which the request is received. 7. An electronic device, comprising: at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions executable by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to: receive from an application a request for executing a task; determine a characteristic of the application based on the request; determine stored historical data associated with the application, the historical data comprising at least one of metadata of one or more previous applications and code used by one or more previous applications; and automatically select, based on the characteristic of the application and the historical data, the processing resource applicable to the application for allocation to the application; wherein automatically selecting the processing resource comprises: determining, based on the historical data, whether there is stored code that has been determined as being applicable to the application; in response to finding the stored code, determining a resource type applicable to the application based on the code; and selecting the processing resource based on the resource type; in response to receiving code from the application, determining that the received code is executable by the processing resource; and in response to determining that the received code is executable by the processing resource, storing the received code in association with the characteristic of the application and the processing resource, as additional historical data; wherein storing the received code comprises: in response to determining that the received code comprises general-purpose source code, generating a plurality of sets of code applicable to different types of processing resources based on the general-purpose source code; and storing the plurality of sets of code; the plurality of sets of code providing a dynamic update based on the general-purpose source code in a corresponding iteration. 8. The electronic device according to claim 7 , wherein the processing resource is of a first resource type, and the instructions, when executed by the at least one processing unit, further cause the electronic device to: in response to receiving, from the application, first code specific to a second resource type, convert the first code into second code, the second code being applicable to the first resource type; and send the second code to the processing resource for execution. 9. The electronic device according to claim 7 , wherein automatically selecting the processing resource further comprises: determining respective performance of available processing resources; and automatically selecting the processing resource further based on the respective performance of the available processing resources. 10. The electronic device according to claim 7 , wherein the application and the processing resource are positioned remotely to each other. 11. The electronic device according to claim 7 , wherein the historical data comprises the metadata of one or more previous applications. 12. The electronic device according to claim 7 , wherein the historical data comprises the code used by one or more previous applications. 13. The electronic device according to claim 7 , wherein determining, based on the historical data, whether there is stored code that has been determined as being applicable to the application comprises: determining a number of instances of code used by at least one of the one or more previous applications, where said at least one of the one or more previous applications is identical to the application from which the request is received; and responsive to the number of instances of code being greater than a threshold, determining that there is stored code that has been determined as being applicable to the application from which the request is received. 14. A computer program product being tangibly stored on a non-transitory computer-readable medium and comprising machine-executable instructions which, when executed, cause a machine to perform the steps of: receiving from the application a request for e

Assignees

Inventors

Classifications

  • G06F9/5038Primary

    considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups) · CPC title

  • G06F9/5033Primary

    considering data affinity · CPC title

  • Source to source · CPC title

  • G06F9/5027Primary

    the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • Grid computing · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10877807B2 cover?
Embodiments of the present disclosure relate to a method and apparatus of allocating a processing resource to an application. The method comprises receiving from the application a request for executing a task. The method further comprises determining a characteristic of the application based on the request. The method may determine stored historical data associated with the application. In addi…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/5038. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 29 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).