Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Jeff Squyres
(adding libtool-patc...@gnu.org)

Is this guaranteed to work for all versions of the PGI compiler?  I.e., does 
"pgCC -V" always return something in the form of (digit)+\. ?


On May 17, 2011, at 8:52 PM, Larry Baker wrote:

> This bug applies to OpenMPI 1.4.x and 1.5.x.
> 
> The libtool.m4 in config and opal/libltdl/m4 do not properly determine the 
> version of the PGI compiler, which then set the wrong compile/link options.  
> They interpret V11.4 (version no. begins with a 1), for example, as being a 
> V1 to V5 compiler.  There is a missing period in the pattern, so that only 
> text like 1.x through 5.x matches.
> 
> Here's the diff -u from OpenMPI 1.4.3 (same code, same bug):
> 
>> [root@hydra openmpi-1.4.3]# diff -u config/libtool.m4{.original,}
>> --- config/libtool.m4.original   2010-10-05 15:45:44.0 -0700
>> +++ config/libtool.m42011-05-17 15:32:31.0 -0700
>> @@ -5896,7 +5896,7 @@
>>pgCC* | pgcpp*)
>>  # Portland Group C++ compiler
>>  case `$CC -V` in
>> -*pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
>> +*pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
>>_LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
>>  rm -rf $tpldir~
>>  $CC --prelink_objects --instantiation_dir $tpldir $objs 
>> $libobjs $compile_deplibs~
> 
> Larry Baker
> US Geological Survey
> 650-329-5608
> ba...@usgs.gov
> 
> On 5 May 2011, at 7:15 AM, Jeff Squyres wrote:
> 
>> Fixed the ROMIO attribute problem properly this time -- it's in the usual 
>> place:
>> 
>>http://www.open-mpi.org/software/ompi/v1.4/
>> 
>> -- 
>> Jeff Squyres
>> jsquy...@cisco.com
>> For corporate legal information go to:
>> http://www.cisco.com/web/about/doing_business/legal/cri/
>> 
>> 
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> ___
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Jeff Squyres
Hmm.  This sounds right, but I'm a little curious as to why this never came up 
before.  What was the specific problem that caused you to add this patch?


On May 17, 2011, at 9:41 PM, Larry Baker wrote:

> This bug applies to OpenMPI 1.4.x and 1.5.x.
> 
> Inline assembly does not work for PGI compilers.  configure disables inline 
> assembly for PGI C, but neglects to do the same for PGI C++.  The code that 
> disables inline assembly for PGI C needs to be copied to the section that 
> handles inline assembly for C++.
> 
> Here's the diff -u from OpenMPI 1.4.3 (same code, same bug):
> 
>> [root@hydra openmpi-1.4.3]# diff -u configure{.original,}
>> --- configure.original   2010-10-05 15:48:18.0 -0700
>> +++ configure2011-05-17 18:35:04.0 -0700
>> @@ -34690,6 +34690,11 @@
>>  { $as_echo "$as_me:$LINENO: checking if $CXX supports GCC inline 
>> assembly" >&5
>>  $as_echo_n "checking if $CXX supports GCC inline assembly... " >&6; }
>>  
>> +if test "$ompi_cv_cxx_compiler_vendor" = "portland group" ; then
>> +# PGI seems to have some issues with our inline assembly.
>> +# Disable for now.
>> +asm_result="no (Portland Group)"
>> +else
>>  case $host in
>>  *-aix*)
>>  # the AIX compilers and linkers really don't do gcc
>> @@ -34813,6 +34818,7 @@
>>  rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
>>conftest$ac_exeext conftest.$ac_ext
>>  fi
>> +fi
>>  
>>  { $as_echo "$as_me:$LINENO: result: $asm_result" >&5
>>  $as_echo "$asm_result" >&6; }
> 
> Larry Baker
> US Geological Survey
> 650-329-5608
> ba...@usgs.gov
> 
> On 5 May 2011, at 7:15 AM, Jeff Squyres wrote:
> 
>> Fixed the ROMIO attribute problem properly this time -- it's in the usual 
>> place:
>> 
>>http://www.open-mpi.org/software/ompi/v1.4/
>> 
>> -- 
>> Jeff Squyres
>> jsquy...@cisco.com
>> For corporate legal information go to:
>> http://www.cisco.com/web/about/doing_business/legal/cri/
>> 
>> 
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> ___
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Larry Baker

Jeff,

Is this guaranteed to work for all versions of the PGI compiler?   
I.e., does "pgCC -V" always return something in the form of (digit)+ 
\. ?


I don't know, but I think so.  See your Nov 2009 discussion of this  
bug and Ralf Wildenhues' libtool.m4 patches at http://www.open-mpi.org/community/lists/users/2009/11/11277.php 
. 


Larry Baker
US Geological Survey
650-329-5608
ba...@usgs.gov

On 18 May 2011, at 5:50 AM, Jeff Squyres wrote:


(adding libtool-patc...@gnu.org)

Is this guaranteed to work for all versions of the PGI compiler?   
I.e., does "pgCC -V" always return something in the form of (digit)+ 
\. ?



On May 17, 2011, at 8:52 PM, Larry Baker wrote:


This bug applies to OpenMPI 1.4.x and 1.5.x.

The libtool.m4 in config and opal/libltdl/m4 do not properly  
determine the version of the PGI compiler, which then set the wrong  
compile/link options.  They interpret V11.4 (version no. begins  
with a 1), for example, as being a V1 to V5 compiler.  There is a  
missing period in the pattern, so that only text like 1.x through  
5.x matches.


Here's the diff -u from OpenMPI 1.4.3 (same code, same bug):


[root@hydra openmpi-1.4.3]# diff -u config/libtool.m4{.original,}
--- config/libtool.m4.original  2010-10-05 15:45:44.0 -0700
+++ config/libtool.m4   2011-05-17 15:32:31.0 -0700
@@ -5896,7 +5896,7 @@
  pgCC* | pgcpp*)
# Portland Group C++ compiler
case `$CC -V` in
-   *pgCC\ [[1-5]]* | *pgcpp\ [[1-5]]*)
+   *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
  _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
rm -rf $tpldir~
		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs  
$compile_deplibs~


Larry Baker
US Geological Survey
650-329-5608
ba...@usgs.gov

On 5 May 2011, at 7:15 AM, Jeff Squyres wrote:

Fixed the ROMIO attribute problem properly this time -- it's in  
the usual place:


  http://www.open-mpi.org/software/ompi/v1.4/

--
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel



--
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/


___
devel mailing list
de...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/devel




Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Paul H. Hargrove

Below is a sampling of "pgCC -V" outputs in response to Jeff's question.
The complete output looks like:

$ pgCC -V

pgCC 11.1-0 64-bit target on x86-64 Linux -tp nehalem
Copyright 1989-2000, The Portland Group, Inc.  All Rights Reserved.
Copyright 2000-2011, STMicroelectronics, Inc.  All Rights Reserved.

Including the initial blank line.

Here is the "important" line for a range of versions I can currently access:

pgCC 7.2-5 64-bit target on x86-64 Linux -tp gh-64
pgCC 8.0-6 64-bit target on x86-64 Linux -tp gh-64
pgCC 9.0-3 64-bit target on x86-64 Linux -tp nehalem-64
pgCC 10.8-0 64-bit target on x86-64 Linux -tp nehalem-64
pgCC 11.1-0 64-bit target on x86-64 Linux -tp nehalem

I am afraid my system w/ 5.x and 6.x versions was retired last month 
(not joking).
However, I found the following output for the C (not C++) compiler in my 
bug database:


pgcc 6.0-8 32-bit target on x86-64 Linux

And for their MacOSX port, there is a wrinkle.  As anybody who as dealt 
w/ mpicc vs mpiCC knows, Apple's filesystem  is case PRESERVING but 
case-insensitive.  So, there PGI's C++ compiler is "pgcpp" and the -V 
output (also from my bug database) looks like:


pgcpp 7.1-5 64-bit target on Apple OS/X


-Paul


On 5/18/2011 5:50 AM, Jeff Squyres wrote:

(addinglibtool-patc...@gnu.org)

Is this guaranteed to work for all versions of the PGI compiler?  I.e., does "pgCC 
-V" always return something in the form of (digit)+\. ?


--
Paul H. Hargrove  phhargr...@lbl.gov
Future Technologies Group
HPC Research Department   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900



Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Samuel K. Gutierrez
Here is the 'pgCC -V' output from versions that I have access to.

$ pgCC -V

pgCC 7.1-6 64-bit target on x86-64 Linux -tp gh-64 
Copyright 1989-2000, The Portland Group, Inc.  All Rights Reserved.
Copyright 2000-2007, STMicroelectronics, Inc.  All Rights Reserved.


$ pgCC -V

pgCC 9.0-3 64-bit target on x86-64 Linux -tp gh-64 
Copyright 1989-2000, The Portland Group, Inc.  All Rights Reserved.
Copyright 2000-2009, STMicroelectronics, Inc.  All Rights Reserved.


$ pgCC -V

pgCC 10.3-0 64-bit target on x86-64 Linux -tp istanbul-64 
Copyright 1989-2000, The Portland Group, Inc.  All Rights Reserved.
Copyright 2000-2010, STMicroelectronics, Inc.  All Rights Reserved.

--
Samuel Gutierrez
Los Alamos National Laboratory


On May 18, 2011, at 12:34 PM, Paul H. Hargrove wrote:

> Below is a sampling of "pgCC -V" outputs in response to Jeff's question.
> The complete output looks like:
> 
> $ pgCC -V
> 
> pgCC 11.1-0 64-bit target on x86-64 Linux -tp nehalem
> Copyright 1989-2000, The Portland Group, Inc.  All Rights Reserved.
> Copyright 2000-2011, STMicroelectronics, Inc.  All Rights Reserved.
> 
> Including the initial blank line.
> 
> Here is the "important" line for a range of versions I can currently access:
> 
> pgCC 7.2-5 64-bit target on x86-64 Linux -tp gh-64
> pgCC 8.0-6 64-bit target on x86-64 Linux -tp gh-64
> pgCC 9.0-3 64-bit target on x86-64 Linux -tp nehalem-64
> pgCC 10.8-0 64-bit target on x86-64 Linux -tp nehalem-64
> pgCC 11.1-0 64-bit target on x86-64 Linux -tp nehalem
> 
> I am afraid my system w/ 5.x and 6.x versions was retired last month (not 
> joking).
> However, I found the following output for the C (not C++) compiler in my bug 
> database:
> 
> pgcc 6.0-8 32-bit target on x86-64 Linux
> 
> And for their MacOSX port, there is a wrinkle.  As anybody who as dealt w/ 
> mpicc vs mpiCC knows, Apple's filesystem  is case PRESERVING but 
> case-insensitive.  So, there PGI's C++ compiler is "pgcpp" and the -V output 
> (also from my bug database) looks like:
> 
> pgcpp 7.1-5 64-bit target on Apple OS/X
> 
> 
> -Paul
> 
> 
> On 5/18/2011 5:50 AM, Jeff Squyres wrote:
>> (addinglibtool-patc...@gnu.org)
>> 
>> Is this guaranteed to work for all versions of the PGI compiler?  I.e., does 
>> "pgCC -V" always return something in the form of (digit)+\. ?
> 
> -- 
> Paul H. Hargrove  phhargr...@lbl.gov
> Future Technologies Group
> HPC Research Department   Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
> 
> ___
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel




Re: [OMPI devel] 1.4.4rc2 is up

2011-05-18 Thread Larry Baker
Jeff,Hmm.  This sounds right, but I'm a little curious as to why this never came up before.I reported this, as well as several others, in August 2010, "Fixes to OpenMPI-1.4.2 for PGI compilers".  (Attached are my patches for OpenMPI 1.4.2.)  At that time I was using the PGI 10.x compilers.What was the specific problem that caused you to add this patch?These warning messages are from PGI C++ 11.4 for the assembly language macros in OpenMPI 1.4.3 opal/include/opal/sys/amd64/atomic.h:libtool: compile:  pgcpp -m64 -DHAVE_CONFIG_H -I. -I../../../opal/include -I../../../orte/include -I../../../ompi/include -I../../../opal/mca/paffinity/linux/plpa/src/libplpa -DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../.. -D_REENTRANT -DNDEBUG -g -O3 -DNO_PGI_OFFSET -c mpicxx.cc  -fpic -DPIC -o .libs/mpicxx.o"../../../opal/include/opal/sys/amd64/atomic.h", line 91: warning: "cc"          clobber ignored                         : "memory", "cc");                                     ^"../../../opal/include/opal/sys/amd64/atomic.h", line 83: warning: parameter          "oldval" was set but never used                                          int32_t oldval, int32_t newval)                                                  ^"../../../opal/include/opal/sys/amd64/atomic.h", line 112: warning: "cc"          clobber ignored                         : "memory", "cc"                                     ^"../../../opal/include/opal/sys/amd64/atomic.h", line 104: warning: parameter          "oldval" was set but never used                                           int64_t oldval, int64_t newval)                                                   ^configure defines OMPI_CXX_GCC_INLINE_ASSEMBLY as 1 in opal/include/opal_config.h (unlike OMPI_C_GCC_INLINE_ASSEMBLY, which is defined as 0), which causes the assembly language macros to be used:# find . -name \*.h -exec grep \#define.\*OMPI_.\*_INLINE_ASSEMBLY {} ';' -print#define OMPI_CXX_DEC_INLINE_ASSEMBLY 0#define OMPI_CXX_GCC_INLINE_ASSEMBLY 1#define OMPI_CXX_XLC_INLINE_ASSEMBLY 0#define OMPI_C_DEC_INLINE_ASSEMBLY 0#define OMPI_C_GCC_INLINE_ASSEMBLY 0#define OMPI_C_XLC_INLINE_ASSEMBLY 0./opal/include/opal_config.h Larry BakerUS Geological Survey650-329-5608ba...@usgs.gov On 18 May 2011, at 6:17 AM, Jeff Squyres wrote:Hmm.  This sounds right, but I'm a little curious as to why this never came up before.  What was the specific problem that caused you to add this patch?On May 17, 2011, at 9:41 PM, Larry Baker wrote:This bug applies to OpenMPI 1.4.x and 1.5.x.Inline assembly does not work for PGI compilers.  configure disables inline assembly for PGI C, but neglects to do the same for PGI C++.  The code that disables inline assembly for PGI C needs to be copied to the section that handles inline assembly for C++.Here's the diff -u from OpenMPI 1.4.3 (same code, same bug):[root@hydra openmpi-1.4.3]# diff -u configure{.original,}--- configure.original	2010-10-05 15:48:18.0 -0700+++ configure	2011-05-17 18:35:04.0 -0700@@ -34690,6 +34690,11 @@ { $as_echo "$as_me:$LINENO: checking if $CXX supports GCC inline assembly" >&5 $as_echo_n "checking if $CXX supports GCC inline assembly... " >&6; }+    if test "$ompi_cv_cxx_compiler_vendor" = "portland group" ; then+    # PGI seems to have some issues with our inline assembly.+    # Disable for now.+    asm_result="no (Portland Group)"+    else case $host in *-aix*) # the AIX compilers and linkers really don't do gcc@@ -34813,6 +34818,7 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \   conftest$ac_exeext conftest.$ac_ext fi+    fi { $as_echo "$as_me:$LINENO: result: $asm_result" >&5 $as_echo "$asm_result" >&6; }Larry BakerUS Geological Survey650-329-5608ba...@usgs.govOn 5 May 2011, at 7:15 AM, Jeff Squyres wrote:Fixed the ROMIO attribute problem properly this time -- it's in the usual place:   http://www.open-mpi.org/software/ompi/v1.4/-- Jeff Squyresjsquy...@cisco.comFor corporate legal information go to:http://www.cisco.com/web/about/doing_business/legal/cri/___devel mailing listde...@open-mpi.orghttp://www.open-mpi.org/mailman/listinfo.cgi/devel___devel mailing listde...@open-mpi.orghttp://www.open-mpi.org/mailman/listinfo.cgi/devel-- Jeff Squyresjsquy...@cisco.comFor corporate legal information go to:http://www.cisco.com/web/about/doing_business/legal/cri/___devel mailing listde...@open-mpi.orghttp://www.open-mpi.org/mailman/listinfo.cgi/devel

patch-openmpi-1.4.2.sh
Description: Binary data


[OMPI devel] SSE instructions?

2011-05-18 Thread Larry Baker
The PGI compilers have a -fast and a -fastsse option.  Does OpenMPI  
make effective/safe use of SSE instructions (block moves maybe?)?  On  
their web site, PGI uses -fast in their examples for OpenMPI rather  
than -fastsse.  I don't know why.


Larry Baker
US Geological Survey
650-329-5608
ba...@usgs.gov