A computer-implemented method for use in performing a task having a plurality of subtasks by at least one processing engine, said method comprising: determining a first metric associated with at least one processor having at least one processing engine, the at least one processing engine having one or more threads, wherein the first metric is indicative of load balancing, core affinity, or other metric related to allocation/performance of one or more tasks within the one or more threads; assigning the task to one of the one or more threads; if the first metric indicates load balancing is below a first threshold, which is indicative of load balancing associated with the processor being insufficient to achieve a desired performance of the processor, determining, by the at least one processing engine, whether the task is a reentrant task previously assigned to any of said one or more threads associated with the at least one processing engine; if the task is a reentrant task, determining, by the at least one processing engine, whether a stopping criteria is satisfied, wherein the stopping criteria is determined to have been satisfied when one, some, a percentage, and/or all of the subtasks associated with the task have been completed; re-entering the task into a queue of tasks associated with the at least one processing engine if the stopping criteria is not satisfied and the task is a reentrant task, and then freeing said one of said one or more threads for processing of other tasks in the queue after re-entering the task into the queue of tasks; if the first metric indicates core affinity is below a second threshold, which is indicative of insufficient core affinity to achieve a desired performance of the processor, determining, by the at least one processing engine, whether the task is a main task, wherein a main task is a task having at least one subtask, but is not a subtask to another task; if the task is determined to be a main task the thread determines the task is complete, sets a state of the task as complete, and frees the thread to perform other tasks; if the task is not a main task, determining, by the at least one processing engine, whether a stopping criteria is satisfied; and if the stopping criteria is satisfied and the task is not a main task, pulling a parent task associated with the task into said one of the one or more threads for performing accumulation tasks associated with the parent task, wherein each accumulation task operates on the results of multiple completed subtasks. determining a first metric associated with at least one processor having at least one processing engine, the at least one processing engine having one or more threads, wherein the first metric is indicative of load balancing, core affinity, or other metric related to allocation/performance of one or more tasks within the one or more threads; assigning the task to one of the one or more threads; if the first metric indicates load balancing is below a first threshold, which is indicative of load balancing associated with the processor being insufficient to achieve a desired performance of the processor, determining, by the at least one processing engine, whether the task is a reentrant task previously assigned to any of said one or more threads associated with the at least one processing engine; if the task is a reentrant task, determining, by the at least one processing engine, whether a stopping criteria is satisfied, wherein the stopping criteria is determined to have been satisfied when one, some, a percentage, and/or all of the subtasks associated with the task have been completed; re-entering the task into a queue of tasks associated with the at least one processing engine if the stopping criteria is not satisfied and the task is a reentrant task, and then freeing said one of said one or more threads for processing of other tasks in the queue after re-entering the task into the queue of tasks; if the first metric indicates core affinity is below a second threshold, which is indicative of insufficient core affinity to achieve a desired performance of the processor, determining, by the at least one processing engine, whether the task is a main task, wherein a main task is a task having at least one subtask, but is not a subtask to another task; if the task is determined to be a main task the thread determines the task is complete, sets a state of the task as complete, and frees the thread to perform other tasks; if the task is not a main task, determining, by the at least one processing engine, whether a stopping criteria is satisfied; and if the stopping criteria is satisfied and the task is not a main task, pulling a parent task associated with the task into said one of the one or more threads for performing accumulation tasks associated with the parent task, wherein each accumulation task operates on the results of multiple completed subtasks.