Ripple scheduling for end-to-end global resource management
First Claim
1. A method provided to a user of globally managing a session, wherein the session has a criticality level, a timing requirement, and a QoS associated therewith, the method comprising the following steps:
- a) enabling the user to make an initial adjustment of at least one of the criticality level, the timing requirement, and the QoS for the session; and
, b) enabling the user to make a subsequent adjustment of at least one of the criticality level, the timing requirement, and the QoS for the session, wherein the subsequent adjustment is made after partial execution of the session.
1 Assignment
0 Petitions
Accused Products
Abstract
A global resource manager is provided for each node of a plurality of nodes of a distributed data processing system. Each node can be a coordinator node, an intermediate node, and a leaf node depending on the node at which a session arrives for global processing. In response to the arriving sessions, the global resource managers implement ripple scheduling by conducting a global QoS negotiation and adaptation, and preemption if necessary, in order to determine if the arriving session is supportable by the distributed data processing system. More specifically, the resource managers of all nodes determine whether their corresponding nodes can support the arriving session. The resource managers of the coordinator node and all intermediate nodes request their child nodes to indicate whether the child nodes can support the arriving session. The resource managers of all intermediate nodes and all leaf nodes respond to their coordinating or intermediate nodes with an indication of supportability. The resource manager of the coordinator node sends a commit message if all nodes can support the arriving session.
54 Citations
29 Claims
-
1. A method provided to a user of globally managing a session, wherein the session has a criticality level, a timing requirement, and a QoS associated therewith, the method comprising the following steps:
-
a) enabling the user to make an initial adjustment of at least one of the criticality level, the timing requirement, and the QoS for the session; and
,b) enabling the user to make a subsequent adjustment of at least one of the criticality level, the timing requirement, and the QoS for the session, wherein the subsequent adjustment is made after partial execution of the session. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of globally managing a session comprising:
-
a) specifying an initial value for at least one of a criticality level, a timing requirement, and a QoS for the session; and
,b) after execution of the session has begun, specifying a subsequent value for at least one of the criticality level, the timing requirement, and the QoS for the session, wherein the specifications of the initial and subsequent values are made by a person. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
determining whether the session can be supported;
if the session can be supported and if a node making the determination is a coordinator node or an intermediate node, sending a support request message to a downstream node;
if the session can be supported and if a node making the determination is an intermediate node or a leaf node, sending to an upstream node an affirmative response to the support request message; and
,if the session cannot be supported and if a node making the determination is an intermediate node or a leaf node, sending to the upstream node a negative response to the support request message.
-
-
24. The method of claim 23 wherein the support request message includes a supportable QoS.
-
25. The method of claim 23 wherein the affirmative response includes a supportable QoS.
-
26. The method of claim 12 further comprising:
-
determining whether downstream nodes can support the session;
if the downstream nodes can support the session, sending a commit message to the downstream nodes; and
,if the downstream nodes cannot support the session, sending an abort message to the downstream nodes.
-
-
27. The method of claim 26 wherein the commit message includes a QoS supportable by the downstream nodes.
-
28. The method of claim 12 further comprising:
-
determining whether the session can be supported without QoS shrinking;
if the session can be supported without QoS shrinking, scheduling the session for execution;
if the session can be supported with QoS shrinking, determining whether the session can be supported without preemption;
if the session can be supported without preemption, performing QoS shrinking and scheduling the session for execution; and
,if the session can be supported with QoS shrinking and with preemption, performing QoS shrinking and preemption and scheduling the session for execution.
-
-
29. The method of claim 12 further comprising scheduling the session for execution through the use of QoS shrinking, preemption and QoS expansion.
Specification