APPLICATION COMPATIBILITY IN MULTI-CORE SYSTEMS
First Claim
Patent Images
1. A method to be executed at least in part in a computing device for managing application compatibility in a multi-core processor system, the method comprising:
- receiving a thread from an application for processing by the processor system;
determining a type of the application; and
if the application is a multi-core compatible application, placing the thread in one of a global run queue and a per-processor queue based on a designation by the application and an affinity status of the thread.
2 Assignments
0 Petitions
Accused Products
Abstract
Scheduling of threads in a multi-core system running various legacy applications along with multi-core compatible applications is configured such that threads from older single thread applications are assigned fixed affinity. Threads from multi-thread/single core applications are scheduled such that one thread at a time is made available to the cores based on the thread priority preventing conflicts and increasing resource efficiency. Threads from multi-core compatible applications are handled regularly.
60 Citations
20 Claims
-
1. A method to be executed at least in part in a computing device for managing application compatibility in a multi-core processor system, the method comprising:
-
receiving a thread from an application for processing by the processor system; determining a type of the application; and if the application is a multi-core compatible application, placing the thread in one of a global run queue and a per-processor queue based on a designation by the application and an affinity status of the thread. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for managing application compatibility in a multi-core processor environment, the system comprising:
-
a memory; a processor coupled to the memory, comprising a plurality of distinct processing cores, the processor configured to; receive a thread from an application for processing; determine a type of the application; if the application is a multi-core compatible application; place the thread in one of a global run queue and a per-processor queue based on a designation by the application and an affinity status of the thread; and if the application is a legacy application; place a stub in the global run queue; and schedule the highest priority thread from the legacy application to be processed through the stub. - View Dependent Claims (14, 15, 16)
-
- 11. The system of claim 11, wherein the processor is further configured to schedule a next highest priority thread from the legacy application to be processed through the stub upon completion of processing of the previous thread.
-
17. A computer-readable storage medium with instructions encoded thereon for managing application compatibility in a multi-core processor system, the instructions comprising:
-
receiving a thread from an application for processing by the processor system; determining a type of the application; if the application is a fixed affinity thread application; placing the thread in a per-processor queue based on the assigned fixed affinity; if the application is a legacy application; determining an affinity status of the received thread; placing a stub in one of the global run queue and a per-processor queue based on the affinity status; scheduling threads from the legacy application one at a time through the stub; and if the application is a multi-core compatible application; placing the thread in one of a global run queue and a per-processor queue based on a designation by the application and an affinity status of the thread. - View Dependent Claims (18, 19, 20)
-
Specification