1. A method, in a data processing system, for a runtime dependence-aware scheduling of dependent iterations, the method comprising: receiving computer executable code that contains a plurality of iterations; performing computation for one or more iterations of the computer executable code by a main thread; determining dependence information for a plurality of memory accesses within the computer executable code using modified executable code, wherein determining the dependence information is performed using a set of dependence threads in the data processing system; using the dependence information, determining if a subset of a set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time by the one or more available threads in the data processing system; responsive to a determination that the subset of the set of uncompleted iterations in the plurality of iterations is capable of being executed ahead-of-time, signaling the main thread to skip the subset of the set of uncompleted iterations; and signaling the set of assist threads in the data processing system to execute the subset of the set of uncompleted iterations.