Adjustment of execution of tasks
US-2016188379-A1 · Jun 30, 2016 · US
US10176014B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10176014-B2 |
| Application number | US-201514810205-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 27, 2015 |
| Priority date | Jul 27, 2015 |
| Publication date | Jan 8, 2019 |
| Grant date | Jan 8, 2019 |
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.
A method for operating a multithread processing system is provided, including assigning, by a controller, a subset of a plurality of tasks to a plurality of threads during a time N, collecting, by the controller, data during the time N concerning the operation of the plurality of threads, analyzing, by the controller, the data to determine at least one condition concerning the operation of the plurality of threads during the time N, and adjusting, by the controller, a number of the plurality of threads available in time N+1 in accordance with the at least one condition.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: collecting, by a device while a plurality of hardware threads execute tasks in a multicore processor of the device during a first time interval, different data concerning execution of the tasks, wherein the different data comprise information about a number of object locks that are issued, waiting time of synchronization that is performed within a task group, and a number of cache misses, and wherein a hardware thread is a processor in the multicore processor; performing, by the device, analysis on the different data to produce an analysis result for adjusting a number of the plurality of hardware threads in a subsequent time interval; comparing, by the device, the analysis result with a predetermined threshold, thereby producing a comparing result, the comparing result indicating an adjustment of the number of the plurality of hardware threads, wherein the comparing result is a first negative value in response to the analysis result being less than the predetermined threshold, the first negative value indicating how many hardware threads of the plurality of hardware threads are to be deactivated, and wherein the comparing result is a second positive value in response to the analysis result being greater than the predetermined threshold, the second positive value indicating how many more hardware threads are to be activated in addition to the plurality of hardware threads; and increasing, by the device, the number of the plurality of hardware threads of the multicore processor during the subsequent time interval based on the second positive value in response to determining that the comparing result exceeds the predetermined threshold. 2. The method of claim 1 wherein the different data further comprises a memory related metric. 3. The method of claim 1 wherein increasing the number of the plurality of hardware threads comprises increasing the number of the plurality of hardware threads by the second positive value. 4. The method of claim 1 wherein the second positive value is dynamically determined based on the collected different data. 5. The method of claim 1 wherein the first negative value is dynamically determined based on the collected different data. 6. The method of claim 1 wherein the comparing result is zero (o) in response to determining that the analysis result falls within a first threshold and a second threshold. 7. An apparatus, comprising: a storage system storing instructions; and a multicore processor coupled to the storage system, wherein the multicore processor executes the instructions to: collect, while a plurality of hardware threads execute tasks during a first time interval, different data concerning execution of the tasks, wherein the different data comprise information about register locks that are issued when the tasks are running, a number of cache misses, and waiting time of synchronization that is performed within a task group, wherein a hardware thread is a processor in the multicore processor; perform analysis on the different data to produce an analysis result for adjusting a number of the plurality of hardware threads in a subsequent time interval; compare the analysis result with a predetermined threshold, thereby producing a comparing result, wherein the comparing result is a first negative value in response to the analysis result being less than the predetermined threshold, the first negative value indicating how many hardware threads in the plurality of hardware threads are to be deactivated, and wherein the comparing result is a second positive value in response to the analysis result being greater than the predetermined threshold, the second positive value indicating how many more hardware threads are to be activated in addition to the plurality of hardware threads; and increase the number of the plurality of hardware threads during the subsequent time interval based on the second positive value in response to determining that the comparing result exceeds the predetermined threshold. 8. The apparatus of claim 7 wherein the different data comprises a number of object locks issued. 9. The apparatus of claim 7 wherein the different data comprises a memory related metric. 10. The apparatus of claim 7 wherein the processor executes the instructions to increase the number of the plurality of hardware threads by the second positive value. 11. The apparatus of claim 7 wherein the first negative value is dynamically determined based on the collected different data. 12. The apparatus of claim 7 wherein the second positive value is dynamically determined based on the collected different data. 13. The apparatus of claim 7 wherein the comparing result is zero (o) in response to determining that the analysis result falls within a first threshold and a second threshold. 14. The apparatus of claim 7 wherein the number of the plurality of hardware threads is increased by the second positive value. 15. A method, comprising: collecting, by a device while a plurality of hardware threads execute tasks in a multicore processor during a first time interval, different types of data concerning execution of the tasks, wherein the different types of data comprises information about waiting time of synchronization that is performed within a task group, a number of cache misses and a number of object locks that are issued, and wherein a hardware thread is a processor in the multicore processor; performing, by the device, analysis on the different types of data to generate a result for adjusting a number of the plurality of hardware threads in a subsequent time interval; comparing, by the device, the result with a first predetermined threshold and a second predetermined threshold, respectively, thereby producing a comparing result, the comparing result being a first positive value in response to the result being greater than the first predetermined threshold, the first positive value indicating how many hardware threads in the plurality of hardware threads are to be deactivated, and the comparing result being a second negative value in response to the result being less than the second predetermined threshold, the second negative value indicating how many more hardware threads are to be activated in addition to the plurality of hardware threads; determining whether the number of the plurality of hardware threads is to be adjusted based on the comparing result; and decreasing, by the device, the number of the plurality of hardware threads during the subsequent time interval based on the first positive value in response to determining that the result exceeds the first predetermined threshold. 16. The method of claim 15 wherein the different types of data comprises a memory related metric. 17. The method of claim 15 wherein decreasing the number of the plurality of hardware threads comprises decreasing the number of the plurality of hardware threads by the first positive value. 18. The method of claim 17 wherein the first positive value is dynamically determined based on the collected different types of data. 19. The method of claim 15 wherein the comparing result is zero (o) in response to determining that the result falls within the first predetermined threshold and the second predetermined threshold. 20. The method of claim 15 wherein the second negative value is dynamically determined based on the collected different types of data.
considering the load · CPC title
to service a request · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title
considering hardware capabilities · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.