Re: [OMPI users] pgi compiler configure problems
On Thu, Dec 14, 2006 at 03:28:25PM -0700, Brian W. Barrett wrote: > > It appears that this is being caused by a problem much earlier in the > configure process. For some reason I don't totally understand, the > configure script is finding the size of shorts, ints, longs, long > longs, void *s, etc. to be 2. This is rather unexpected on a 64-bit > machine, obviously. In testing with PGI 6.1-3 on x86_64, it looks > like the IPA option is causing this to occur -- if I remove the IPA > option from the flags, configure runs properly. > > In my (somewhat humble) opinion, turning on such aggressive options > is dangerous when compiling Open MPI (or most MPI implementations). > With share memory and RDMA interconnects, assumptions compiler > writers make when running at such high optimization setting are > frequently not true for codes like Open MPI. And the performance > gain in compiling the MPI layer with such high optimizations is > frequently near zero (that being said, there is a significant > advantage to adding some optimization flags and not including > debugging symbols in the MPI library if you don't need them). > > It should be safe to compile Open MPI without the IPA options and > still use IPA when compiling your application. > > brian, indeed that seems to have been the issue. thanks for the help! -- michael
Re: [OMPI users] Multiple definition of `malloc' and other symbols when doing static builds with mpif90
On Dec 13, 2006, at 4:15 PM, Dennis McRitchie wrote: When creating a static build of an MPI program, I get a number of fatal error messages, as listed below. They are all regarding conflicts between duplicate definitions and different sizes of malloc, free, realloc, etc. for the RHEL4 and openmpi versions of these functions. I could build openmpi with --without-memorymanager, but we are using infiniband and need the memory manager features. I am using openmpi v1.1.2 built against the Intel fortran compiler v9.1 on RHEL4. "/usr/local/openmpi-intel/bin/mpif90 -showme" returns: ifort -I/usr/local/openmpi-1.1.2-intel/include -pthread -I/usr/local/openmpi-1.1.2-intel/lib -L/usr/local/openmpi-1.1.2-intel/lib -lmpi_f90 -lmpi -lorte -lopal - lrt -lpbs -ldl -Wl,--export-dynamic -lnsl -lutil -ldl The offending line is the one that links the program. I've added the -v option so you can see all the utilities invoked below. Is there any way to prevent this behavior? The only way to prevent this behavior when building a static library is to disable the memory manager code in Open MPI. Note that this code is not required for use of the OpenIB, MVAPI, or GM transports, only to get peak bandwidth on applications with extremely high communication buffer reuse. In fact, the default operating mode for Open MPI is to not use the memory manager code for registration cache. So configure and recompile with --without-memory-manager and Open MPI will compile fine. You may also want to add the configure option -- disable-dlopen to silence some (but not all) of the other warnings. Brian -- Brian Barrett Open MPI Team, CCS-1 Los Alamos National Laboratory
[OMPI users] Big improvements in derived datatype performance on 1.2
Hi all, While doing some benchmarking with derived data types, I found that the prerelease Open MPI 1.2 is giving *much* better performance than Open MPI 1.1. My simple benchmark is a modified NetPIPE that sends/ receives data via a derived data type build with MPI_Contiguous(1, MPI_BYTE, ...) rather than MPI_BYTE. With Open MPI 1.1, this killed performance; with Open MPI 1.2, it had essentially no performance impact. Here's the NetPIPE chart, for reference: http://www.generic-programming.org/~dgregor/images/blog/netpipe- ompi.png This message was originally going to point out the performance issues with Open MPI 1.1, but instead I'll just say "Keep up the good work!" Cheers, Doug "even-if-I-were-objective-Open MPI-would-be-better" Gregor
Re: [OMPI users] Big improvements in derived datatype performance on 1.2
Doug, Thanks for the graph. I was wondering how do we compare with the others MPI implementations. If you have others MPI installed on your cluster can you do the same measurements with them and augment your graph with the results ? Thanks, george. On Dec 15, 2006, at 3:03 PM, Doug Gregor wrote: Hi all, While doing some benchmarking with derived data types, I found that the prerelease Open MPI 1.2 is giving *much* better performance than Open MPI 1.1. My simple benchmark is a modified NetPIPE that sends/ receives data via a derived data type build with MPI_Contiguous(1, MPI_BYTE, ...) rather than MPI_BYTE. With Open MPI 1.1, this killed performance; with Open MPI 1.2, it had essentially no performance impact. Here's the NetPIPE chart, for reference: http://www.generic-programming.org/~dgregor/images/blog/netpipe- ompi.png This message was originally going to point out the performance issues with Open MPI 1.1, but instead I'll just say "Keep up the good work!" Cheers, Doug "even-if-I-were-objective-Open MPI-would-be-better" Gregor ___ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users
[OMPI users] OpenMPI output problem, for IBM AIX 5.3
Hello, OpenMPI output issues when using IBM AIX 5.3 We have recently installed OpenMPI 1.1.2 (see attacched, ompi_inf -a output for detail). on an IBM AIX 5.3. We had no problem during installation and configration. "ompi_info -a" runs with no problem. Running our application we got no error or output from "printf", or "cout". So, we wrote a simple 10 line program, which basicly setup mpi and does a "printf" and "cout". We still didn't get any output from this program, when using MPI in a none debug mode. I find out that we get the output from this simple program if we add "--debug-daemons" to the mpirun commands. But, still for a more complex program we don't get any output even with the "--debug-daemons" flag. My question are 1 - why do we need a debug flag to get any output? 2 - does anyone has any recommendation on how to build an mpi application for IBM AIX 5.3 to get the output, without any debug flag. Thanks for any comments Nader, testMPI.log Description: Binary data