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 :)
|