[ofa-general] RDMA n00b: Remote Memory Access and Connection Setup Help
Dotan Barak
dotanba at gmail.com
Thu Aug 7 12:27:08 PDT 2008
Adrien Guillon wrote:
> Hello List,
>
> I've been reading the Infiniband Architecture specification, and I'm
> ready to write my first RDMA-enabled C++ library. I have looked at
> some sample code provided by librdmacm, and I'm having a problem going
> from the big picture of what I want to do to the finer details.
>
> I want to remotely access memory on various compute nodes, and the
> Infiniband spec does everything I need. However upon looking at
> librdmacm, and the Infiniband verbs I don't see how I actually write
> to remote memory locations. Also I don't completely understand why I
> am responsible for creating QPs in userspace, if everything is
> supposed to be handled by hardware... although I suppose I still have
> to allocate memory for the hardware to actually use.
If one wishes to write to remote address:
1) the remote QP access right should support incoming RDMA Write
2) the remote side MR should support Remote Write
3) locally, there is a need to post Send Request with RDMA Write
operation (and then poll the completion, if such was created)
>
> I'm looking for some help from this list with a high-level overview of
> what I have to do to establish a connection between two nodes, and how
> I would write an object to remote memory, or read an object from
> remote memory. My current understanding is that I would use librdmacm
> to create a connection between the nodes that I want to communicate,
> and then use the inifinband verbs themselves to read/write memory, and
> to establish a memory window.
You are absolutely right.
Please notice that RDMA Write doesn't consume any Receive Request in the
Receiver side.
I believe that basin the ucma examples with minor changes (that i wrote
above) can be written easily.
>
> I'm developing on Linux.
Which is a great OS
:)
>
> Thanks a lot!
You are welcome
Dotan
>
> AJ
> ------------------------------------------------------------------------
>
> _______________________________________________
> general mailing list
> general at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
>
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
More information about the general
mailing list