4:52:56 PM PDT - Mon, Aug 27th 2012 |
|
Quote:Mef362 Aug 27th 8:22 amThanks for the suggestions. OpenMPI was not installed with MPI_THREAD_MULTIPLE support. I don’t have access to reinstall OpenMPI. I can ask my admin but things like this seem to take a long time to get resolved because of others using the system. I also have access to MVapich2, could this be a better chose? I’m not familiar with MVapich2 nor do I know if one is better than the other.
Thanks again
Mvapich2 could work, but you need first to check if it does support MPI_THREAD_MULTIPLE with a simple MPI test program like the one at the bottom of this posting.
Please keep in mind that you need to disable the mvapich2 CPU affinity by using the following environment variable
MV2_ENABLE_AFFINITY=0
$ cat mpithreadcheck.f
- implicit none
- INCLUDE 'mpif.h'
- INTEGER REQUIRED, PROVIDED, IERROR
- INTEGER myrank,mysize,rc
- REQUIRED=MPI_THREAD_MULTIPLE
- CALL MPI_INIT_THREAD(REQUIRED, PROVIDED, IERROR)
- call MPI_COMM_SIZE(MPI_COMM_WORLD,mysize,ierror)
- call MPI_COMM_RANK(MPI_COMM_WORLD,myrank,ierror)
- print *, 'Hello World! I am ', myrank
- if(myrank.eq.0)then
- write(6,*) ' IERROR ',IERROR
- if(PROVIDED.NE.MPI_THREAD_MULTIPLE) then
- write(6,*) ' MPI_THREAD_MULTIPLE not supported'
- else
- write(6,*) ' MPI_THREAD_MULTIPLE is supported'
- endif
- endif
- call MPI_FINALIZE(rc)
- end
|