From 8c31ab1deefac5c1ba301faaaf0269a3ad39e5b9 Mon Sep 17 00:00:00 2001 From: Jeff Squyres Date: Tue, 29 Nov 2005 01:06:44 +0000 Subject: [PATCH] Update README and NEWS about Fortran .TRUE. handling. This commit was SVN r8297. --- NEWS | 2 ++ README | 53 ++++------------------------------------------------- 2 files changed, 6 insertions(+), 49 deletions(-) diff --git a/NEWS b/NEWS index a0beba1894..79d81c9d3b 100644 --- a/NEWS +++ b/NEWS @@ -29,6 +29,8 @@ version 1.0. 1.0.1 ----- +- Fix so that Open MPI correctly handles the Fortran value for .TRUE., + regardless of what the Fortran compiler's value for .TRUE. is. - Improved scalability of MX startup. - Fix datatype offset handling in the coll basic component's MPI_SCATTERV implementation. diff --git a/README b/README index 1f2d458fd8..31d25b0c12 100644 --- a/README +++ b/README @@ -104,54 +104,6 @@ base as of this writing (21 Nov 2005): Tests with later versions show that this has been fixed (e.g., v6.0-5). -- The Portland Group Fortran compilers use -1 as the default value for - .TRUE. Open MPI does not currently handle this correctly. As such, - the "-Munixlogical" option must be used with the Portland Fortran - compiler to force it to use 1 as the value for .TRUE. - - ****************************************************************** - *** NOTE: It is also necessary to compile all MPI applications *** - *** with these flags! *** - ****************************************************************** - - The Open MPI team recommends using setting FFLAGS and FCFLAGS as - well as using the --with-wrapper-fflags and --with-wrapper-fcflags - arguments to configure. This both compiles Open MPI and all MPI - applications (that are compiled with mpif77 or mpif90) with the - appropriate compiler flags. For example: - - shell$ ./configure \ - FFLAGS=-Munixlogical \ - FCFLAGS=-Munixlogical \ - --with-wrapper-fflags=-Munixlogical \ - --with-wrapper-fcflags=-Munixlogical ... - - This will be fixed in a future version of Open MPI. - -- For any version of the Intel compiler >= 8.0, the default value for - .TRUE. is -1. Open MPI does not currently handle this correctly. - As such, the "-fpscomp logicals" option must be used with the Intel - Fortran compiler in to force it to use 1 as the value for .TRUE. - - ****************************************************************** - *** NOTE: It is also necessary to compile all MPI applications *** - *** with these flags! *** - ****************************************************************** - - The Open MPI team recommends using setting FFLAGS and FCFLAGS as - well as using the --with-wrapper-fflags and --with-wrapper-fcflags - arguments to configure. This both compiles Open MPI and all MPI - applications (that are compiled with mpif77 or mpif90) with the - appropriate compiler flags. For example: - - shell$ ./configure \ - "FFLAGS=-fpscomp logicals" \ - "FCLAGS=-fpscomp logicals" \ - "--with-wrapper-fflags=-fpscomp logicals" \ - "--with-wrapper-fcflags=-fpscomp logicals" - - This will be fixed in a future version of Open MPI. - - Open MPI will build bindings suitable for all common forms of Fortran 77 compiler symbol mangling on platforms that support it (e.g., Linux). On platforms that do not support weak symbols (e.g., @@ -179,7 +131,10 @@ base as of this writing (21 Nov 2005): .TRUE. constant. As such, any MPI function that uses the fortran LOGICAL type may only get .TRUE. values back that correspond to the the .TRUE. value of the Fortran compiler that Open MPI was - configured with. + configured with. Note that some Fortran compilers allow forcing + .TRUE. to be 1 and .FALSE. to be 0. For example, the Portland + Group compilers provide the "-Munixlogical" option, and Intel + compilers (version >= 8.) provide the "-fpscomp logicals" option. You can use the ompi_info command to see the Fortran compiler that Open MPI was configured with.