Using send buffers and receive buffers for sending messages among nodes in a network
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/16
H04L-012/58
H04L-029/08
출원번호
US-0918898
(2015-10-21)
등록번호
US-10097484
(2018-10-09)
발명자
/ 주소
Nguyen, Trung N.
Rasor, Louis A.
Ruiz, Juan J.
출원인 / 주소
INTERNATIONAL BUSINESS MACHINES CORPORATION
대리인 / 주소
Victor, David W.
인용정보
피인용 횟수 :
0인용 특허 :
4
초록▼
Provided are a computer program product, system, and method for using send buffers and receive buffers for sending messages among nodes in a network. A send buffer is provided for each of at least one receiving node comprising one of the nodes to which messages are sent. Each of the receiving nodes
Provided are a computer program product, system, and method for using send buffers and receive buffers for sending messages among nodes in a network. A send buffer is provided for each of at least one receiving node comprising one of the nodes to which messages are sent. Each of the receiving nodes includes at least one receive buffer to receive messages from the send buffer at the sending node. A determination is made of a buffer entry for a send buffer and receive buffer pair that is available for use. Indication is made of the message in the determined buffer entry of the send buffer. The message is sent from the send buffer to the receiving node indicating the determined buffer entry in which the message is indicated to cause the receiving node to include the message in the indicated buffer entry in the receive buffer.
대표청구항▼
1. A computer program product for transmitting messages among nodes in a network the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs sending node operations to send a message to a receiving node
1. A computer program product for transmitting messages among nodes in a network the computer program product comprising a computer readable storage medium having computer readable program code embodied therein that when executed performs sending node operations to send a message to a receiving node comprising at least one of the nodes in the network, the operations comprising: providing a send buffer for each of at least one receiving node comprising one of the nodes to which messages are sent, wherein each of the at least one receiving node includes at least one receive buffer to receive messages from the send buffer at a sending node, wherein the send and receive buffers for a message being sent from the sending node to one of the receiving nodes have corresponding entries;requesting from a buffer manager a buffer entry for a send buffer and receive buffer pair for a message, wherein the send buffer is in the sending node and the receive buffer is in the receiving node;indicating in the message, to send to the receiving node, the buffer entry for the send buffer and the receive buffer pair; andsending, from the send buffer of the sending node, the message to the receiving node indicating the buffer entry to cause the receiving node to include the message in the indicated buffer entry in the receive buffer the receiving node maintains for the node from which the message is sent. 2. The computer program product of claim 1, wherein each of the nodes may operate as a sending node and receiving node, and include send and receive buffers to send and receive messages with respect to other of the nodes. 3. The computer program product of claim 1, wherein the operations further comprise: receiving indication from the receiving node that the message in the buffer entry in the receive buffer of the receiving node was processed; andindicating as available the buffer entry in the send buffer having the message that was indicated as processed at the receiving node. 4. The computer program product of claim 1, wherein a plurality of processors use the send buffer to send messages to the receiving node, wherein the processors concurrently access available buffer entries in the send buffer to use to send messages to the receive buffer of the receiving node. 5. The computer program product of claim 1, further comprising: determining, by the buffer manager, a buffer entry for the send buffer and receive buffer pair that is available;indicating, by the buffer manager, the determined buffer entry as unavailable; andreturning the determined buffer entry to use for the message. 6. The computer program product of claim 1, wherein there are a plurality of send buffers corresponding to a plurality of receive buffers at the receiving node, wherein the operations further comprise: selecting one of the send buffers, wherein the buffer entry in which the message is indicated is for the selected send buffer, wherein the receiving node stores the message in the receive buffer corresponding to the selected send buffer. 7. The computer program product of claim 6, wherein the operations further comprise: using a load balancing algorithm to select one of the send buffers to use for the message. 8. The computer program product of claim 6, wherein the operations further comprise: associating each of a plurality of different types of work with each of the send buffers,wherein the selecting one of the send buffers comprises determining a type of work of the different types of work with which the message is associated, wherein the selected send buffer comprises the send buffer associated with the determined type of work. 9. The computer program product of claim 6, wherein each of the send buffers for the receiving node correspond to one of a plurality of adaptors on the receiving node, wherein the message is sent to the adaptor of the receiving node corresponding to the selected send buffer. 10. The computer program product of claim 9, wherein the operations further comprise: associating each of a plurality of different types of work with one of the adaptors at the receiving node, wherein the selecting one of the send buffers comprises determining a type of work of the different types of work with which the message is associated, wherein the selected send buffer comprises the send buffer corresponding to an adaptor associated with the determined type of work. 11. A system for transmitting messages among nodes in a network, comprising: at least one processor; anda computer readable storage medium having computer program code executed by the processor to perform operations as a sending node to send message in the network to other nodes comprising receiving nodes, the operations comprising: providing a send buffer for each of at least one receiving node comprising one of the nodes to which messages are sent, wherein each of the at least one receiving node includes at least one receive buffer to receive messages from the send buffer at the sending node, wherein the send and receive buffers for a message being sent from the sending node to one of the at least one receiving node have corresponding entries;requesting from a buffer manager a buffer entry for a send buffer and a receive buffer pair for a message, wherein the send buffer is in the sending node and the receive buffer is in a receiving node;indicating in the message, to send to the receiving node, the buffer entry for the send buffer and the receive buffer pair; andsending, from the send buffer of the sending node, the message to the receiving node indicating the buffer entry to cause the receiving node to include the message in the indicated buffer entry in the receive buffer the receiving node maintains for the node from which the message is sent. 12. The system of claim 11, wherein each of the nodes may operate as a sending node and receiving node, and include send and receive buffers to send and receive messages with respect to other of the nodes. 13. The system of claim 11, wherein the at least one processor comprises a plurality of processors that use the send buffer to send messages to the receiving node, wherein the processors concurrently access available buffer entries in the send buffer to use to send messages to the receive buffer of the receiving node. 14. The system of claim 11, further comprising: determining, by the buffer manager, a buffer entry for the send buffer and receive buffer pair that is available;indicating, by the buffer manager, the determined buffer entry as unavailable; andreturning the determined buffer entry to use for the message. 15. The system of claim 11, wherein there are a plurality of send buffers corresponding to a plurality of receive buffers at the receiving node, wherein the operations further comprise: selecting one of the send buffers, wherein the buffer entry in which the message is indicated is for the selected send buffer, wherein the receiving node stores the message in the receive buffer corresponding to the selected send buffer. 16. The system of claim 15, wherein each of the send buffers for the receiving node correspond to one of a plurality of adaptors on the receiving node, wherein the message is sent to the adaptor of the receiving node corresponding to the selected send buffer. 17. A method for transmitting messages among nodes in a network, comprising: providing a send buffer for each of at least one receiving node comprising one of the nodes to which messages are sent, wherein each of the at least one receiving node includes at least one receive buffer to receive messages from the send buffer at a sending node, wherein the send and receive buffers for a message being sent from the sending node to one of the receiving nodes have corresponding entries;requesting from a buffer manager a buffer entry for a send buffer and receive buffer pair for a message, wherein the send buffer is in the sending node and the receive buffer is in the receiving node;indicating in the message, to send to the receiving node, the buffer entry for the send buffer and the receive buffer pair; andsending, from the send buffer of the sending node, the message to the receiving node indicating the buffer entry to cause the receiving node to include the message in the indicated buffer entry in the receive buffer the receiving node maintains for the node from which the message is sent. 18. The method of claim 17, wherein each of the nodes may operate as a sending node and receiving node, and include send and receive buffers to send and receive messages with respect to other of the nodes. 19. The method of claim 17, wherein there are a plurality of processors that use the send buffer to send messages to the receiving node, wherein the processors concurrently access available buffer entries in the send buffer to use to send messages to the receive buffer of the receiving node. 20. The method of claim 17, further comprising: determining, by the buffer manager, a buffer entry for the send buffer and receive buffer pair that is available;indicating, by the buffer manager, the determined buffer entry as unavailable; andreturning the determined buffer entry to use for the message. 21. The method of claim 17, wherein there are a plurality of send buffers corresponding to a plurality of receive buffers at the receiving node, further comprising: selecting one of the send buffers, wherein the buffer entry in which the message is indicated is for the selected send buffer, wherein the receiving node stores the message in the receive buffer corresponding to the selected send buffer. 22. The method of claim 21, wherein each of the send buffers for the receiving node correspond to one of a plurality of adaptors on the receiving node, wherein the message is sent to the adaptor of the receiving node corresponding to the selected send buffer.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (4)
Hardwick Jonathan C.,GBX, Dynamic load balancing among processors in a parallel computer.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.