3. The method of claim 1 , wherein one producer group of statements is processed sequentially by the producer thread, wherein the producer thread processes the inserted directives and in response adds the group of statements associated with the processed directive to a task queue, wherein the one or more consumer threads process the at least one additional consumer group of statements added to the task queue.
3. The method of claim 1 , wherein one producer group of statements is processed sequentially by the producer thread, wherein the producer thread processes the inserted directives and in response adds the group of statements associated with the processed directive to a task queue, wherein the one or more consumer threads process the at least one additional consumer group of statements added to the task queue. 4. The method of claim 3 , wherein determining the dependency of the statements comprises: determining data and control dependency of the statements, wherein statements in the producer group do not depend on statements in any consumer group, and statements in one determined consumer group do not have data or control dependences with respect to other consumer groups.