Re: [OMPI users] Thread Safety
Hi jeff, thanks for your comprehensive reply. I have installed openMPI alpha 7 release. I created an MPI programs with pthreads. I ran with just 6 process, each thread making MPI calls concurrently with main thread. Things work fine . I use a TCP network. Some times i get a strange error message. I am sending some output of my program. - mca_btl_sm_send: write fifo failed: errno=9 P=1 Response sent for 8 to node 2 P= 1 listen:Itrcnt=3 RF-> P=5 resrc= 8 origin= 2 Prev node= 3 -> 1 P= 5 listen:Itrcnt=3 P= 3Recvd: Source= 5 tag= 5 RF-> P=3 resrc= 10 origin= 1 Prev node= 5 -> 2 P= 3 listen:Itrcnt=4 P= 2Recvd: Source= 3 tag= 4 P= 1Recvd: Source= 2 tag= 31 Yahoo! FP=1 Node=2 has 1 matches for 10 Hopcount=5 P=1 Req for 10 was fwded to 0 P=1 Index of 0 is 0 P=1 Updating neighbor index of 0 P=1 expbase[0]=1 P= 1 listen:Itrcnt=4 P=2 Response sent for 10 to node 1 P= 2 listen:Itrcnt=2 P= 2Recvd: Source= 1 tag= 31 Yahoo! FP=2 Node=1 has 1 matches for 8 Hopcount=3 P=2 Req for 8 was fwded to 3 P=2 Index of 3 is 1 P=2 Updating neighbor index of 3 P=2 expbase[1]=1 P= 2 listen:Itrcnt=3 P=5 RN=8 P=5 NA=8 RF-->3 P= 3Recvd: Source= 5 tag= 8 RF-> P=3 resrc= 8 origin= 5 Prev node= 5 -> 4 P= 3 listen:Itrcnt=5 P= 4Recvd: Source= 3 tag= 7 P= 3Recvd: Source= 4 tag= 6 RF-> P=4 resrc= 8 origin= 5 Prev node= 3 -> 3 P= 4 listen:Itrcnt=3 RF-> P=3 resrc= 8 origin= 5 Prev node= 4 -> 2 P= 3 listen:Itrcnt=6 P= 2Recvd: Source= 3 tag= 5 RF-> P=2 resrc= 8 origin= 5 Prev node= 3 -> 1 P= 2 listen:Itrcnt=4 P= 1Recvd: Source= 2 tag= 4 [Neelw5:12103] mca_btl_sm_send: write fifo failed: errno=9 -- Sometimes i get this error message, and sometimes not. I can say in a run of 7 i get once. But i get the output properly and the program works fine. I just wanted to know why that occured? Another one, i tried to get verbose output from "mpirun", but couldnt. Even "mpiexec". I was using the same command as mpirun -v -np 6 myprogram in lam, i used to get the verbose saying which process is running where. Here nothing happens. What is the problem? Otherwise how can i know what process is running on what node? Any suggestions?? Thanks in advance,, Regards, Imran "Jeff Squyres (jsquyres)" wrote: MPI_THREAD_MULITPLE is "somewhat" supported, meaning that support for it was designed in to Open MPI, but it has not been fully stress tested. As such, there is likely to still be bugs when using multiple user threads with MPI_THREAD_MULTIPLE. fork() is not technically supported by the MPI standard. If you *need* to fork(), you might want to look at alternate mechanisms if you need to move between multiple MPI implementations because support for it is not likely to be portable. Within Open MPI, fork() will almost certainly fail if you use the OS-bypass networks (Myrinet, InfiniBand). The mechanisms that these networks use for high-speed/low latency are quite problematic with fork(). If you are using tcp or shared memory, fork() *might* work, but this is not something that we have extensively tested. - From: users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf Of imran shaik Sent: Friday, May 26, 2006 1:50 AM To: openMPI mailing list Subject: [OMPI users] Thread Safety Hi, I am a newbie to OpenMPI. Can anyone say how the support for MPI_THREAD_MULTIPLE is implemented in openMPI? Is thread safety completely provided in openMPI? or does it still has some bugs? I am currently using LAM/MPI.But i need concurrent threads making MPI calls. So i am planning to move to another implementation of MPI. Can i choose openMPI? Also, is "fork"(for child preoces creation) still a no-no in openMPI too? Can a child process(forked) make concurrent MPI calls along with its parent ? __ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users - Yahoo! Messenger with Voice. PC-to-Phone calls for ridiculously low rates.
[OMPI users] mpirun hangs??
Hi jeff, Thanks, i have installed openMPI with the threads enabled option as per the readme file of openmpi. (alpha 7 of openmpi1.1) Hi have a problem with mpirun. 1)When there is no relevant executable present on the remote node where i want to launch the mpi process, mpirun just hangs without any error message. Shall i interpret it as no executable present?once i copy the executable to that node, it proceeds fine. Why no error message is given by mpirun, as in lam, no file found etc.. 2)when i launch many processes , oversubscribe a node heavily, it hangs. Neither error message, nor i cant do kind. For example a simple broadcast where each process executes a bcast call, with 110 processes per node.(My p4,256MPB ram,tcp network) ,it just hangs. 3)sometimes, for the same program with 45 process, it says 4 were killed automatically. I am afraid, at times. Anything wrong with my program or mpirun has some problem.? Regards, Imran "Jeff Squyres (jsquyres)" wrote: Based on your questions from the LAM list, I think you are actually asking how to get support for MPI_THREAD_MULTIPLE (which will include pthread support on Linux systems). Use the --enable-mpi-threads option to configure to enable support for MPI_THREAD_MULTIPLE (please see the README file for more details). Per the warning from my previous mail (http://www.open-mpi.org/community/lists/users/2006/05/1309.php), this support is only partially implemented and tested. - From: users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf Of imran shaik Sent: Friday, May 26, 2006 2:49 AM To: openMPI mailing list Subject: [OMPI users] Default configure options Hi, I want to use phtreads with openmpi. Does it configure with pthreads enabled by default or what options do i need to mention? Thanks, Imran - Do you Yahoo!? Everyone is raving about the all-new Yahoo! Mail Beta.___ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users - Ring'em or ping'em. Make PC-to-phone calls as low as 1ยข/min with Yahoo! Messenger with Voice.
[OMPI users] OpenMPI 1.0.3a1r10002 Fails to build with IBM XL Compilers.
I've attached the required logs. Essentially the problem seems to be that the XL Compilers fail to recognize "__asm__ __volatile__" in opal/include/sys/powerpc/atomic.h when building 64-bit. I've tried using various xlc wrappers such as gxlc and xlc_r to no avail. The current log uses xlc_r_64 which is just a one line shell script forcing the -q64 option. The same works flawlessly with gcc-4.1.0. I'm using the nightly build in order to link with Torque's new shared libraries. Any help would be greatly appreciated. For reference here are a few other things that may provide more information. node42 openmpi-1.0.3a1r10002 # uname -a Linux node42 2.6.16-ck6-r1-h1 #1 SMP Wed May 24 16:39:01 EDT 2006 ppc64 PPC970FX, altivec supported GNU/Linux node42 openmpi-1.0.3a1r10002 # gcc -v Reading specs from /usr/lib/gcc/powerpc64-unknown-linux-gnu/3.4.6/specs Configured with: /var/tmp/portage/gcc-3.4.6-r1/work/gcc-3.4.6/configure --prefix=/usr --bindir=/usr/powerpc64-unknown-linux-gnu/gcc-bin/3.4.6 --includedir=/usr/lib/gcc/powerpc64-unknown-linux-gnu/3.4.6/include --datadir=/usr/share/gcc-data/powerpc64-unknown-linux-gnu/3.4.6 --mandir=/usr/share/gcc-data/powerpc64-unknown-linux-gnu/3.4.6/man --infodir=/usr/share/gcc-data/powerpc64-unknown-linux-gnu/3.4.6/info --with-gxx-include-dir=/usr/lib/gcc/powerpc64-unknown-linux-gnu/3.4.6/include/g++-v3 --host=powerpc64-unknown-linux-gnu --build=powerpc64-unknown-linux-gnu --enable-altivec --enable-nls --without-included-gettext --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --enable-multilib --disable-libgcj --enable-languages=c,c++,f77 --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu Thread model: posix gcc version 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0, pie-8.7.9) Thanks, -- Justin Bronder University of Maine, Orono Advanced Computing Research Lab 20 Godfrey Dr Orono, ME 04473 www.clusters.umaine.edu Mathematics Department 425 Neville Hall Orono, ME 04469 ompi-build.tar.gz Description: application/gzip
Re: [OMPI users] OpenMPI 1.0.3a1r10002 Fails to build with IBM XL Compilers.
On May 27, 2006, at 10:01 AM, Justin Bronder wrote: I've attached the required logs. Essentially the problem seems to be that the XL Compilers fail to recognize "__asm__ __volatile__" in opal/include/sys/powerpc/atomic.h when building 64-bit. I've tried using various xlc wrappers such as gxlc and xlc_r to no avail. The current log uses xlc_r_64 which is just a one line shell script forcing the -q64 option. The same works flawlessly with gcc-4.1.0. I'm using the nightly build in order to link with Torque's new shared libraries. Any help would be greatly appreciated. For reference here are a few other things that may provide more information. Can you send the config.log file generated by configure? What else is in the xlc_r_64 shell script, other than the -q64 option? Thanks, Brian -- Brian Barrett Open MPI developer http://www.open-mpi.org/