Hi,
We do make use of multiple protocols in LAM. TCP connections are used for
all communications between MPI processes if the tcp rpi is selected (which
is the default). There are other rpi's which can be used for inter-process
communication which include crtcp, lamd, sysv, usysv and gm. UDP is used
for out of band communication. For more information, please see the user's
documentation at www.lam-mpi.org/using/docs.
Hope this helps,
Anju
On Thu, 17 Jun 2004, Muhlis Akdag wrote:
> Hello
>
> I know there are many posts with the topic transport protocoll in lam mpi...but here my question
>
> i read that lam mpi use udp to transport informations between nodes...but i also read that a tcp socket create it from lambootagent...
> so my question:
>
> what are transport with udp and what is transport with tcp...
>
> i test a code with 2 nodes...a send and a receive:
>
> #include <stdio.h>
> #include <mpi.h>
> #include <math.h>
>
> #define WORLD MPI_COMM_WORLD
>
> int main(int argc, char *argv[]){
>
> int rank, size, i;
>
> MPI_Init( &argc, &argv);
> MPI_Comm_rank(MPI_COMM_WORLD, &rank);
> MPI_Comm_size(MPI_COMM_WORLD, &size);
>
>
> int l=1;
> int sendarray[l];
> int recvarray[l];
>
>
>
> if (rank==0){
> for (i=0; i<l; i++){
> sendarray[i] = i;
> }
> printf("proc %d: sendarray[%d] = %d\n", rank, l-1, sendarray[l-1]);
>
> MPI_Send( sendarray, l, MPI_INT, 1, 123, WORLD);
> }
> else if (rank==1){
> MPI_Status status_recv;
> MPI_Recv( recvarray, l, MPI_INT,0, 123, WORLD, &status_recv);
>
> printf("proc %d received : recvarray[%d] = %d\n", rank, l-1, recvarray[l-1]);
> }
>
> MPI_Finalize();
>
> return 0;
> }
>
> than i trace ist with ethereal a network sniffer...i have many udp packets between node a and b and also tcp packets...but what are transport with what?
>
> a second question is...when use lam mpi ssh and rsh...is this right when i say: only in lamboot to hboot the other nodes? with mpirun both configuration are the same?
>
> i hope some people can help me and understand my confuse english :)
>
>
>
>
|