Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] MCA BTL Fragment lists
From: George Bosilca (bosilca_at_[hidden])
Date: 2012-03-09 09:02:04

On Mar 9, 2012, at 08:38 , Alex Margolin wrote:

> Hi,
> I'm implementing a new BTL component, and
> 1. I read the TCP code and ran into the three fragment lists:
> /* free list of fragment descriptors */
> ompi_free_list_t tcp_frag_eager;
> ompi_free_list_t tcp_frag_max;
> ompi_free_list_t tcp_frag_user;
> I've looked it up, and found that the documentation for OpenIB refers to the eager term as (in short) the first chuck of a long message, after which the buffer is registered and in the meanwhile chucks from the end of the buffer (beyond a limit much higher then eager-limit) are sent. I didn't find any references relevant to plain TCP. I'm not sure I understand how this is applicable with TCP (and I've seen it in other components as well). For a long message - why would I treat chucks separately?

An eager fragment can be received by the peer eagerly (this means without the corresponding receive posted). This is not the case for larger fragments.

> In the TCP BTL code, when the fragment is created - shorter chucks are sent to eager while the rest are sent to max. Where the two lists treated differently?
> Thanks,
> Alex
> P.S. what does the role of mca_btl_*_component_control()?

Amazing, that's an archeological piece of Open MPI history. Fixed in r26121.


> _______________________________________________
> devel mailing list
> devel_at_[hidden]