Sorting is one of the most usual and important operations carried out in a computer. The time required by the sequential sorting algorithms is an important problem when working with large sized sequences. As solution, we can consider parallelization and attaining a near optimal performance achieving a balance in the work to be done by processors. Notice that the work does not depend only on the amount of data but also on the sequence disordering, and on the relative computer power of processors.
This paper develops a technique of redistributing dynamically the data load from the prediction of work to be carried out by each processor, balancing the load among the different processes. The method is proved to reach the theoretical optimum for the parallel algorithm performance.