1
1

117 Коммитов

Автор SHA1 Сообщение Дата
Nathan Hjelm
1c75aa82fc use-mpi-f08: fix rma function signatures
The various RMA functions need to have the asynchronous property on
all buffers. This property was missing and some buffers were
incorrectly marked as intent(in). This commit fixes the function
signatures.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2018-03-26 15:11:07 -06:00
KAWASHIMA Takahiro
710080be63
Merge pull request #4667 from kawashima-fj/pr/f08-pmpi
fortran: Fix PMPI interface bugs in mpi_f08 module
2018-01-05 03:45:10 -06:00
KAWASHIMA Takahiro
bd2fe9c324 fortran: Call PMPI from PMPI_Status_set_cancelled_f08
This is a bug which was forgotten to change in c08f97b0304.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 15:53:12 +09:00
KAWASHIMA Takahiro
00e3c7a973 fortran: Align indentation
This change makes comparison of `mpi-f08-interfaces.F90` and
`pmpi-f08-interfaces.F90` easier.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 14:39:09 +09:00
KAWASHIMA Takahiro
056eb39b12 fortran: Correct type of info_used
It is incorrectly typed as `MPI_Comm` in only `pmpi` in 24f7bd327e3.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 14:39:09 +09:00
KAWASHIMA Takahiro
0c3a534b32 fortran: Use C_PTR for buffer_addr
It was changed to use `C_PTR` in only `mpi` in fc69c0be247.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 14:39:09 +09:00
KAWASHIMA Takahiro
d4fc404dc6 fortran: Change PMPI_Aint_{add,diff} to functions.
They were incorrectly changed to subroutines in only `pmpi`
in 258d1aa1607.

Strictly speaking, this change involves binary incompatibility.
But nobody used these subroutines and nobody will be affected because
these subroutines were useless (didn't return a calculated value).

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 14:39:09 +09:00
KAWASHIMA Takahiro
9240967b8f fortran: Remove ASYNCHRONOUS from mpi_f08 pmpi
It was removed from only `mpi` as a bug fix in db41d749c1a.

Signed-off-by: KAWASHIMA Takahiro <t-kawashima@jp.fujitsu.com>
2017-12-26 14:39:09 +09:00
Tsubasa Yanagibashi
3f4b373856 Add missing Fortran 2008 binding subroutines
added missing Fortran 2008 binding pmpi_{*} subroutines to Open MPI.

Signed-off-by: Tsubasa Yanagibashi <fj2505dt@aa.jp.fujitsu.com>
2017-12-22 13:45:53 +09:00
Gilles Gouaillardet
b9315edb85 configury: remove the --disable-mpi-io option
Fixes open-mpi/ompi#2185

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-09-20 14:39:09 +09:00
Gilles Gouaillardet
2c71c27882 fortran2008: fix mpiext example
in order to solve an egg and the chicken problem,  in which mpiext need mpi-f08-types.mod
and/but use-mpi-f08[-desc] needs mpiext, add an extra step
- build fortran 2008 modules only
- build fortran 2008 mpi extensions
- and then build fortran 2008 bindings

Fixes open-mpi/ompi#3605

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-08-09 13:19:22 +09:00
Gilles Gouaillardet
96b00b0fcf f08: make procedure(MPI_User_function) type available from mpi_f08
Refs. open-mpi/ompi#3409

Thanks Nathan T. Weeks for the report

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
2017-04-25 13:33:00 +09:00
Ralph Castain
1e2019ce2a Revert "Update to sync with OMPI master and cleanup to build"
This reverts commit cb55c88a8b7817d5891ff06a447ea190b0e77479.
2016-11-22 15:03:20 -08:00
Ralph Castain
cb55c88a8b Update to sync with OMPI master and cleanup to build
Signed-off-by: Ralph Castain <rhc@open-mpi.org>
2016-11-22 14:24:54 -08:00
Joshua Hursey
f6f24a4f67 build: Custom libmpi(_FOO) name option in configure
* Add a configure time option to rename libmpi(_FOO).*
   - `--with-libmpi-name=STRING`
 * This commit only impacts the installed libraries.
   Internal, temporary libraries have not been renamed to limit the
   scope of the patch to only what is needed.

For example:
```shell
shell$ ./configure --with-libmpi-name=wookie
...
shell$ find . -name "libmpi*"
shell$ find . -name "libwookie*"
./lib/libwookie.so.0.0.0
./lib/libwookie.so.0
./lib/libwookie.so
./lib/libwookie.la
./lib/libwookie_mpifh.so.0.0.0
./lib/libwookie_mpifh.so.0
./lib/libwookie_mpifh.so
./lib/libwookie_mpifh.la
./lib/libwookie_usempi.so.0.0.0
./lib/libwookie_usempi.so.0
./lib/libwookie_usempi.so
./lib/libwookie_usempi.la
shell$
```
2016-09-29 21:47:24 -05:00
Gilles Gouaillardet
cda094afc7 mpi_f08: correctly implements MPI_{COMM,TYPE,WIN}_{DUP,NULL_{COPY,DELETE}}_FN
Fixes open-mpi/ompi#1323
2016-02-02 13:38:01 +09:00
Gilles Gouaillardet
728a97c558 use-mpi-f08: remove duplicates from Makefile.am 2016-02-02 13:33:07 +09:00
Gilles Gouaillardet
704f14f91e f08: do not BIND(C) to subroutines with LOGICAL parameters
Thanks Paul Romano for reporting this issue.
2016-01-26 13:56:24 +09:00
Gilles Gouaillardet
1105634ca1 mpi_f08: fix MPI_WIN_{ATTACH,DETACH} bindings
fixes INTENT from open-mpi/ompi@9600e2bc63

Thanks Jeff for pointing this !
2015-10-26 10:02:45 +09:00
Jeff Squyres
2b9c9f3093 Fortran: add missing MPI_AINT in mpi_f08 module 2015-10-14 17:32:01 -07:00
Gilles Gouaillardet
291a464efb configury: remove the --enable-mpi-profiling option
and directly call the PMPI_* symbols from C and Fortran bindings
2015-10-13 08:52:35 +09:00
Jeff Squyres
596557e61b Fortran: update a comment
Split the list of subroutines into cases #1 and #2, just for clarity.
2015-08-31 03:10:09 -07:00
Zhi Ming Wang
c8d4751ae6 Correct the wrong "Name Binding" of functions 2015-08-28 03:28:09 -04:00
Gilles Gouaillardet
99730f798b fortran: (try to) align C objects used by Fortran
Fortran uses objects (ompi_f08_mpi_comm_world, mpi_fortran_bottom,, ...) that are defined in C.
Some compilers have different requirements on how these objects should be aligned.
Smaller alignment in C can lead to several confusing warnings from the linker, so try to
find the alignment expected by Fortran compiler, and inform the C compiler.
2015-08-18 14:01:20 +09:00
Gilles Gouaillardet
9c77c6b66d fortran: fix f08 bindings
only define the unique fortran symbol depending on
 - CAPS
 - PLAIN
 - SINGLE_UNDERSCORE
 - DOUBLE_UNDERSCORE
and bind the f08 symbol to the uniquely defined C symbol.

Use real data structures to make the code simpler.
(perl script written by Jeff)
2015-07-27 16:28:57 +09:00
Gilles Gouaillardet
7af5238595 f08: misc Makefile fixes 2015-07-27 16:19:44 +09:00
Edgar Gabriel
95c144c4b6 make the f08 interface actually compile. 2015-07-09 10:58:14 -05:00
Edgar Gabriel
19994ff60d add fortran interfaces to the new nb collective I/O functions 2015-07-09 10:58:14 -05:00
Jeff Squyres
d5e16839e9 mpi_f08: restore C/Fortran compatibility with F08 BUFFER_DETACH
The C int/Fint interoperability code was erroneously removed when this
function was moved to the use-mpi-f08 directory.
2015-07-08 03:55:50 -07:00
Jeff Squyres
8ff60c47cc mpi_f08: move the f08 version of buffer_detach to use-mpi-f08
@ggouaillardet was right -- we should have put the
ompi_buffer_detach_f08() function in the use-mpi-f08 directory to
begin with.  Putting it in the mpif-h directory made it complicated as
to whether the function would be built or not (e.g., whether weak
symbols were supported or not, whether the profiling layer was
disabled or not, ...etc.).

Just put it in the use-mpi-f08 directory and always build it (when the
mpi_f08 module is built, of course), and keep it simple.
2015-07-07 07:38:09 -07:00
Jeff Squyres
bd94da7de4 mpi_f08: fix MPI_BUFFER_DETACH interfaces
Add an mpi_f08-specific implementation for MPI_BUFFER_DETACH.

Per MPI-3.1:3.6, p45, the buffer argument is ignored in
MPI_BUFFER_DETACH for mpif.h and the mpi module.  But in the mpi_f08
module, the buffer argument is treated like it is in the C binding.
2015-07-03 08:56:34 -07:00
Gilles Gouaillardet
fa50e0d712 mpi_f08: fix typo in binding name
replace MPI_Win_flush_all_local with MPI_Win_flush_local_all
2015-07-02 15:47:38 +09:00
Gilles Gouaillardet
c4025f55a4 mpi_f08: add MPI_Type_size_x and misc PMPI_xxx bindings 2015-06-30 16:31:14 +09:00
Gilles Gouaillardet
18fd30a173 mpi_f08: fix MPI_FREE_MEM binding 2015-06-30 14:19:50 +09:00
Gilles Gouaillardet
13950c3ec1 mpi_f08: fix MPI_WIN_{ATTACH,DETACH} bindings
fixes INTENT from open-mpi/ompi@9600e2bc63
2015-06-30 12:28:23 +09:00
Gilles Gouaillardet
86bbdd2ebe mpi_f08: fix MPI_COMM_SPAWN_MULTIPLE binding 2015-06-30 11:47:45 +09:00
Jeff Squyres
fc69c0be24 mpi_f08: fix MPI_BUFFER_DETACH binding 2015-06-29 09:22:30 -07:00
Gilles Gouaillardet
98bf02485d fortran: add Fortran 2008 bindings for attr_fn (MPI_COMM_DUP_FN and friends)
Fixes open-mpi/ompi#460
2015-06-26 15:21:30 +09:00
Nathan Hjelm
458cd9d611 Merge pull request #629 from hjelmn/aint_math
Add support for MPI-3.1 MPI_Aint functions
2015-06-24 10:52:44 -07:00
Jeff Squyres
258d1aa160 mpi-f08: corrections to new MPI_Aint_* subroutines
(cherry picked from commit 8f252e65b02bfe20cacee0ece8c835246eea3bd9)
2015-06-24 10:42:01 -07:00
Ralph Castain
869041f770 Purge whitespace from the repo 2015-06-23 20:59:57 -07:00
Nathan Hjelm
062de45899 Add support for MPI-3.1 MPI_Aint functions
This commit adds support for MPI_Aint_add and MPI_Aint_diff. These
functions are implemented as macros in C (explicitly allowed by
MPI-3.1). The fortran implementations are a similar mess to the
MPI_Wtime implementations.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2015-06-09 09:31:33 -06:00
Gilles Gouaillardet
bf38f82dc2 MPI_Win_{get,set}_info: add missing files
fixes commit open-mpi/ompi@558d34a5c3
2015-06-03 09:04:04 +09:00
Gilles Gouaillardet
7179d442c0 MPI_Win_{attach,detach}: add missing files
fixes commit open-mpi/ompi@9600e2bc63
2015-06-03 09:02:50 +09:00
Gilles Gouaillardet
1d8ce96305 MPI_Win_Create_dynamic: add missing files
fixes commit open-mpi/ompi@f45244d5a5
2015-06-03 09:00:04 +09:00
Gilles Gouaillardet
558d34a5c3 MPI_Win_{get,set}_info : add Fortran bindings 2015-06-02 17:45:52 +09:00
Gilles Gouaillardet
9600e2bc63 MPI_Win_{attach,detach} : add Fortran bindings 2015-06-02 17:45:44 +09:00
Gilles Gouaillardet
f45244d5a5 MPI_Win_create_dynamic : add Fortran bindings 2015-06-02 17:45:32 +09:00
Jeff Squyres
63c7520273 use-mpi-f08/Makefile.am: also link in libmpi_mpifh.la
Per mail from Macro Atzeri, we also need to link in libmpi_mpifh.la,
lest we exhaust relative offset addressing (e.g., in 32 bit builds).

See http://www.open-mpi.org/community/lists/devel/2015/04/17304.php.
2015-04-22 14:22:36 -07:00
Jeff Squyres
cab1379dfb Fortran: only emit real16 and complex32 if supported
This is the master version of @ggouaillardet's patch from
open-mpi/ompi-release#148 (there was a minor conflict to fix and
several fuzzings of line numbers).
2015-01-06 09:47:26 -08:00