主权项 |
1. A method of controlling processing flow in a network processor having one or more processing modules, the method comprising:
loading, by a given one of the processing modules, a script into a compute engine of the network processor, the script comprising one or more instructions for execution by the compute engine; loading, by the given one of the processing modules, information into a register file of the compute engine, the information including one or more operands for the one or more instructions of the script; initializing a tracking vector of the compute engine to a default value, wherein the tracking vector comprises a data structure that includes N indicators, wherein each indicator corresponds to one of N portions of the register file which are tracked by the compute engine, wherein the tracking vector is stored in a memory location that is independent and separately addressable from memory locations in which said information is stored in the register file; executing, by the compute engine, the one or more instructions of the script, wherein the one or more instructions operate on the one or more operands in the register file; modifying, by the compute engine, one or more portions of the register file with updated data responsive to the executed script; tracking, by the compute engine, modified portions of the register file, wherein tracking comprises the compute engine setting a value of one or more of the N indicators of the tracking vector to indicate which of the one or more portions of the register file have been modified with updated data; providing, by the compute engine, the tracking vector without the updated register file to the given one of the processing modules; determining, by the given one of the processing modules, further processing responsive to the tracking vector; and moving modified data between the compute engine and an external memory via at least one sub-cache in a system cache of a shared memory. |