Patent ID: 8423749

Claim:
A computer-implemented method of controlling an algorithm that is performed on a unit of work in a subsequent software pipeline stage in a Network On a Chip (NOC), wherein the unit of work comprises an execution of a first operation in a first node in the NOC and an execution of a second operation in a second node in the NOC, the computer-implemented method comprising: executing the first operation in the first node of the NOC, wherein the NOC comprises multiple nodes, and wherein a particular operation is executable on any node in the NOC; generating a message that includes a payload and a pointer, wherein the message is an output of the first node, wherein the payload is an output of the first operation in the first node, wherein the payload will subsequently be operated upon by the second operation in the second node in the NOC, wherein the pointer points to a location of an algorithm that will be needed by the second operation in the second node, and wherein the algorithm is located by utilizing a trampoline that includes the pointer to the location of the algorithm; transmitting the message to a nanokernel that controls the second node in the NOC, wherein said nanokernel is software logic that manages software threads within the NOC by coordinating actions performed by nodes within the NOC, wherein the nanokernel processes the message to extract the payload and to identify the pointer needed to access the algorithm that is needed by the second operation in the second node in the NOC; and using the algorithm to execute the second operation in the second node.