| CPC G06F 9/542 (2013.01) [G06F 9/3009 (2013.01)] | 6 Claims |

|
1. An apparatus comprising:
memory; and
a barrel multithreaded processor comprising:
asynchronous event handler circuitry to perform operations comprising:
receiving a sync message from a parent thread executing on the barrel multithreaded processor, the sync message including a thread identifier field and a number of return values to be generated by a child thread created by a thread create instruction;
determining whether sufficient space exists in the memory to store return values based on the number of return values;
initiating the thread create instruction, after determining whether sufficient space exists in the memory to store return values, the thread create instruction used to create the child thread that provides the return values;
allocating space in the memory to store the return values in response to determining that there is sufficient space in the memory to store the return values;
receiving a query from the parent thread, the query regarding whether the child thread has completed execution and provided the return values; and
transmitting the return values from the allocated space to the parent thread in response to determining that the child thread has completed execution and provided the return values.
|