Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] Open-MPI on TIPC
From: Xin He I (xin.i.he_at_[hidden])
Date: 2011-06-15 06:17:35


Thank your for replying.

Now I have read through the documents mentioned and created the component "tipc" and successfully built a library of it (the content is empty, of course).

So to advance the work, I will need to actually implement the library. And I notice btl.h and a "template" folder, which seems to demonstrate the structure of
a typical btl component. However, I find myself not understand the code quite well. Would you please explain the structure a little bit, like what the files are for?

Like I understand that btl_template.h is to define interfaces for export, but what other files(endpoint, pro, frag) for? And why such structure?

Thank you in advance for your kind explanation.

Regards,
Xin

________________________________________

Probably the best docs to check would be what were referred to in that thread, and http://www.open-mpi.org/papers/ppam-2005/ for an overview.

Read through ompi/mca/pml/pml.h. It's the interface for the MPI "engine" behind OMPI's point-to-point functions, like MPI_SEND and MPI_RECV and friends. The PML uses BTLs to perform all the transport-level operations (E.g., over a specific type of network and/or protocol). BTLs are dumb byte-pushers; they have no concept of MPI semantics -- all the MPI semantics are handled in the upper-level PML. BTLs are also not allowed to block; the PML will poll them when necessary. Look though ompi/mca/btl/btl.h for a description of the BTL interface that BTLs are expected to export.

Also have a look at the following wiki pages:

https://svn.open-mpi.org/trac/ompi/wiki/NewDeveloper
https://svn.open-mpi.org/trac/ompi/wiki/UsingMercurial (same principles apply to git or any other DVCS)
https://svn.open-mpi.org/trac/ompi/wiki/devel/Autogen
https://svn.open-mpi.org/trac/ompi/wiki/devel/CreateComponent
https://svn.open-mpi.org/trac/ompi/wiki/BTLSemantics

On Jun 13, 2011, at 4:39 AM, Xin He I wrote:

> Hi,
>
> I just started working on adding a BTL module of TIPC (Transparent Inter-process Communication) for Open-mpi.
>
> My coworker post this topic a year ago : http://www.open-mpi.org/community/lists/devel/2010/05/7914.php
>
> I read the thread. I am wondering if someone could provide the documents mentioned. A few unofficial documents or explanation
> of how to add a BTL module will be of great help to me :)
>
> Regards,
> Xin
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel