Xin / Lawrence --

Both of you asked about writing new BTLs within days of each other.  Good 
timing.  :-)

Do you want to have a teleconference / webex with me in the near future?  I can 
orient you to the OMPI code base, give an overview of the BTL, etc. Email is 
great for discussing the finer details, but we've found that direct 
conversation is a good way to jump-start getting into the OMPI code base.  

If so, ping me off list and we'll find a time that all 3 of us can get together.



On Jun 15, 2011, at 6:17 AM, Xin He I wrote:

> 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
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


Reply via email to