Migration between CPU cores

US11182202B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11182202-B2
Application numberUS-201916653079-A
CountryUS
Kind codeB2
Filing dateOct 15, 2019
Priority dateAug 26, 2015
Publication dateNov 23, 2021
Grant dateNov 23, 2021

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.

Methods, non-transitory machine-readable media, and computing devices for transitioning tasks and interrupt service routines are provided. An example method includes processing, by a plurality of processor cores of a storage controller, tasks and interrupt service routines. A performance statistic is determined corresponding to the plurality of processor cores. Based on detecting that the performance statistic passes a threshold, a number of the plurality of processor cores that are assigned to the tasks and the interrupt service routines are reduced.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: processing, by a first processor core of a storage controller in a single-core configuration, one or more operations for an initialization sequence; executing, by the storage controller, an application configured to manage migration from the single-core configuration to a multi-core configuration upon completion of the initialization sequence, the executing the application being a trigger; determining, by the storage controller, to transition from the single-core configuration to the multi-core configuration in response to the trigger; and expanding, by the storage controller, from the first processor core assigned to process at least one remaining operation from among the one or more operations to a plurality of processor cores in the multi-core configuration that are assigned to process the at least one remaining operation. 2. The method of claim 1 , further comprising: rebalancing, by the storage controller, the at least one remaining operation among the plurality of processor cores in response to a performance metric meeting a threshold. 3. The method of claim 1 , wherein the expanding further comprises: migrating, by the storage controller, at least one operation from the at least one remaining operation to a target processor core from among the plurality of processor cores based on a mapping. 4. The method of claim 1 , wherein the expanding further comprises: preventing, by the storage controller, processing of at least one operation from the at least one remaining operation by the first processor core while the at least one remaining operation is migrated to a target processor core from among the plurality of processor cores. 5. The method of claim 1 , wherein the expanding further comprises: determining, dynamically by the storage controller, a target processor core from among the plurality of processor cores. 6. The method of claim 1 , further comprising: determining, by the storage controller dynamically before the expanding, a mapping of each of the at least one remaining operation to the plurality of processor cores based on a latency metric and a workload metric. 7. The method of claim 1 , further comprising: remapping, by the storage controller, the at least one remaining operation among the plurality of processor cores in response to a change in component configuration of the storage controller. 8. A computing device comprising: a memory having stored thereon instructions for performing a method of transitioning tasks and interrupt service routines between core configurations; and a processor coupled to the memory, the processor configured to execute the instructions to: execute, by a first core of the processor in a single-core configuration, one or more of the tasks and one or more of the interrupt service routines for an initialization sequence; execute an application configured to manage migration from the single-core configuration to a multi-core configuration upon completion of the initialization sequence, the execution of the application being a trigger; determine to transition from the single-core configuration to the multi-core configuration in response to of the trigger; and migrate execution of a remaining plurality of tasks from the tasks and a remaining plurality of interrupt service routines from the first core of the processor to a second core of the processor in the multi-core configuration. 9. The computing device of claim 8 , the processor is further configured to execute the instructions to: rebalance the remaining plurality of tasks and the remaining plurality of interrupt service routines among a plurality of cores including the first core and the second core in response to a performance metric meeting a threshold. 10. The computing device of claim 8 , the the processor is further configured to execute the instructions to: migrate the remaining plurality of tasks and the remaining plurality of interrupt service routines to the second core of the processor based on a mapping. 11. The computing device of claim 8 , the processor is further configured to execute the instructions to: prevent execution of the remaining plurality of tasks by the first core while the remaining plurality of tasks are migrated to the second core. 12. The computing device of claim 8 , the processor is further configured to execute the instructions to: disable execution of the remaining plurality of interrupt service routines by the first core while the remaining plurality of interrupt service routines are migrated to the second core. 13. The computing device of claim 8 , the processor is further configured to execute the instructions to: determine, dynamically before the migration, a mapping of each of the remaining plurality of tasks and the remaining plurality of interrupt service routines to a plurality of cores including the first core and the second core based on a latency metric and a workload metric. 14. The computing device of claim 8 , the processor is further configured to execute the instructions to: remap the remaining plurality of tasks and the remaining plurality of interrupt service routines among a plurality of cores including the first core and the second core in response to a change in component configuration of the computing device. 15. A non-transitory machine-readable medium having stored thereon instructions for performing a method which when executed by at least one machine, causes the at least one machine to: process, by a first processor core of the at least one machine in a single-core configuration, a first subset of a plurality of tasks and a first subset of a plurality of interrupt service routines that comprise operations for an initialization sequence; execute an application configured to manage migration from the single-core configuration to a multi-core configuration upon completion of the initialization sequence, the executing the application being a trigger; determine to transition from the single-core configuration to the multi-core configuration in response to the trigger; and expand, from the first processor core, processing of a second subset of the plurality of tasks and a second subset of the plurality of interrupt service routines to a plurality of processor cores in the multi-core configuration. 16. The non-transitory machine-readable medium of claim 15 , wherein the instructions when executed further cause the at least one machine to: rebalance the second subset of the plurality of tasks and the second subset of the plurality of interrupt service routines among the plurality of processor cores in response to a performance metric meeting a threshold. 17. The non-transitory machine-readable medium of claim 15 , wherein the instructions when executed further cause the at least one machine to: prevent processing of the second subset of the plurality of tasks by the first processor core while the second subset of the plurality of tasks is migrated to at least one of the plurality of processor cores. 18. The non-transitory machine-readable medium of claim 15 , wherein the instructions when executed further cause the at least one machine to: disable processing of the second subset of the plurality of interrupt service routines by the first processor core while the second subset of the plurality of interrupt service routines is migrated to at least one of the plurality of processor cores. 19. The non-transitory machine-readable medium of claim 15 , wherein the instructions when executed further cause the

Assignees

Inventors

Classifications

  • G06F15/16Primary

    Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs {(coordinating program control therefor G06F9/52; in regulating and control system G05B)} · CPC title

  • Techniques for rebalancing the load in a distributed system · CPC title

  • Application · CPC title

  • Partitioning or combining of resources · CPC title

  • G06F9/4856Primary

    resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence) · 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 US11182202B2 cover?
Methods, non-transitory machine-readable media, and computing devices for transitioning tasks and interrupt service routines are provided. An example method includes processing, by a plurality of processor cores of a storage controller, tasks and interrupt service routines. A performance statistic is determined corresponding to the plurality of processor cores. Based on detecting that the perfo…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F15/16. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 23 2021 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).