Adaptive queued locking for control of speculative execution
US-2017286187-A1 · Oct 5, 2017 · US
US10802873B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10802873-B2 |
| Application number | US-201816117306-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 30, 2018 |
| Priority date | Dec 15, 2017 |
| Publication date | Oct 13, 2020 |
| Grant date | Oct 13, 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.
Provided are a computer system and a program migration method capable of properly migrating programs between different computers. A first computer calculates a migration priority of each of the plurality of programs based on information which indicates weighting relative to usage of hardware resources, and operation information of hardware resources in the first computer when each of the plurality of programs is executed, and, based on hardware resource expansion schedule information which defines hardware resources of the second computer in each of a plurality of migration phases, determines migration feasibility of a program in hardware resources used in each migration phase and decides the migration phase for migrating each of the plurality of programs in order from a first migration phase of the plurality of migration phases and in order of the calculated migration priority.
Opening claim text (preview).
The invention claimed is: 1. A computer system comprising a first computer as a migration source of a plurality of programs, and a second computer as a migration destination of the plurality of programs and which is different from the first computer, wherein the first computer: calculates a migration priority of each of the plurality of programs based on information which indicates weighting relative to usage of hardware resources, and operation information of hardware resources in the first computer when each of the plurality of programs is executed; and based on hardware resource expansion schedule information which defines hardware resources of the second computer in each of a plurality of migration phases, determines migration feasibility of a program in hardware resources used in each migration phase and decides the migration phase for migrating each of the plurality of programs in order from a first migration phase of the plurality of migration phases and in order of the calculated migration priority; wherein when the first computer determines that the program, which has been modified so that the program to be executed is operable in the second computer, has been ported to the second computer and that the second computer has completed execution of the ported program without delay, the first computer performs processing for migrating the program to be executed. 2. The computer system according to claim 1 , wherein, when the first computer determines that a result of executing the program to be executed coincides with a result of the second computer executing the ported program, the first computer performs processing for migrating the program to be executed. 3. The computer system according to claim 1 , wherein a program, which has been modified so that a program to be executed is operable in the second computer, has been ported to the second computer, and wherein, when the first computer determines that a result of executing the program to be executed does not coincide with a result of the second computer executing the ported program, or when the second computer completes execution of the ported program with delay, the first computer targets unmigrated programs consisting of the program to be executed and programs to be migrated in a migration phase which is subsequent to a migration phase in which the program to be executed is to be migrated, and determines migration feasibility of a program in hardware resources used in each migration phase and determines the migration phase for migrating the unmigrated programs in order from a first migration phase of the subsequent migration phase and in order of the calculated migration priority. 4. The computer system according to claim 1 , wherein the first computer outputs migration schedule information which indicates a migration phase of migrating each of the plurality of programs. 5. The computer system according to claim 4 , wherein the first computer is able to receive corrected migration schedule information, which is information after correcting the migration schedule information, and determines migration feasibility of a program in hardware resources used in each migration phase based on the corrected migration schedule information. 6. The computer system according to claim 5 , wherein the first computer is able to receive corrected hardware resource expansion schedule information, which is information after correcting the hardware resource expansion schedule information, and determines migration feasibility of a program in hardware resources used in each migration phase based on the corrected migration schedule information and the corrected hardware resource expansion schedule information. 7. A program migration method in a computer system comprising a first computer as a migration source of a plurality of programs, and a second computer as a migration destination of the plurality of programs and which is different from the first computer, wherein the program migration method comprises: a first step of a computer calculating a migration priority of each of the plurality of programs based on information which indicates weighting relative to usage of hardware resources, and operation information of hardware resources in the first computer when each of the plurality of programs is executed; and a second step of a computer, based on hardware resource expansion schedule information which defines hardware resources of the second computer in each of a plurality of migration phases, determining migration feasibility of a program in hardware resources used in each migration phase and deciding the migration phase for migrating each of the plurality of programs in order from a first migration phase of the plurality of migration phases and in order of the calculated migration priority, wherein when the first computer determines that the program, which has been modified so that the program to be executed is operable in the second computer, has been ported to the second computer and that the second computer has completed execution of the ported program without delay, the first computer performs processing for migrating the program to be executed.
Adapting program code to run in a different environment; Porting · CPC title
resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence) · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.