主权项 |
1. A computer program product for parent-child scheduling and management of a computer workload, the computer program product comprising:
a computer-readable storage medium having computer-readable program code embodied therewith, the computer-readable program code comprising: computer-readable program code configured to initiate a parent task of a parent-child workload session submitted by a client application, by scheduling the parent task on a resource available to, and under control of a workload scheduler; computer-readable program code configured to receive a request to schedule one or more child tasks as a result of performing at least part of the parent task of the parent-child workload session, wherein the parent task of the parent-child workload session is dependent on a result of the one or more child tasks, wherein each of the one or more child tasks are descendants of the parent task and are arranged in a generation of child tasks wherein at least one child task that becomes a parent task of one or more child tasks becomes a parent task of a subsequent generation of child tasks, wherein the one or more generations of child tasks are arranged in an inverted tree structure with a first parent task as a root task with descendent child tasks, wherein branches of the inverted tree structure connect each generation of child tasks with the root task, and wherein each branch ends with at least one terminal task, which is at least one child task that has no descendant child tasks; computer-readable program code configured to receive a message from the parent task of the parent-child workload session to the workload scheduler, yielding the resource on which at least part of the parent task has been performed, wherein the workload scheduler schedules a child task of the branch of the inverted tree structure that includes the parent task, and having a fewest number of generations of child tasks on the resource yielded by the parent task; computer-readable program code configured to determine a resume request for the parent task; and computer-readable program code configured to return the resource yielded by the parent task to the parent task, upon completion of the child task of the branch of the inverted tree structure that includes the parent task of the parent-child workload session having a fewest number of generations of child tasks, and receipt by the parent task of dependencies from the completion of the child task. |