Patent ID: 8201171

Claim:
A method for fusing data parallel operations comprising the steps of: creating a complex data parallel operation comprising a plurality of individual data parallel operations, wherein each data parallel operation contains one or more data parallel operators; and performing a fusion plan process on the complex data parallel operation and input data to the complex data parallel operation dynamically at runtime of execution of the complex data parallel operation, the fusion plan process including analyzing an internal structure of the complex data parallel operation including identifying one or more pairs of a partition operator and a corresponding merge operator of the complex data parallel operation that are adjacent to one another, the partition operator partitions the input data and the merge operator merges results of a data parallel operator of the partitioned input data and removing a pair of the identified adjacent partition and merge operators determined to be unnecessary, due to a reusable nature of an existing partitioning, at runtime, wherein the fusion plan process rearranges the internal structure of the complex data parallel operation, and, optimizations are performed to ensure that repartitioning operations including unnecessary partition operators and merge operators are not incurred when rearranging the complex data parallel operation.