Skip to content

Commit d5663f7

Browse files
Joe-DownsJoseph Downs
authored andcommitted
Switch to using MPI Standard ABI values
This mod switches from using "synthetic" defined values and handles for the ones specified in the MPI 5.1 standard. The python infrastructure included in this PR for generating both a "canonical" abi standard compatible MPI 5.1 mpi.h using two json files: 1) mpi-standard-abi.json 2) mpi-standard-apis.json 2 is generated as part of building the MPI standard. We import that into our project for use in generating both the mpi.h as well as interface definitions in the man pages. 1 is generated using a separate script that processes the tables in Appendix A of standard. Ideally this script will be merged into the MPI standard code base at some point. This script is currently at https://github.com/Joe-Downs/mpi-standard/tree/pr/handle-constant-tool/const-tool . It is used to generate the portion of mpi.h where defined values and handles are specified. The converter functions that had been generated as part of the build out of the abi variants of the 'c' MPI interfaces are no define in persistent file. The methods defined in this file will be optimized to make use of the Huffman code characteristics of the predefined values in a subsequent PR. This commit also enables generation of the abi interfaces and header files by default. Signed-off-by: Joseph Downs <joe.downs@lanl.gov>
1 parent 3d2b84c commit d5663f7

File tree

13 files changed

+70859
-40
lines changed

13 files changed

+70859
-40
lines changed

config/ompi_configure_options.m4

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -266,16 +266,19 @@ AM_CONDITIONAL(OMPI_GENERATE_BINDINGS,[test "$PYTHON" != ":"])
266266
AC_MSG_CHECKING([if want to enable standard ABI library])
267267
AC_ARG_ENABLE([standard-abi],
268268
[AS_HELP_STRING([--enable-standard-abi],
269-
[Enable building the standard ABI library (default: disabled)])])
270-
if test "$enable_standard_abi" = "yes"; then
271-
AC_MSG_RESULT([yes])
272-
ompi_standard_abi=1
273-
else
269+
[Enable building the standard ABI library (default: enabled)])])
270+
if test "$enable_standard_abi" = "no"; then
274271
AC_MSG_RESULT([no])
275272
ompi_standard_abi=0
273+
else
274+
AC_MSG_RESULT([yes])
275+
ompi_standard_abi=1
276276
fi
277277
AC_DEFINE_UNQUOTED([OMPI_STANDARD_ABI],[$ompi_standard_abi],
278278
[Whether we want to build the standard ABI library])
279-
AM_CONDITIONAL(OMPI_STANDARD_ABI,[test "$enable_standard_abi" = "yes"])
280-
279+
AM_CONDITIONAL(OMPI_STANDARD_ABI,[test $ompi_standard_abi = 1])
280+
AS_IF([test $ompi_standard_abi -eq 1],
281+
[gen_abi="yes"],
282+
[gen_abi="no"])
283+
OPAL_SUMMARY_ADD([Miscellaneous], [MPI Standard ABI support], [], [$gen_abi])
281284
])dnl

0 commit comments

Comments
 (0)