Optimizing workflow engines
AssigneeInternational Business Machines Corporation
InventorsDhrubajyoti Saha, Smruti R. Sarangi
Life of this patent
Estimating the term…
Abstract
A system and computer program product for implementing a workflow include merging a workflow to create a virtual graph, wherein the workflow comprises two or more directed acyclic graphs (DAGs), mapping each of one or more nodes of the virtual graph to one or more physical nodes, and using a message passing scheme to implement a computation via the one or more physical nodes.
Claims16
A computer program product comprising a tangible computer readable recordable storage memory including computer useable program code for implementing a workflow, the computer program product including:
- computer useable program code for merging a workflow to create a virtual graph, wherein the workflow comprises two or more directed acyclic graphs (DAGs), wherein said merging comprises:
- applying a label to each node of the two or more directed acyclic graphs, wherein nodes representing a same computation in each directed acyclic graph have a same label applied thereto;
- assigning each node in the two or more directed acyclic graphs with a unique label to a unique node in the virtual graph;
- and
- assigning each node in the two or more directed acyclic graphs that shares the same label with one or more additional nodes are assigned to a same node in the virtual graph;
- computer useable program code for mapping each of one or more nodes of the virtual graph to one or more physical nodes;
- and
- computer useable program code for using a message passing scheme to implement a computation via the one or more physical nodes.
A system for implementing a workflow, comprising:
- a memory;
- and
- at least one processor coupled to the memory and operative to:
- merge a workflow to create a virtual graph, wherein the workflow comprises two or more directed acyclic graphs (DAGs), wherein said merging comprises:
- applying a label to each node of the two or more directed acyclic graphs, wherein nodes representing a same computation in each directed acyclic graph have a same label applied thereto;
- assigning each node in the two or more directed acyclic graphs with a unique label to a unique node in the virtual graph;
- and
- assigning each node in the two or more directed acyclic graphs that shares the same label with one or more additional nodes are assigned to a same node in the virtual graph;
- map each of one or more nodes of the virtual graph to one or more physical nodes;
- and
- use a message passing scheme to implement a computation via the one or more physical nodes.
Dependencies are inferred from the claim text.