Method, system, and program for remote resource management
First Claim
1. A method comprising:
- adding a remote operation request of a first resource type sent to a remote processor from a local processor, as an entry in a first queue of remote operation requests of the first resource type awaiting execution in connection with a first resource in a remote processor; and
adding a remote operation request of a second resource type sent to the remote processor from the local processor, as an entry in a second queue of remote operations of the second resource type awaiting execution by a second resource in a remote processor.
3 Assignments
0 Petitions
Accused Products
Abstract
Provided are a method, system, and program for managing resources in which a local processor sends remote operation requests to be executed by a remote processor having multiple resources. In the illustrated embodiment, the local processor and the remote processor each have a resource manager, each of which maintains a control set for each resource of the remote processor. Each control set of the remote processor resource manager includes a queue for queuing remote operation requests awaiting execution in connection with the resource associated with the control set. Each control set of the local processor resource manager includes a credit counter which keeps track of permissible outstanding remote operation requests. Each local processor control set credit counter is decremented for each remote operation request for the associated resource sent to the remote processor and is incremented for each acknowledgment received from the remote processor. For each remote processor control set, the remote processor resource manager sends an acknowledgment for each remote operation request initiated in connection with the associated resource. For each local processor control set, the local processor resource manager queues remote operation requests if the control set credit counter falls below a threshold after being initialized in accordance with the capacity of the associated remote processor control set queue.
44 Citations
30 Claims
-
1. A method comprising:
-
adding a remote operation request of a first resource type sent to a remote processor from a local processor, as an entry in a first queue of remote operation requests of the first resource type awaiting execution in connection with a first resource in a remote processor; and
adding a remote operation request of a second resource type sent to the remote processor from the local processor, as an entry in a second queue of remote operations of the second resource type awaiting execution by a second resource in a remote processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method comprising:
-
sending a remote operation request of a first resource type to a remote processor to be executed in connection with a first resource type of the remote processor;
decrementing a first count of credits for each remote operation of the first resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
incrementing the first count of credits for each acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
sending a remote operation request of a second resource type to the remote processor to be executed in connection with a second resource type of the remote processor;
decrementing a second count of credits for each remote operation of the second resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor; and
incrementing the second count of credits for each acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor. - View Dependent Claims (11)
-
-
12. A method comprising:
-
sending a remote operation request of a first resource type to a remote processor to be executed in connection with a first resource type of the remote processor;
decrementing a first count of credits for each remote operation of the first resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
incrementing the first count of credits for each acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
sending a remote operation request of a second resource type to the remote processor to be executed in connection with a second resource type of the remote processor;
decrementing a second count of credits for each remote operation of the second resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor;
incrementing the second count of credits for each acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor;
if the first count of credits is below a predetermined threshold, queuing a remote operation request of the first resource type in a first queue of remote operation requests of the first resource type awaiting being sent to the remote processor to be executed in connection with the first resource type of the remote processor;
if the second count of credits is below a predetermined threshold, queuing a remote operation request of the second resource type in a second queue of remote operation requests of the second resource type awaiting being sent to the remote processor to be executed in connection with the second resource type of the remote processor;
if the first count of credits is above a predetermined threshold, sending a remote operation request of the first resource type from the first queue to the remote processor to be executed in connection with the first resource type of the remote processor; and
if the second count of credits is above a predetermined threshold, sending a remote operation request of the second resource type from the second queue to the remote processor to be executed in connection with the second resource type of the remote processor.
-
-
13. A article of manufacture for managing remote operation requests sent from a local processor to a remote processor, wherein the article of manufacture causes operations to be performed, the operations comprising:
-
adding a remote operation request of a first resource type sent to a remote processor from a local processor, as an entry in a first queue of remote operation requests of the first resource type awaiting execution by a first resource in a remote processor; and
adding a remote operation request of a second resource type sent to the remote processor from the local processor, as an entry in a second queue of remote operations of the second resource type awaiting execution by a second resource in a remote processor. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A article of manufacture for managing remote operation requests sent from a local processor to a remote processor, wherein the article of manufacture causes operations to be performed, the operations comprising:
-
sending a remote operation request of a first resource type to a remote processor to be executed in connection with a first resource type of the remote processor;
decrementing a first count of credits for each remote operation of the first resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
incrementing the first count of credits for each acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
sending a remote operation request of a second resource type to the remote processor to be executed in connection with a second resource type of the remote processor;
decrementing a second count of credits for each remote operation of the second resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor; and
incrementing the second count of credits for each acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor. - View Dependent Claims (23)
-
-
24. A article of manufacture for managing remote operation requests sent from a local processor to a remote processor, wherein the article of manufacture causes operations to be performed, the operations comprising:
-
sending a remote operation request of a first resource type to a remote processor to be executed in connection with a first resource type of the remote processor;
decrementing a first count of credits for each remote operation of the first resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
incrementing the first count of credits for each acknowledgment from the remote processor that another remote operation of the first resource type may be sent to the remote processor;
sending a remote operation request of a second resource type to the remote processor to be executed in connection with a second resource type of the remote processor;
decrementing a second count of credits for each remote operation of the second resource type sent to the remote processor;
receiving an acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor;
incrementing the second count of credits for each acknowledgment from the remote processor that another remote operation of the second resource type may be sent to the remote processor;
if the first count of credits is below a predetermined threshold, queuing a remote operation request of the first resource type in a first queue of remote operation requests of the first resource type awaiting being sent to the remote processor to be executed in connection with the first resource type of the remote processor;
if the second count of credits is below a predetermined threshold, queuing a remote operation request of the second resource type in a second queue of remote operation requests of the second resource type awaiting being sent to the remote processor to be executed in connection with the second resource type of the remote processor;
if the first count of credits is above a predetermined threshold, sending a remote operation request of the first resource type from the first queue to the remote processor to be executed in connection with the first resource type of the remote processor; and
if the second count of credits is above a predetermined threshold, sending a remote operation request of the second resource type from the second queue to the remote processor to be executed in connection with the second resource type of the remote processor.
-
-
25. A system, comprising:
-
a local processor having a first resource management means for sending remote operation requests of a first resource type and of a second resource type; and
a remote processor having a first resource means for executing remote operations of the first resource type and a second resource means for executing remote operation requests of the second resource type, and a second resource management means for receiving remote operation requests of the first resource type and the second resource type, said second resource management means having a first queue means including a plurality of entries for storing a remote operation request of the first resource type sent to the remote processor from the local processor to await execution by said first resource means in the remote processor, and having a second queue means including a plurality of entries for storing a remote operation request of the second resource type sent to the remote processor from the local processor to await execution by said second resource means in the remote processor. - View Dependent Claims (26, 27, 28, 29, 30)
-
Specification