Patent ID: 9189281
Filing Date: 2015-11-17
Classification: G06F

Abstract:
1. A task processing system comprising: a host system including a plurality of initiator devices, wherein each of the plurality of the initiator devices includes at least one processor to generate a plurality of tasks; and a storage array including at least one target port and at least one logical unit, a target system including at least one second processor to receive the plurality of tasks, the at least second processor operable to sort the plurality of tasks into a number of task lists, each task list of the number of task lists associated with a specific Initiator, Target, Logical Unit (ITL) nexus, the target system further operable to process a task from the plurality of tasks sorted into the number of task lists from each of the plurality of task lists prior to processing another task from the plurality of tasks sorted into the number of task lists from any of the plurality of task lists, wherein the tasks being processed may arrive at the target device nonsequentially, the target system to process the tasks from each of the plurality of task lists by dispatching one or more task workers from a plurality of available task workers, and wherein the task workers are dispatched using a dispatch threshold, with each additional task worker being dispatched every time the dispatch threshold is crossed, the dispatch threshold determined from a time attribute and a latency attribute, the time attribute relating to a task run time and the latency attribute relating to a worker dispatch latency.