MIGRATING TASKS BETWEEN ASYMMETRIC COMPUTING ELEMENTS OF A MULTI-CORE PROCESSOR
First Claim
Patent Images
1. A multicore processor comprising:
- a first core to independently execute instructions;
a second core to independently execute instructions, the first core visible to an operating system (OS) and the second core transparent to the OS and heterogeneous from the first core; and
a task controller coupled to the first and second cores to dynamically migrate a first process scheduled by the OS to the first core to the second core, where the dynamic migration is transparent to the OS.
2 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, the present invention includes a multicore processor having first and second cores to independently execute instructions, the first core visible to an operating system (OS) and the second core transparent to the OS and heterogeneous from the first core. A task controller, which may be included in or coupled to the multicore processor, can cause dynamic migration of a first process scheduled by the OS to the first core to the second core transparently to the OS. Other embodiments are described and claimed.
78 Citations
33 Claims
-
1. A multicore processor comprising:
-
a first core to independently execute instructions; a second core to independently execute instructions, the first core visible to an operating system (OS) and the second core transparent to the OS and heterogeneous from the first core; and a task controller coupled to the first and second cores to dynamically migrate a first process scheduled by the OS to the first core to the second core, where the dynamic migration is transparent to the OS. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 12)
-
-
11. (canceled)
-
13. (canceled)
-
14. (canceled)
-
15. (canceled)
-
16. A method comprising:
-
receiving a performance state update from an operating system (OS) in a controller of a multicore processor including a first plurality of cores and a second plurality of cores, the first plurality of cores visible to the OS and the second plurality of cores transparent to the OS and heterogeneous from the first plurality of cores, wherein the performance state update requests at least one of the first plurality of cores to operate at a requested performance state; determining whether the requested performance state exceeds a guaranteed performance state and a threshold performance state; and if so, migrating, transparently to the OS, at least one thread from at least one of the second plurality of cores to at least one of the first plurality of cores, wherein the OS allocated the at least one thread to one of the first plurality of cores. - View Dependent Claims (17, 18, 19)
-
-
20. (canceled)
-
21. (canceled)
-
22. A system comprising:
a multicore processor including a first plurality of cores and a second plurality of cores executing in a plurality of performance domains, the second plurality of cores heterogeneous to the first plurality of cores and transparent to an operating system (OS), and a power controller, wherein the power controller is to receive a performance state update from the OS for a first performance domain of the plurality of performance domains and performance monitor information from the first and second plurality of cores and to cause a context switch to dynamically migrate a process from execution on a second core of the second plurality of cores to a first core of the first plurality of cores transparently to the OS, based on the performance state update and the performance monitor information; and a dynamic random access memory (DRAM) coupled to the multicore processor. - View Dependent Claims (23, 24, 25, 33)
-
26. (canceled)
-
27. (canceled)
-
28. (canceled)
-
29. (canceled)
-
30. (canceled)
-
31. (canceled)
-
32. (canceled)
Specification