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
>

Reply via email to