1. A computer-implemented method for resolving divergences between threads in a thread group executing on a parallel processing unit, the method comprising: identifying a subset of non-divergent threads included in the thread group; storing instructions related to the subset of non-divergent threads in a multi-issue queue; retrieving the instructions related to the subset of non-divergent threads from the multi-issue queue when the parallel processing unit is available; causing the subset of non-divergent threads to be issued for execution on the parallel processing unit; and repeating the identifying, storing, retrieving, and causing steps for the remaining threads in the thread group that are not included in the subset of non-divergent threads.