Cluster Computing Forum MPICH:Why parallel execution time is longer than sequential time smtimes?
0 replies on
1 page.
Artima.com provides this forum to the IEEE Computer Society Task Force on Cluster Computing (TFCC) to promote discussion of articles appearing in its TFCC Newsletter and related topics. The TFCC is an international organization that promotes cluster computing research and education and supports the development of technical standards in the cluster computing area.
Im new in MPI and in my lab using Rock cluster 10 nodes each has 2 processors, using mpich 1.2.7p1 in my Linux platform, I compute the execution time by running MPI_Wtime at begining and end of program then subtract them. I run the sequential code on the master machine by $./sequntial the execution time is almost constant from 0.000771 seconds to 0.000789 I m using two processors for my parallel When I run parallel code by $ /opt/mpich/gnu/bin/mpirun -nolocal -np 2 -machinefiles machines ./parallel the output: -------------------------------- Processor 0 on compute-0-0 Processpr 1 on compute-0-0 Execution Time is 0.000503 seconds ------------------------------- This result is acceptable, but when i run again $ /opt/mpich/gnu/bin/mpirun -nolocal -np 2 -machinefiles machines ./parallel the execution time is 0.00129, next run 0.00288,next run 0.000666,next run 0.00199 seconds Why the parallel execution time goes up and down, even sometimes is slower than sequential process?. Is it shared memory issue?
My code is similar as: ----------------- stime=MPI_wtime if myid=0 Do A MPI_Reveive Digest Do B(Digest) etime=MPI_Wtime
if myid=1 Do C MPI_Send Digest
finish ------------------- So i only use one send and receive mpi function Thank for help in advance