Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

From: George Bosilca (bosilca_at_[hidden])
Date: 2007-07-02 17:06:36


Karol,

There is no way to know the MPI tag at the BTL level. The BTL is
protocol agnostic, it only moves bytes around (BTL = Byte Transport
Layer). Moreover, the BTLs can be (and are) used by different PML,
each of them supporting a different protocol.

Now, let talk specifically about the OB1 PML. The first X bytes
contain a message header, but this message header differ based on the
protocol used to transmit the message. There are multiple protocols:
eager, send/recv, RDMA. If you look in ompi/mca/pml/ob1/pml_ob1_hdr.h
you will see the different types of headers used by the OB1 PML.
However, do not use this file in the BTL, as the BTL is PML agnostic.

   Thanks,
     george.

On Jul 2, 2007, at 4:56 PM, Karol Mroz wrote:

> Good morning everyone. I had a question about obtaining the message
> tag
> from the iovec array in mca_btl_sctp_frag_t* frag from within the
> mca_btl_tcp_frag_send() function. If I understand correctly, the
> first X
> bytes in the first iovec entry contain message header information
> in the
> form of an mca_pml_ob1_match_hdr_t struct that contains a hdr_tag
> field.
> When I extract this, I get a number that resembles an address.
> Dereferencing this gives, from what I can tell, an incorrect value and
> passing the value into ntohl() etc brings me no closer. There is
> probably something basic I'm overlooking... any help would be
> appreciated.
>
> Thanks,
> Karol
>
> --
> Karol Mroz
> kmroz_at_[hidden]
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel



  • application/pkcs7-signature attachment: smime.p7s