DYNAMIC CORE SELECTION FOR HETEROGENEOUS MULTI-CORE SYSTEMS
First Claim
1. An apparatus for multi-core processing, the apparatus comprising:
- a memory controller;
a first processor core of a first type to execute program code;
a second processor core of a second type different from the first type; and
a code distribution module to (i) determine one or more performance metrics of the first processor core and the second processor core and (ii) switch execution of the program code from the first processor core to the second processor core in response to a determination that the one or more performance metrics of the second processor core are better than the one or more performance metrics of the first processor core.
1 Assignment
0 Petitions
Accused Products
Abstract
Dynamically switching cores on a heterogeneous multi-core processing system may be performed by executing program code on a first processing core. Power up of a second processing core may be signaled. A first performance metric of the first processing core executing the program code may be collected. When the first performance metric is better than a previously determined core performance metric, power down of the second processing core may be signaled and execution of the program code may be continued on the first processing core. When the first performance metric is not better than the previously determined core performance metric, execution of the program code may be switched from the first processing core to the second processing core.
2 Citations
19 Claims
-
1. An apparatus for multi-core processing, the apparatus comprising:
-
a memory controller; a first processor core of a first type to execute program code; a second processor core of a second type different from the first type; and a code distribution module to (i) determine one or more performance metrics of the first processor core and the second processor core and (ii) switch execution of the program code from the first processor core to the second processor core in response to a determination that the one or more performance metrics of the second processor core are better than the one or more performance metrics of the first processor core. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for processing by a multi-core processing system, the method comprising:
-
executing program code on a first processor core of the multi-core processing system; determining one or more performance metrics of the first processor core and a second processor core of the multi-core processing system, wherein the first processor core is of a first type and the second processor core is of a second type different from the first type; and switching execution of the program code from the first processor core to the second processor core in response to determining that the one or more performance metrics of the second processor core are better than the one or more performance metrics of the first processor core. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. One or more machine-readable storage media comprising a plurality of instructions stored thereon that, in response to execution by one or more processors of a multi-core processing system, causes the one or more processors to:
-
execute program code on a first processor core of the multi-core processing system; determine one or more performance metrics of the first processor core and a second processor core of the multi-core processing system, wherein the first processor core is of a first type and the second processor core is of a second type different from the first type; and switch execution of the program code from the first processor core to the second processor core in response to a determination that the one or more performance metrics of the second processor core are better than the one or more performance metrics of the first processor core. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification