Providing exclusive use of cache associated with a processing entity of a processor complex to a selected task
First Claim
1. A method, comprising:
- maintaining a plurality of processing entities in a processor complex;
in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks;
in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks;
moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity;
in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and
in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache.
1 Assignment
0 Petitions
Accused Products
Abstract
A plurality of processing entities are maintained in a processor complex. In response to determining that a task is a critical task, the critical task is dispatched to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks. In response to dispatching the critical task to the scheduler, the scheduler determines which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks. Tasks queued on the determined processing entity are moved to other processing entities, and the currently scheduled tasks on the determined processing entity are completed. In response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, the critical task is dispatched on the determined processing entity.
36 Citations
20 Claims
-
1. A method, comprising:
-
maintaining a plurality of processing entities in a processor complex; in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks; in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks; moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity; in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; maintaining a plurality of processing entities in a processor complex; in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks; in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks; moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity; in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache. - View Dependent Claims (6, 7, 8)
-
-
9. A computer program product, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations, the operations comprising:
-
maintaining a plurality of processing entities in a processor complex; in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks; in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks; moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity; in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache. - View Dependent Claims (10, 11, 12)
-
-
13. A storage system, comprising:
-
a first server; and a second server coupled to the first server, wherein the storage system is configurable to perform operations, the operations comprising; maintaining a plurality of processing entities; in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks; in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks; moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity; in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache. - View Dependent Claims (14, 15, 16)
-
-
17. A server computational device of a dual-server storage system, the server computational device comprising:
-
memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; maintaining a plurality of processing entities; in response to determining that a task is a critical task, dispatching the critical task to a scheduler, wherein it is preferable to prioritize execution of critical tasks over non-critical tasks; in response to dispatching the critical task to the scheduler, determining, by the scheduler, which processing entity of the plurality of processing entities has a least amount of processing remaining to be performed for currently scheduled tasks; moving tasks queued on the determined processing entity to other processing entities, and completing the currently scheduled tasks on the determined processing entity; in response to moving tasks queued on the determined processing entity to other processing entities and completing the currently scheduled tasks on the determined processing entity, dispatching the critical task on the determined processing entity, wherein the plurality of processing entities comprise a plurality of cores, and wherein the determined processing entity corresponds to a determined core that has a clean L1 cache and a clean L2 cache at a time at which the critical task is scheduled for execution in the determined core and no other tasks besides the critical task are running on the determined core at the time; and in response to the critical task being scheduled on the determined core, the critical task secures exclusive access to the L1 cache and L2 cache of the determined core, wherein if data is not found in the L1 cache of the determined core then the data is retrieved from the L2 cache of the determined core, and wherein each core of the plurality of cores have different sets of L1 cache and L2 cache but share a L3 cache. - View Dependent Claims (18, 19, 20)
-
Specification