No, the PML UCX in OMPI is just a shim layer of translation from our API
into UCX API. The selection of the communication protocol you are
interested in is deep inside the UCX code. You will need to talk with UCX
developers about that.

  George.


On Tue, Oct 19, 2021 at 10:57 AM Masoud Hemmatpour <mashe...@gmail.com>
wrote:

>
> Hi  George,
>
> Thank you very much for your reply. I use UCX for the communication. Is it
> somewhere in pml_ucx.c?
>
> Thanks,
>
>
>
> On Tue, Oct 19, 2021 at 4:41 PM George Bosilca <bosi...@icl.utk.edu>
> wrote:
>
>> Masoud,
>>
>> The protocol selection and implementation in OMPI is only available for
>> the PML OB1, other PMLs make their own internal selection that is usually
>> maintained in some other code base.
>>
>> For OB1, the selection starts in ompi/mca/pml/ob1/pml_ob1_sendreq.c in
>> the function mca_pml_ob1_send_request_start, where the sender decide what
>> protocol might be the best to use according to it's memory layout and
>> message size. This decision is then encapsulated in a matching header, that
>> is forwarded to the peer. Once the matching is done on the receiving
>> processor (in pml_ob1_recvfrag.c starting from match_one), the receiver can
>> confirm the protocol proposed by the sender or can fall back to a different
>> protocol (such as pipeline send/recv).
>>
>> If you have questions let me know.
>>   George.
>>
>>
>>
>> On Tue, Oct 19, 2021 at 10:15 AM Masoud Hemmatpour via devel <
>> devel@lists.open-mpi.org> wrote:
>>
>>> Hello all,
>>>
>>> I am new to Open MPI source code. I am trying to understand the Eager
>>> and Rendezvous
>>> implementation  inside ompi code base. Could you please help and refer
>>> me to the source file?
>>> I read a bit on OMPI, then PML and BTL but I am still not sure what is
>>> going on.
>>>
>>> Thanks!
>>>
>>>
>>>

Reply via email to