Patent ID: 8059125

Claim:
A method for automated specification of a parallel computation graph with one or more programmed or programmable computer systems including at least one processor, at least one data storage system, at least one input device or port, and at least one output device or port, the method including: receiving at least some work elements over the input device or port and providing at least some work elements over the output device or port; accepting a specification of a computation graph stored in the data storage system in which data processing elements are joined by linking elements, each of the linking elements being associated with a data flow from an associated upstream one of the data processing elements to an associated downstream one of the data processing elements; and for each of one or more of the linking elements of the computation graph, determining by the at least one processor data processing characteristics of the linking element according to: characteristics of the upstream data processing element associated with the linking element, or input requirements of the downstream data processing element associated with the linking element, or characteristics of the upstream data processing element and input requirements of the downstream data processing element associated with the linking element; and determining by the at least one processor data processing characteristics of the downstream data processing element based on data processing characteristics of the upstream data processing element and the determined data processing characteristics of the linking element; wherein metadata stored in the data storage system representing the characteristics of at least some of the upstream and/or downstream data processing elements includes a data characteristic for work elements provided on an output port by an upstream data processing element and/or for work elements received on an input port by a downstream data processing element.