Receiving buffer credits by a plurality of channels of one or more host computational devices for transmitting data to a control unit
First Claim
Patent Images
1. A method, performed by a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the method comprising:
- sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and
receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel of the host computational device receives an increased number of buffer credits, in response to the control unit determining that there is use of transfer ready operations but no use of retry operations during the monitoring period, and in response to the control unit determining that the number of transfer ready operations is greater than a transfer ready threshold.
1 Assignment
0 Petitions
Accused Products
Abstract
A channel of a host computational device sends a command to transfer data to a control unit included in a storage controller. The channel of the host computational device receives a number of buffer credits from the control unit for communication with the control unit, where the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with a plurality of channels that includes the channel.
-
Citations
18 Claims
-
1. A method, performed by a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the method comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel of the host computational device receives an increased number of buffer credits, in response to the control unit determining that there is use of transfer ready operations but no use of retry operations during the monitoring period, and in response to the control unit determining that the number of transfer ready operations is greater than a transfer ready threshold.
-
-
2. A method, performed by a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the method comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel of the host computational device receives a decreased number of buffer credits, in response to the control unit determining that there is use of retry operations but no use of transfer ready operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry low threshold.
-
-
3. A method, performed by a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the method comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel of the host computational device receives a decreased number of buffer credits, in response to the control unit determining that there is use of both transfer ready operations and retry operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry high threshold.
-
-
4. A method, performed by a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the method comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the method further comprises; receiving, by each of the plurality of channels, at an initiation of a startup phase of communication between the plurality of channels and the control unit, the number of buffer credits, wherein the received number of buffer credits when used for transferring data causes transfer ready operations but no retry operations; and receiving iteratively, by each of the plurality of channels, an increased number of buffer credits that is high enough to eliminate any transfer ready operations or cause retry operations to occur within a predetermined amount of time from the initiation of the startup phase. - View Dependent Claims (5, 6)
-
-
7. A system communicatively coupled via a switch to a storage controller through a plurality of channels, the system comprising:
-
a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; sending, by a channel, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives an increased number of buffer credits, in response to the control unit determining that there is use of transfer ready operations but no use of retry operations during the monitoring period, and in response to the control unit determining that the number of transfer ready operations is greater than a transfer ready threshold.
-
-
8. A system communicatively coupled via a switch to a storage controller through a plurality of channels, the system comprising:
-
a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; sending, by a channel, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives a decreased number of buffer credits, in response to the control unit determining that there is use of retry operations but no use of transfer ready operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry low threshold.
-
-
9. A system communicatively coupled via a switch to a storage controller through a plurality of channels, the system comprising:
-
a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; sending, by a channel of the system, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the system, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives a decreased number of buffer credits, in response to the control unit determining that there is use of both transfer ready operations and retry operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry high threshold.
-
-
10. A system communicatively coupled via a switch to a storage controller through a plurality of channels, the system comprising:
-
a memory; and a processor coupled to the memory, wherein the processor performs operations, the operations comprising; sending, by a channel of the system, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the system, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the operations further comprise; receiving, by each of the plurality of channels, at an initiation of a startup phase of communication between the plurality of channels and the control unit, the number of buffer credits, wherein the received number of buffer credits when used for transferring data causes transfer ready operations but no retry operations; and receiving iteratively, by each of the plurality of channels, an increased number of buffer credits that is high enough to eliminate any transfer ready operations or cause retry operations to occur within a predetermined amount of time from the initiation of the startup phase. - View Dependent Claims (11, 12)
-
-
13. A computer program product, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations on a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the operations comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives an increased number of buffer credits, in response to the control unit determining that there is use of transfer ready operations but no use of retry operations during the monitoring period, and in response to the control unit determining that the number of transfer ready operations is greater than a transfer ready threshold.
-
-
14. A computer program product, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations on a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the operations comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives a decreased number of buffer credits, in response to the control unit determining that there is use of retry operations but no use of transfer ready operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry low threshold.
-
-
15. A computer program product, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations on a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the operations comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, and wherein the channel receives a decreased number of buffer credits, in response to the control unit determining that there is use of both transfer ready operations and retry operations during the monitoring period, and in response to the control unit determining that the number of retry operations is greater than a retry high threshold.
-
-
16. A computer program product, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code configured to perform operations on a host computational device communicatively coupled via a switch to a storage controller through a plurality of channels, the operations comprising:
-
sending, by a channel of the host computational device, a command to transfer data to a control unit included in the storage controller; and receiving, by the channel of the host computational device, a number of buffer credits from the control unit for communication with the control unit, wherein the number of buffer credits that is received is based on the control unit monitoring a number of transfer ready operations and a number of retry operations during a monitoring period while communicating with the plurality of channels that includes the channel, the operations further comprising; receiving, by each of the plurality of channels, at an initiation of a startup phase of communication between the plurality of channels and the control unit, the number of buffer credits, wherein the received number of buffer credits when used for transferring data causes transfer ready operations but no retry operations; and receiving iteratively, by each of the plurality of channels, an increased number of buffer credits that is high enough to eliminate any transfer ready operations or cause retry operations to occur within a predetermined amount of time from the initiation of the startup phase. - View Dependent Claims (17, 18)
-
Specification