IP Library Granted Patent US 9,939,882
Granted Patent B2
US 9,939,882 · App. 13/954,977 · Granted Apr 10, 2018

Systems and methods for migrating processes among asymmetrical processing cores

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,939,882
App. No.
13/954,977
Granted
Apr 10, 2018
Kind
B2
Abstract

Techniques to control power and processing among a plurality of asymmetric processing elements are disclosed. In one embodiment, one or more asymmetric processing elements are power managed to migrate processes or threads among a plurality of processing elements according to the performance and power needs of the system.

Claims (12)

1. A processing system comprising:

a first and second processing cores, and a third low-power processing core, the third low-power processing core having a reduced instruction set architecture (ISA) relative to the instruction set architectures of the first and second processing cores, wherein the first and second processing cores are able to operate at a higher performance level than the third low-power processing core and wherein the first and second processing cores are able to operate at a higher power consumption level than the third low-power processing core, wherein high performance tasks are to be performed by the first and second processing cores and tasks requiring lower performance relative to the high performance tasks are able to be performed by the third low-power processing core; and

hardware coupled to the first, second and third processing cores to monitor an activity level of the first and second processing cores to see if it drops below a first threshold level and the third low-power processing core to see if it rises above a second threshold level and to migrate tasks among the three processing cores, in response to monitoring the activity level, to optimize performance and power of the processing system;

wherein instructions migrating from the second processing core to the third processing core are translated from the ISA of the second processing core to the ISA of the third processing core by a software binary translation shell, wherein each of the second processing core and the third processing core is to execute instructions in its own ISA;

wherein the second processing core has an x86 ISA, such that a program using x86 instructions needs to be translated into instructions of a different ISA corresponding to the third processing core;

wherein the x86 instructions are to be translated into instructions of the different ISA corresponding to the third processing core by a software binary translation shell; and

wherein the first processing core and the second processing core are to execute instructions concurrently.

2. The processing system of claim 1 , wherein the first and second processing cores have a complex instruction set architecture (CISC) and the third low-power processing core has a reduced instruction set architecture (RISC).

3. The processing system of claim 2 , wherein the first and second processing cores have a complex instruction set architecture (CISC) and the third low-power processing core has a microprocessor without Interlocked pipeline stages architecture (MIPS).

4. The processing system of claim 1 , wherein the instruction set architecture of the third low-power processing core has at least one instruction in common with the instruction set architectures of the first and second processing cores.

5. The processing system of claim 1 , wherein the hardware is further to translate at least one instruction associated with at least one task into an instruction set architecture of a processing core to which the task is to migrate.

6. The processing system of claim 1 , wherein the hardware further comprises an intelligent thread scheduler to execute on the at least one of the plurality of processing cores, the intelligent thread scheduler, when executed, to be aware of performance capabilities of each of the plurality of processing cores and to select an appropriate one of the plurality of processing cores to which to schedule execution of at least one task, wherein the appropriate selection is to optimize performance and power.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2022
From: INTEL CORPORATION
To: TAHOE RESEARCH, LTD.
Reel/Frame 061175/0176 →