1. A method for sorting data in an array processor, said method comprising: each of a first tier of processing elements receiving data inputs from a load streaming unit of the array processor; each of the first tier processing elements, comparing input data portions received from the load streaming unit, wherein the input data portions are stored for processing in respective queues; selecting one of the input data portions to be an output data portion based on the comparison; in response to selecting the input data portion, removing a queue entry corresponding to the selected input data portion; and requesting a next input data portion from the load streaming unit; and providing the output data portion as an input data portion to a second tier processing element, wherein the second tier processing element generates output data based on a comparison of output data portions received from at least two first tier processing elements.