Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Abi generate fortran single file #38

Open
wants to merge 19 commits into
base: main
Choose a base branch
from

Conversation

hppritcha
Copy link
Owner

No description provided.

jtronge and others added 19 commits November 2, 2023 16:28
Two external MPI libraries are now created: libmpi.la and libmpi_abi.la.
Backend code that was originally in libmpi.la has been extracted into
libopen-mpi.la to be linked into both libraries.

Parts of the Open MPI C interface are now being generated by a python
script (abi.py) from modified source files (named with *.in). This
script generates files for both the ompi ABI and the standard ABI from
the same source file, also including new bigcount interfaces.

To compile standard ABI code, there's a new mpicc_abi compiler wrapper.
The standard ABI does not yet include all functions or symbols, so more
complicated source files will not compile. ROMIO must be disabled for
the code to link, since it's relying on the external MPI interface.

Signed-off-by: Jake Tronge <[email protected]>
If the ABI source files have not been generated, then Python >=3.6 is
required. ABI source file generation is turned on by default as long as
the proper Python is found. The standard ABI library will only be built
with '--enable-standard-abi'.

Signed-off-by: Jake Tronge <[email protected]>
FC flags

Signed-off-by: Howard Pritchard <[email protected]>
Copy link

github-actions bot commented Jan 8, 2024

Hello! The Git Commit Checker CI bot found a few problems with this PR:

d2ef018: Update .gitignore for generated file

  • check_signed_off: does not contain a valid Signed-off-by line

c8b494b: Add generated fortran alltoall

  • check_signed_off: does not contain a valid Signed-off-by line

86b584c: Make generate_bindings.py an ac config file

  • check_signed_off: does not contain a valid Signed-off-by line

0741bf1: Add irecv, isend, and testany

  • check_signed_off: does not contain a valid Signed-off-by line

2138804: Generate bindings in one file

  • check_signed_off: does not contain a valid Signed-off-by line

6e4c242: Add script and template files to distribution

  • check_signed_off: does not contain a valid Signed-off-by line

b99f951: Add generated version of waitall_f08

  • check_signed_off: does not contain a valid Signed-off-by line

5f0ef3e: Add bigcount APIs for recv and send

  • check_signed_off: does not contain a valid Signed-off-by line

1c7c37f: Add generated version of MPI_Recv_f08

  • check_signed_off: does not contain a valid Signed-off-by line

903186d: Fix fortran profile interface build

  • check_signed_off: does not contain a valid Signed-off-by line

9a045b0: Prefix profile bindings with profile_ instead of p

  • check_signed_off: does not contain a valid Signed-off-by line

12f8483: Fix sizeof_f08.h build error

  • check_signed_off: does not contain a valid Signed-off-by line

b248feb: Generate example fortran file and C wrapper

  • check_signed_off: does not contain a valid Signed-off-by line

ca44fe8: Add initial code for Fortran bindings

  • check_signed_off: does not contain a valid Signed-off-by line

Please fix these problems and, if necessary, force-push new commits back up to the PR branch. Thanks!

$(OMPI_MPIEXT_USEMPIF08_LIBS) \
$(top_builddir)/ompi/mpi/fortran/mpif-h/lib@OMPI_LIBMPI_NAME@_mpifh.la \
$(top_builddir)/ompi/lib@[email protected] \
mod/libusempif08_internal_modules.la \
base/libusempif08_ccode.la
lib@OMPI_LIBMPI_NAME@_usempif08_la_DEPENDENCIES = $(module_sentinel_files)
#
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this comment still relevant?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think so. I couldn't get it to build the profile library in the right order without this. I'm not sure why it's not detecting that dependency automatically.

@@ -0,0 +1,768 @@
"""Fortran binding generation code.
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

copyright. also update description for case of a single big .in file for f08 prototypes

@@ -0,0 +1,7 @@
recv(BUFFER_OUT buf, COUNT count, DATATYPE datatype, RANK source, TAG tag, COMM comm, STATUS status)
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

might was to add some comments at the top of this file about what it does.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants