Durga, You need a progress function if your BTL require explicit progress to drain the network events. As you noticed, the TCP BTL lacks a progress function because it has it's fd registered in the main eventbase and does not require a specific progress call to send/recv data. Moreover, if your BTL has the possibility to make asynchronous progress you will also not need a progress function.
If your BTL provides such a progress function, it will be called once per opal_progress call. Otherwise, your BTL is responsible for its own progress. George. On Tue, Mar 1, 2016 at 6:27 PM, dpchoudh . <dpcho...@gmail.com> wrote: > Hello all > > (As you might know), I am working on implementing a new BTL for a > proprietary fabric, and, taking the path of least effort, copying and > pasting code from various pre-implemented BTL as is appropriate for our > hardware. My question is: are there any guidance on which of the functions > must be implemented and which are optional (i.e. depends on the underlying > hardware)? > > As a specific example, I see that mca_btl_tcp_component_progress() is > never implemented although similar functions in other BTLs are. > > Thanks in advance > Durga > > Life is complex. It has real and imaginary parts. > > _______________________________________________ > devel mailing list > de...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel > Link to this post: > http://www.open-mpi.org/community/lists/devel/2016/03/18648.php >