×

Processing system including a plurality of cores and method of operating the same

  • US 10,255,118 B2
  • Filed: 10/24/2013
  • Issued: 04/09/2019
  • Est. Priority Date: 01/07/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method of in a heterogeneous multi-core processing system having a plurality of first-type cores and a plurality of second-type cores, wherein the first-type cores have a first maximum speed or a first size and the second-type cores have a second maximum speed faster than the first maximum speed or a second size greater than the first size, the method comprising:

  • maintaining history of usage information in a first history log for each core of the plurality of first-type cores and in a second history log for each core of the plurality of second-type cores,wherein the history of usage information for each core includes one or more of;

    a selection count number indicating a number of times the core has been selected;

    a usage time indicating an amount of past usage time of the core;

    an instruction count number indicating a number of instructions executed by the core; and

    a core load count number indicating a historical load amount processed by the core, andwherein the first history logs and second history logs are part of a controller;

    receiving by the controller an external request, wherein the external request is to exclude from target candidate cores at least one core from among unoccupied cores;

    receiving a request to perform a task;

    excluding as a target candidate core the at least one core based on the external request, the at least one core being an unoccupied core from among the plurality of first-type cores and the plurality of second-type cores;

    selecting a first core from among the plurality of second-type cores to perform the task, wherein the selecting depends at least in part on the history of usage information in the second history log and the selected core not being the at least one core excluded as the target candidate core, and includes determining whether the first core from among the plurality of second-type cores has a small enough load such that it has sufficient resources available to perform the task;

    performing a plurality of tasks on the first core of the plurality of second-type cores; and

    determining that a second core, other than the at least one unoccupied core, of the plurality of first-type cores has a small enough load such that it has sufficient resources to process all of the plurality of tasks being performed on the first core of the plurality of second-type cores; and

    as a result of the determination, moving all of the plurality of tasks being performed on the first core of the plurality of second-type cores to the second core of the plurality of first-type cores, thereby assigning resources of the second core of the plurality of first-type cores to all of the moved tasks;

    updating the history of usage information of the second core in the first history log; and

    performing the plurality of tasks on the second core of the plurality of first-type cores of the heterogeneous multi-core processing system.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×