1. A method of partitioning items in a data stream, the method comprising: receiving a data stream having a plurality of items; partitioning the data stream into a plurality of data chunks including at least one item, wherein each data chunk includes a data chunk size indicating a number of items in the data chunk; assigning the plurality of data chunks having the same data chunk size to a plurality of concurrent threads for processing on a multiple node processing system; and increasing the data chunk size according to a sequence having at least one repeated power of two with occasional doubling up to a selected maximum data chunk size; wherein the partitioning, assigning, and increasing are repeated until the plurality of items are consumed.