| CPC G06F 9/3889 (2013.01) [G06F 9/5072 (2013.01)] | 20 Claims |

|
1. A system for executing a plurality of concurrent threads, comprising:
a plurality of context storages, each configured to store a plurality of thread contexts, each thread context for one of a plurality of concurrent threads, each concurrent thread comprising a plurality of operations, each of the plurality of context storages associated with at least one operation of the plurality of operations; and
at least one processing circuitry configured to:
while a first thread and a second thread of the plurality of concurrent threads are executed simultaneously by the at least one processing circuitry:
store a first thread context of the first thread in a first context storage of the plurality of context storages, the first thread context identified in the first context storage by an identification value;
store a second thread context of the second thread in a second context storage of the plurality of context storages, the second thread context identified in the second context storage by the identification value; and
upon completing execution of at least one first operation of the first thread, the at least one first operation associated with the first context storage, when an outcome of applying an availability test to the identification value indicates that the identification value is available in the second context storage, store the first thread context in the second context storage, the first thread context identified in the second context storage by the identification value.
|