A method for reducing execution divergence among a plurality of threads
executable within a parallel processing architecture includes an
operation of determining, among a plurality of data sets that function as
operands for a plurality of different execution commands, a preferred
execution type for the collective plurality of data sets. A data set is
assigned from a data set pool to a thread which is to be executed by the
parallel processing architecture, the assigned data set being of the
preferred execution type, whereby the parallel processing architecture is
operable to concurrently execute a plurality of threads, the plurality of
concurrently executable threads including the thread having the assigned
data set. An execution command for which the assigned data functions as
an operand is applied to each of the plurality of threads.