Application migration in a process virtual machine environment
US-2016110210-A1 · Apr 21, 2016 · US
US10877807B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10877807-B2 |
| Application number | US-201816162475-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 17, 2018 |
| Priority date | Oct 20, 2017 |
| Publication date | Dec 29, 2020 |
| Grant date | Dec 29, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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
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
considering data affinity · CPC title
Source to source · CPC title
the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title
Grid computing · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.