IP Library Granted Patent US 8,560,876
Granted Patent B2
US 8,560,876 · App. 12/831,086 · Granted Oct 15, 2013

Clock acceleration of CPU core based on scanned result of task for parallel execution controlling key word

Inventors: Volker Driesen (Walldorf, DE); Peter Eberlein (Malsch, DE)
Assignee: SAP AG
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 8,560,876
App. No.
12/831,086
Granted
Oct 15, 2013
Kind
B2
Abstract

In a computing system having a multi-core central processing unit (CPU) having at least two cores, it is determined that a task to be scheduled meets clock acceleration criteria such as requiring a number of threads less than or equal to a pre-defined threshold and/or having tasks that will run above a pre-determined amount of time. Thereafter, a clock speed of a first core of the CPU is increased and a clock speed of a second core of the CPU is decreased. Once the clock speeds have been adjusted, the task is scheduled to be executed by the first core. Related apparatus, systems, techniques and articles are also described.

Claims (35)

1. A method for implementation on a computing system having a multi-core central processing unit (CPU) having at least two cores, the method comprising:

determining, by a software implemented task scheduler executing at an application layer, that a task to be scheduled meets clock acceleration criteria, each task comprising at least one thread;

calling, by the software implemented task scheduler, an interface of an operating system of the computing system to increase a clock speed of a first core of the CPU and to decrease a clock speed of a second core of the CPU; and

scheduling the task to be executed by the first core;

wherein:

the task is encoded with at least one key word, and

the determining that the task meets the clock acceleration criteria comprises scanning the task to identify key words that control parallel execution.

2. A method as in claim 1 , wherein the clock acceleration criteria requires that the task have a number of threads less than or equal to a pre-defined threshold.

3. A method as in claim 2 , wherein the pre-defined threshold is one thread.

4. A method as in claim 1 , further comprising:

identifying an attribute associated with the task which indicates that it will run above a pre-defined amount of time;

wherein the clock acceleration criteria requires that at least one thread of the task will run longer than the pre-defined amount of time.

5. A method as in claim 1 , wherein the second core of the CPU is stopped so that the clock speed of the second core of the CPU is zero or substantially zero.

6. A method as in claim 1 , further comprising:

initiating execution of the task by the first core.

7. A method as in claim 1 , wherein the CPU dynamically assigns the first core and the second core based on processing states of such cores.

8. An article of manufacture comprising:

computer executable instructions stored on non-transitory computer readable media, which, when executed by a computer, causes the computer to perform operations comprising:

determining, by a software implemented task scheduler executing at an application layer, that a task to be scheduled meets clock acceleration criteria, each task comprising at least one thread;

calling, by the software implemented task scheduler, an interface of an operating system of the computing system to increase a clock speed of a first core of the CPU and to decrease a clock speed of a second core of the CPU; and

scheduling the task to be executed by the first core;

wherein:

the task is encoded with at least one key word, and

the determining that the task meets the clock acceleration criteria comprises scanning the task to identify key words that control parallel execution.

9. An article as in claim 8 , wherein the clock acceleration criteria requires that the task have a number of threads less than or equal to a pre-defined threshold.

10. An article as in claim 9 , wherein the pre-defined threshold is one thread.

11. An article as in claim 8 , further comprising:

identifying an attribute associated with the task which indicates that it will run above a pre-defined amount of time;

wherein the clock acceleration criteria requires that at least one thread of the task will run longer than the pre-defined amount of time.

12. An article as in claim 8 , wherein the second core of the CPU is stopped so that the clock speed of the second core of the CPU is zero or substantially zero.

13. An article as in claim 8 , wherein the CPU dynamically assigns the first core and the second core based on processing states of such cores.

14. A method for implementation on a computing system having a multi-core central processing unit (CPU) having at least two cores, the method comprising:

scanning, by a software implemented task scheduler executing at an application layer, a code of a coded task to identify at least one key word to control parallel execution, each task comprising at least one thread;

calling, by the software implemented task scheduler and based on the at least one identified key word, an interface of an operating system of the computing system to increase a clock speed of a first core of the CPU and to decrease a clock speed of a second core of the CPU; and

scheduling the task to be executed by the first core.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2010
From: DRIESEN, VOLKER; EBERLEIN, PETER
To: SAP AG
Reel/Frame 024666/0835 →
Continuity (1)
Related Publication 20120011389A1 · Jan 12, 2012