Virtual Heterogeneous Channel For Message Passing
First Claim
Patent Images
1. An article comprising a machine-accessible storage medium including instructions that when executed cause a system to:
- prepare a message to be sent from a first process to a second process via a remote direct memory access (RDMA) write operation, the message including user data and immediate data to indicate a type of the user data; and
send the message from the first process to the second process using the RDMA write operation.
0 Assignments
0 Petitions
Accused Products
Abstract
A technique includes using a virtual channel between a first process and a second process to communicate messages between the processes. Each message contains protocol data and user data. All of the protocol data is communicated over a first channel associated with the virtual channel, and the user data is selectively communicated over at least one other channel associated with the virtual channel.
-
Citations
19 Claims
-
1. An article comprising a machine-accessible storage medium including instructions that when executed cause a system to:
-
prepare a message to be sent from a first process to a second process via a remote direct memory access (RDMA) write operation, the message including user data and immediate data to indicate a type of the user data; and send the message from the first process to the second process using the RDMA write operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
a first processor to send a message from a first process executing on the first processor to a second process executing on a second processor, wherein the first process is to send the message while the second process is in a wait state; the second processor to receive the message from the first process while the second process is in the wait state, wherein the first process is to send a wake up message to the second process based on a state of a synchronization block for the second process if the second process is in the wait state when the message is sent; and a dynamic random access memory (DRAM) coupled to the first and second processors. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
creating a shared memory segment to store a synchronization block for each of a plurality of processes that execute in a message passing interface (MPI) library, wherein each synchronization block includes a wait flag to indicate that the associated process is in a wait state, a first counter to indicate a number of messages sent by the associated process to another process that have not been received, and a pointer to a mutex for synchronization of processes during access to the synchronization block; transferring a message from a first process to a shared memory buffer of a second process via a shared memory connection; and sending a wake up message from the first process to the second process via a secondary connection if the second process is in the wait state. - View Dependent Claims (17, 18, 19)
-
Specification