Efficient dataflow processing for objects
AssigneeInternational Business Machines Corporation
InventorsRonald J. Barber, Rene Mueller, Vijayshankar Raman, Richard S. Sidle, Pinar Tozun
Life of this patent
Estimating the term…
Abstract
One embodiment provides a method comprising adjusting a runtime of a dataflow processing environment to operate on multiple batches of objects. The method further comprises pre-allocating one or more vectors of objects, and processing the multiple batches one at a time. The one or more vectors of objects are re-used during processing of each batch.
Claims20
A method comprising:
- changing a runtime of a distributed parallel batch-based dataflow processing environment to operate on multiple batches of object-oriented application objects, wherein the changed runtime provides that each processing thread uses its own vector of object-oriented application objects to process its own batches of object-oriented application objects, and each object is an instance of a class that is nested containing other classes;
- pre-allocating one or more vectors of object-oriented application objects for nested classes a single time, wherein the one or more vectors are extendible;
- assigning the one or more vectors of object-oriented application objects to a processing thread that processes an object-oriented application;
- and
- processing the multiple batches one at a time by the processing thread, wherein the one or more vectors of object-oriented application objects are re-used multiple times during processing of each new batch of object-oriented application objects by the processing thread;
- wherein a string is implemented as a complex object, the string is nested in an object using a serialized format in which all strings of a batch are concatenated together into a growable array, and the processing thread completes processing each batch before a next batch enters a pipeline of the processing thread.
A system comprising:
- at least one processor;
- and
- a non-transitory processor-readable memory device storing instructions that when executed by the at least one processor causes the at least one processor to perform operations including:
- changing a runtime of a distributed parallel batch-based dataflow processing environment to operate on multiple batches of object-oriented application objects, wherein the changed runtime provides that each processing thread uses its own vector of object-oriented application objects to process its own batches of object-oriented application objects, and each object is an instance of a class that is nested containing other classes;
- pre-allocating one or more vectors of object-oriented application objects for nested classes a single time;
- assigning the one or more vectors of object-oriented application objects to a processing thread that processes an object-oriented application;
- and
- processing the multiple batches one at a time by the processing thread, wherein the one or more vectors of object-oriented application objects are re-used multiple times during processing of each new batch of object-oriented application objects by the processing thread;
- wherein a string is implemented as a complex object, the string is nested in an object using a serialized format in which all strings of a batch are concatenated together into a growable array, and the processing thread completes processing each batch before a next batch enters a pipeline of the processing thread.
A computer program product comprising a computer-readable hardware storage medium having program code embodied therewith, the program code being executable by a computer to implement a method comprising:
- changing a runtime of a distributed parallel batch-based dataflow processing environment to operate on multiple batches of object-oriented application objects, wherein the changed runtime provides that each processing thread uses its own vector of object-oriented application objects to process its own batches of object-oriented application objects, and each object is an instance of a class that is nested containing other classes;
- pre-allocating one or more vectors of object-oriented application objects for nested classes a single time;
- assigning the one or more vectors of object-oriented application objects to a processing thread that processes an object-oriented application;
- and
- processing the multiple batches one at a time by the processing thread, wherein the one or more vectors of object-oriented application objects are re-used multiple times during processing of each new batch of object-oriented application objects by the processing thread;
- wherein a string is implemented as a complex object, the string is nested in an object using a serialized format in which all strings of a batch are concatenated together into a growable array, and the processing thread completes processing each batch before a next batch enters a pipeline of the processing thread.
Dependencies are inferred from the claim text.