Hello Tim, Thanks for providing the details. I was going through the code of MPI_Send and I found a function pointer being invoked mca_pml.send of struct mca_pml_base_module_t. I am trying to figureout when are these PML function pointers get initialized to call internal BTL functions. I am trying to know how MPI program communicate over TPC/IP for message passing in a distributed setup and would appreciate if you can provide more details or any report that you would like to share.
Regards Pranav Jadhav On Thu, Apr 16, 2009 at 11:38 AM, Timothy Hayes <haye...@tcd.ie> wrote: > From what I understand MPI_Send will hit 3 seprate layers of code before > reaching the socket file descriptors you've found. The PML (Point to Point > Messaging Layer) is a layer that bridges the MPI semantics from the > underlying point to point communications. The standard PML implementation is > called 'ob1' which is what indirectly calls the code you found. MPI_Send > should go through pml_isend() or pml_send() which will request a BTL (Byte > Transfer Layer) modules from the BML (BTL Management Layer) and invoke the > BTL's btl_prepare_src() or btl_alloc() functions before calling the > btl_send(). It becomes clearer when you step through it all with a debugger > though ;-) > > If you're interested, I've recently implemented a BTL component of my own > and am now writing up a report on the process. It will be ready next week, > so if you think it might be useful, just let me know. > > Tim > > > 2009/4/16 pranav jadhav <pranavjad...@gmail.com> > >> >> Hi All, >> >> I am new to MPI library. I downloaded and started using OpenMPI library to >> build MPI programs. I wanted to know how does MPI program communicates over >> the network. I am trying to trace the flow of MPI_Send and MPI_Bcast APIS to >> find the actual send/recv calls being used for sending the packets over the >> network. I was trying to look into the code , I found some tcp related >> socket connections in code base in "ompi/mca/btl/tcp/" but I am not able to >> figureout how does MPI_Send works. Please if anyone knows how MPI_Send and >> MPI_Recv APIs works for communicating over network,please let me know. >> >> Thankyou, >> >> Regards, >> Pranav Jadhav >> Stony Brook University >> >> >> >> _______________________________________________ >> devel mailing list >> de...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/devel >> > > > _______________________________________________ > devel mailing list > de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/devel > -- Pranav Jadhav Graduate Student Computer Science Department Stony Brook University NY-11790.