1. A method for multi-scalar data processing that manages multiple tasks in at least one job thread, comprising: grouping a set of related tasks in a group; defining data and control flows between the related tasks in the group; waiting for a successful implementation of at least one successor task, based on the data and control flows, prior to implementing a successor task in the group; defining exit conditions for the group; and selectively controlling the tasks to be included in a group completion decision based on the exit conditions.