Check out on code to handle parallel processing-
gv_semaphore = 0. DESCRIBE TABLE lt_itab LINES lv_lines. LOOP AT lt_itab INTO ls_itab. CALL FUNCTION 'ZABC' STARTING NEW TASK taskname DESTINATION IN GROUP srv_grp PERFORMING come_back ON END OF TASK EXPORTING ... EXCEPTIONS ... . " <<-- ENDLOOP. WAIT UNTIL gv_semaphore = lv_lines.
Also, check the upper limit on a number of parallel process count. It may have some limit on a number of open threads.