Providing additional memory and cache for the execution of critical tasks by folding processing units of a processor complex
First Claim
Patent Images
1. A method, comprising:
- maintaining a plurality of processing entities of a processor complex, wherein each processing entity has a local cache and the processor complex has a shared cache and a shared memory;
allocating one of the plurality of processing entities for execution of a critical task;
in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended;
utilizing, by the critical task, the local cache of the other processing entities that are folded, the shared memory, additional resources that are freed by folding the other processing entities, and the shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task;
in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and
in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks.
1 Assignment
0 Petitions
Accused Products
Abstract
A plurality of processing entities of a processor complex is maintained, wherein each processing entity has a local cache and the processor complex has a shared cache and a shared memory. One of the plurality of processing entities is allocated for execution of a critical task. In response to the allocating of one of the plurality of processing entities for the execution of the critical task, other processing entities of the plurality of processing entities are folded. The critical task utilizes the local cache of the other processing entities that are folded, the shared memory, and the shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task.
-
Citations
20 Claims
-
1. A method, comprising:
-
maintaining a plurality of processing entities of a processor complex, wherein each processing entity has a local cache and the processor complex has a shared cache and a shared memory; allocating one of the plurality of processing entities for execution of a critical task; in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended; utilizing, by the critical task, the local cache of the other processing entities that are folded, the shared memory, additional resources that are freed by folding the other processing entities, and the shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task; in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks. - View Dependent Claims (2, 3, 4)
-
-
5. A system, comprising:
-
a processor; a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the processor to cause the processor to perform operations, the operations comprising; maintaining a plurality of processing entities, wherein each processing entity has a local cache; allocating one of the plurality of processing entities for execution of a critical task; in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended; utilizing, by the critical task, the local cache of the other processing entities that are folded, a shared memory, additional resources that are freed by folding the other processing entities, and a shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task; in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks. - View Dependent Claims (6, 7, 8)
-
-
9. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable to perform operations, the operations comprising:
-
maintaining a plurality of processing entities of a processor complex, wherein each processing entity has a local cache and the processor complex has a shared cache and a shared memory; allocating one of the plurality of processing entities for execution of a critical task; in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended; utilizing, by the critical task, the local cache of the other processing entities that are folded, a shared memory, additional resources that are freed by folding the other processing entities, and the shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task; in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks. - 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, wherein each processing entity has a local cache; allocating one of the plurality of processing entities for execution of a critical task; in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended; utilizing, by the critical task, the local cache of the other processing entities that are folded, a shared memory, additional resources that are freed by folding the other processing entities, and a shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task; in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks. - View Dependent Claims (14, 15, 16)
-
-
17. A server computational device of a dual-server storage system, the server computational device comprising:
-
a processor; and a computer readable storage medium having program instructions embodied therewith, the program instructions executable by the processor to cause the processor to perform operations, the operations comprising; maintaining a plurality of processing entities, wherein each processing entity has a local cache; allocating one of the plurality of processing entities for execution of a critical task; in response to the allocating of one of the plurality of processing entities for the execution of the critical task, folding other processing entities of the plurality of processing entities by stopping processing operations in the other processing entities and releasing the local cache of the other processing entities for use by the processing entity allocated for execution of the critical task, wherein prior to folding the other processing entities, currently scheduled tasks on the other processing entities are temporarily suspended; utilizing, by the critical task, the local cache of the other processing entities that are folded, a shared memory, additional resources that are freed by folding the other processing entities, and a shared cache, in addition to the local cache of the processing entity allocated for the execution of the critical task; in response to completion of the critical task in the processing entity that is allocated, performing an unfolding of the other processing entities to make the other processing entities operational; and in response to performing the unfolding of the other processing entities, resuming any suspended tasks and dispatch queued tasks. - View Dependent Claims (18, 19, 20)
-
Specification