Re: [OMPI users] users Digest, Vol 1052, Issue 10
Hi Allan I'm glad that it fixed your problem! I didn't see any IPv4 addresses in your ifconfig output, so I suspect that is why it wasn't working with --disable-ipv6. So I guess it sounds like the 1.2 series isn't actually disabling IPv6 support when we --disable-ipv6 if nothing but IPv6 interfaces are available. I doubt we'll go back to fix that, but it is good to know. Thanks for the patience Ralph On Oct 31, 2008, at 6:47 PM, Allan Menezes wrote: users-requ...@open-mpi.org wrote: Send users mailing list submissions to us...@open-mpi.org To subscribe or unsubscribe via the World Wide Web, visit http://www.open-mpi.org/mailman/listinfo.cgi/users or, via email, send a message with subject or body 'help' to users-requ...@open-mpi.org You can reach the person managing the list at users-ow...@open-mpi.org When replying, please edit your Subject line so it is more specific than "Re: Contents of users digest..." Today's Topics: 1. Re: Problem with openmpi version 1.3b1 beta1 (Ralph Castain) 2. Re: problem running Open MPI on Cells (Mi Yan) Hi Ralph, I solved the problem. With Ver 1.28 same system this configure works ./configure --prefix=/opt/openmpi128 --enable-mpi-threads --with- threads=posix --disable-ipv6 but does not work with any ver 1.3 beacuse of ipv6 so to fix it i rebuilt it after make clean with ipv6 enabled and it works! This configure for ver 1.3 works on my system ./configure --prefix=/opt/openmpi128 --enable-mpi-threads --with- threads=posix Do you still want the old or the new config.log? Allan Menezes -- Message: 1 Date: Fri, 31 Oct 2008 17:02:15 -0600 From: Ralph Castain Subject: Re: [OMPI users] Problem with openmpi version 1.3b1 beta1 To: Open MPI Users Message-ID: <6bcb1362-ea2c-4b4b-ab1a-367ed7739...@lanl.gov> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes I see you are using IPv6. From what I can tell, we do enable that support by default if the underlying system supports it. My best guess is that either that support is broken (we never test it since none of us use IPv6), or our configure system isn't properly detecting that it exists. Can you attach a copy of your config.log? It will tell us what the system thinks it should be building. Thanks Ralph On Oct 31, 2008, at 4:54 PM, Allan Menezes wrote: Date: Fri, 31 Oct 2008 09:34:52 -0600 From: Ralph Castain Subject: Re: [OMPI users] users Digest, Vol 1052, Issue 1 To: Open MPI Users Message-ID: <0cf28492-b13e-4f82-ac43-c1580f079...@lanl.gov> Content-Type: text/plain; charset="us-ascii"; Format="flowed"; DelSp="yes" It looks like the daemon isn't seeing the other interface address on host x2. Can you ssh to x2 and send the contents of ifconfig -a? Ralph On Oct 31, 2008, at 9:18 AM, Allan Menezes wrote: users-requ...@open-mpi.org wrote: Send users mailing list submissions to us...@open-mpi.org To subscribe or unsubscribe via the World Wide Web, visit http://www.open-mpi.org/mailman/listinfo.cgi/users or, via email, send a message with subject or body 'help' to users-requ...@open-mpi.org You can reach the person managing the list at users-ow...@open-mpi.org When replying, please edit your Subject line so it is more specific than "Re: Contents of users digest..." Today's Topics: 1. Openmpi ver1.3beta1 (Allan Menezes) 2. Re: Openmpi ver1.3beta1 (Ralph Castain) 3. Re: Equivalent .h files (Benjamin Lamptey) 4. Re: Equivalent .h files (Jeff Squyres) 5. ompi-checkpoint is hanging (Matthias Hovestadt) 6. unsubscibe (Bertrand P. S. Russell) 7. Re: ompi-checkpoint is hanging (Tim Mattox) -- Message: 1 Date: Fri, 31 Oct 2008 02:06:09 -0400 From: Allan Menezes Subject: [OMPI users] Openmpi ver1.3beta1 To: us...@open-mpi.org Message-ID: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Hi, I built open mpi version 1.3b1 withe following cofigure command: ./configure --prefix=/opt/openmpi13b1 --enable-mpi-threads --with-threads=posix --disable-ipv6 I have six nodes x1..6 I distributed the /opt/openmpi13b1 with scp to all other nodes from the head node When i run the following command: mpirun --prefix /opt/openmpi13b1 --host x1 hostname it works on x1 printing out the hostname of x1 But when i type mpirun --prefix /opt/openmpi13b1 --host x2 hostname it hangs and does not give me any output I have a 6 node intel quad core cluster with OSCAR and pci express gigabit ethernet for eth0 Can somebody advise? Thank you very much. Allan Menezes -- Message: 2 Date: Fri, 31 Oct 2008 02:41:59 -0600 From: Ralph Castain Subject: Re: [OMPI users] Openmpi ver1.3beta1 To: Open MPI Users Message-ID: Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes When you typed the --host x1 command
Re: [OMPI users] problem running Open MPI on Cells
On Oct 31, 2008, at 4:52 PM, Gilbert Grosdidier wrote: To monitor the environment from inside the application, it could be useful to issue a 'system("printenv")' call at the very beginning of the main program, even before (and after, btw) the MPI_Init call, when running in serial job mode with a single CAB, using mpirun. Note that it may not be safe to call system(), depending on your environment. It might be better to getenv() to look for the specific environment variable that you're looking for, or loop over environ to show the entire environment. You can also use the -x option to mpirun to export a specific environment variable to all the MPI processes. If you're using the rsh/ssh launcher, OMPI won't automatically export mpirun's entire environment to the MPI processes. -- Jeff Squyres Cisco Systems
Re: [OMPI users] MPI + Mixed language coding(Fortran90 + C++)
On Oct 31, 2008, at 3:07 PM, Rajesh Ramaya wrote: Thank you very much for the immediate reply. I am able to successfully access the data from the common block but the values are zero. In my algorithm I even update a common block but the update made by the shared library is not taken in to account by the executable. Can you reduce this to a small example that you can share, perchance? It might be worth stepping through one of your MPI processes with a debugger and see what the run-time-resolved addresses for your common block are, as viewed from each of the different entities in your application (to see if the linker is somehow mismatching them... that's a pretty wild guess, though). Can you please be very specific how to make the parallel algorithm aware of the data? All I was trying to [poorly] say is that based on whatever parallel algorithm is being used, all the data may now not be available in all MPI processes -- it may only be partially available in each MPI process. So it may not be that the entire common block is empty, but perhaps only part of it (because this MPI process is not responsible for that part of the data). This is entirely problem/application- specific, of course, and may or may not apply to your situation. Actually I am not writing any MPI code inside? It's the executable (third party software) who does that part. All that I am doing is to compile my code with MPI c compiler and add it in the LD_LIBIRARY_PATH. In fact I did a simple test by creating a shared library using a FORTRAN code and the update made to the common block is taken in to account by the executable. Is there any flag or pragma that need to be activated for mixed language MPI? No, there shouldn't be. -- Jeff Squyres Cisco Systems
Re: [OMPI users] problem running Open MPI on Cells
On Nov 1, 2008, at 7:39 AM, Jeff Squyres wrote: On Oct 31, 2008, at 4:52 PM, Gilbert Grosdidier wrote: To monitor the environment from inside the application, it could be useful to issue a 'system("printenv")' call at the very beginning of the main program, even before (and after, btw) the MPI_Init call, when running in serial job mode with a single CAB, using mpirun. Note that it may not be safe to call system(), depending on your environment. It might be better to getenv() to look for the specific environment variable that you're looking for, or loop over environ to show the entire environment. Thanks for the heads up about system(). It seems to be working for me, but I'll be sure to remember that tidbit for the future. I've tried printing out the environment variables from within the program and it appears to set the MCS_LICENSE_PATH environment variable correctly. One thing to note is that I once accidently set the variable to the wrong path. When I tried running my program, it printed an error stating that the license file could not be found. When I fixed the path to the correct location, it printed the error I described in my original post, i.e. invalid license. This indicates to me that it is able to find and access the license file, but for some reason is interpreting the licenses contained in the file as invalid. You can also use the -x option to mpirun to export a specific environment variable to all the MPI processes. If you're using the rsh/ssh launcher, OMPI won't automatically export mpirun's entire environment to the MPI processes. This is exactly what I'm doing, I'm using the -x option to set MCS_LICENSE_PATH on all the CABs. In fact, I was the one who posted a few weeks about having a problem setting environment variables when launching onto a node that is running /bin/sh. I saw that the fix for this is included in 1.2.8, but at this point, we're so close to our deadline I'm wary of spending the time to recompile OpenMPI for the CABs, which is, unfortunately, not a straightforward process. A quick update: I've fixed the whole problem by linking our application to the previous version of MCF, i.e. 1.0, which didn't use a runtime license. We did most of our development on 1.0 and we're not using any new features in the current version, i.e. 2.0, so downgrading back to 1.0 doesn't really impact us. Thanks to everyone who responded. At some point, I would like to figure out what's causing this problem. To be honest, it may not even be a problem with OpenMPI. It's possible that we have something misconfigured on our system that causing this problem. When I get some free time (ha!), I may try to see if I can replicate this problem using MPICH2, if I can get MPICH2 to compile for the CABs. Hahn -- Jeff Squyres Cisco Systems ___ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users -- Hahn Kim, h...@ll.mit.edu MIT Lincoln Laboratory 244 Wood St., Lexington, MA 02420 Tel: 781-981-0940, Fax: 781-981-5255
Re: [OMPI users] MPI + Mixed language coding(Fortran90 + C++)
So your tests show: 1. "Shared library in FORTRAN + MPI executable in FORTRAN" works. 2. "Shared library in C++ + MPI executable in FORTRAN " does not work. It seems to me that the symbols in C library are not really recognized by FORTRAN executable as you thought.What compilers did yo use to built OpenMPI? Different compiler has different convention to handle symbols. E.g. if there is a variable "var_foo" in your FORTRAN code, some FORTRN compiler will save "var_foo_" in the object file by default; if you want to access "var_foo" in C code, you actually need to refer "var_foo_" in C code. If you define "var_foo" in a module in the FORTAN compiler, some FORTRAN compiler may append the module name to "var_foo". So I suggest to check the symbols in the object files generated by your FORTAN and C compiler to see the difference. Mi "Rajesh Ramaya" To Sent by: "'Open MPI Users'" users-bounces@ope , "'Jeff n-mpi.org Squyres'" cc 10/31/2008 03:07 Subject PMRe: [OMPI users] MPI + Mixed language coding(Fortran90 + C++) Please respond to Open MPI Users Hello Jeff Squyres, Thank you very much for the immediate reply. I am able to successfully access the data from the common block but the values are zero. In my algorithm I even update a common block but the update made by the shared library is not taken in to account by the executable. Can you please be very specific how to make the parallel algorithm aware of the data? Actually I am not writing any MPI code inside? It's the executable (third party software) who does that part. All that I am doing is to compile my code with MPI c compiler and add it in the LD_LIBIRARY_PATH. In fact I did a simple test by creating a shared library using a FORTRAN code and the update made to the common block is taken in to account by the executable. Is there any flag or pragma that need to be activated for mixed language MPI? Thank you once again for the reply. Rajesh -Original Message- From: users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf Of Jeff Squyres Sent: vendredi 31 octobre 2008 18:53 To: Open MPI Users Subject: Re: [OMPI users] MPI + Mixed language coding(Fortran90 + C++) On Oct 31, 2008, at 11:57 AM, Rajesh Ramaya wrote: > I am completely new to MPI. I have a basic question concerning > MPI and mixed language coding. I hope any of you could help me out. > Is it possible to access FORTRAN common blocks in C++ in a MPI > compiled code. It works without MPI but as soon I switch to MPI the > access of common block does not work anymore. > I have a Linux MPI executable which loads a shared library at > runtime and resolves all undefined symbols etc The shared library > is written in C++ and the MPI executable in written in FORTRAN. Some > of the input that the shared library looking for are in the Fortran > common blocks. As I access those common blocks during runtime the > values are not initialized. I would like to know if what I am > doing is possible ?I hope that my problem is clear.. Generally, MPI should not get in the way of sharing common blocks between Fortran and C/C++. Indeed, in Open MPI itself, we share a few common blocks between Fortran and the main C Open MPI implementation. What is the exact symptom that you are seeing? Is the application failing to resolve symbols at run-time, possibly indicating that something hasn't instantiated a common block? Or are you able to successfully access the data from the common block, but it doesn't have the values you expect (e.g., perhaps you're seeing all zeros)? If the former, you might want to check your build procedure. You *should* be able to simply replace your C++ / F90 compilers with mpicxx and mpif90, respectively, and be able to build an MPI version of your app. If the latter, you might need to make your parallel algorithm aware of what data is available in which MPI process -- perhaps not all the data is filled in on each MPI process...? -- Jeff Squyres Cisco Systems _