Skip to content

Conversation

@jsquyres
Copy link
Member

The Java configury is split into two parts:

  1. Determine if we want MPI Java bindings.
  2. Find the Java compiler (and related).

This commit does a few things:

  • Move the "Find the Java compiler" step from OPAL to OMPI (because
    there is no Java in OPAL, and there doesn't appear to be any
    immanent danger that there will be).
    • As a direct consequence, remove the --enable-java CLI option
      (--enable-mpi-java still remains). Enabling the MPI Java bindings
      and enabling Java are now considered the same thing (since there
      is no Java elsewhere in the code base, the different was
      meaningless).
  • Only invoke the "Find the Java compiler" step if we actually want
    the MPI Java bindings.
  • A few miscellaneous Java-related cleanups in configury (E.g., change
    testing "$foo" == "1" to $foo -eq 1, etc.

This commit is mostly s/opal/ompi/gi in many places in configury and
shifting code around. But it looks bigger than it actually is because
of two reasons:

  1. Some files were renamed:
    • ompi_setup_java.m4 -> ompi_setup_mpi_java.m4 (setup MPI Java bindings)
    • opal_setup_java.m4 -> ompi_setup_java.m4 (setup Java compiler)
  2. Indenting level changed in (the new) ompi_setup_java.m4.

Signed-off-by: Jeff Squyres jsquyres@cisco.com

For the end user, this commit should effectively only be a cosmetic change.

No need for this to go to release branches -- this is just cleanup. It can just be slated for v4.0.0.

@RandomDSdevel FYI

[do we want java mpi bindings])
AM_CONDITIONAL(OMPI_WANT_JAVA_BINDINGS, test "$WANT_MPI_JAVA_BINDINGS" = "1")

# Are we happy?
Copy link
Contributor

Choose a reason for hiding this comment

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

minor indentation issue

AS_IF([test "$1" = "yes"],
[_OMPI_SETUP_JAVA])

# JMS TO BE DELETED
Copy link
Contributor

Choose a reason for hiding this comment

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

just to be clear, this only applies to OMPI_HAVE_JAVA_SUPPORTBOGUS_TO_BE_DELETEDp.
I also noticed the initial OPAL_HAVE_HAVE_SUPPORT macro is unused, so as far as I am concerned, you can remove it now.

Copy link
Member Author

Choose a reason for hiding this comment

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

Good catch; I meant to delete that before creating the PR. Thanks.

AC_MSG_CHECKING([if Java support available])
AS_IF([test "$ompi_java_happy" = "no"],
[AC_MSG_RESULT([no])],
[AC_MSG_RESULT([yes])])
Copy link
Contributor

Choose a reason for hiding this comment

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

since this macro is only invoked when --enable-mpi-java is used, shouldn't you simply abort here ?
(or at least abort somewhere else at a higher level)

# Do everything required to setup the Java MPI bindings. Safe to AC_REQUIRE
# this macro.
AC_DEFUN([OMPI_SETUP_JAVA_BINDINGS],[
AC_REQUIRE([OMPI_SETUP_JAVA_BINDINGS_BANNER])
Copy link
Contributor

Choose a reason for hiding this comment

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

any reason why you AC_REQUIRE() instead of simply inlining the (one line) macro ?

Copy link
Member Author

Choose a reason for hiding this comment

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

I think this is a holdover -- there is a prior comment saying that it is required to get the title output in order. But I think that's from prior days when OMPI_SETUP_JAVA_BINDINGS itself was AC_REQUIRED. Doesn't seem like this is needed any more; I'll remove.

@jsquyres jsquyres force-pushed the pr/moar-java-updates-but-mostly-cosmetic-this-time branch from 5a321fa to 2d34443 Compare May 15, 2018 22:00
@jsquyres
Copy link
Member Author

@ggouaillardet New commit pushed with fixes.

@ibm-ompi
Copy link

The IBM CI (XL Compiler) build failed! Please review the log, linked below.

Gist: https://gist.github.com/e882b208539784cabcacd2434afe1cad

@ibm-ompi
Copy link

The IBM CI (GNU Compiler) build failed! Please review the log, linked below.

Gist: https://gist.github.com/423c4ef1e8aa37b6cfa2f68f75ae47b4

@ibm-ompi
Copy link

The IBM CI (PGI Compiler) build failed! Please review the log, linked below.

Gist: https://gist.github.com/fcfac2d9a9dbe159e2d258ca508590af

The Java configury is split into two parts:

1. Determine if we want MPI Java bindings.
2. Find the Java compiler (and related).

This commit does a few things:

- Move the "Find the Java compiler" step from OPAL to OMPI (because
  there is no Java in OPAL, and there doesn't appear to be any
  immanent danger that there will be).
  - As a direct consequence, remove the --enable-java CLI option
    (--enable-mpi-java still remains).  Enabling the MPI Java bindings
    and enabling Java are now considered the same thing (since there
    is no Java elsewhere in the code base, the different was
    meaningless).
- Only invoke the "Find the Java compiler" step if we actually want
  the MPI Java bindings.
- A few miscellaneous Java-related cleanups in configury (E.g., change
  testing "$foo" == "1" to $foo -eq 1, etc.

This commit is mostly s/opal/ompi/gi in many places in configury and
shifting code around.  But it looks bigger than it actually is because
of two reasons:

1. Some files were renamed:
   * ompi_setup_java.m4 -> ompi_setup_mpi_java.m4 (setup MPI Java bindings)
   * opal_setup_java.m4 -> ompi_setup_java.m4 (setup Java compiler)
2. Indenting level changed in (the new) ompi_setup_java.m4.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
@jsquyres jsquyres force-pushed the pr/moar-java-updates-but-mostly-cosmetic-this-time branch from 2d34443 to 9f21ea4 Compare May 15, 2018 22:15
@jsquyres
Copy link
Member Author

This is why we have CI. Pushed a fix...

@jsquyres
Copy link
Member Author

Looks like a false Mellanox failure:

02:02:20 + taskset -c 8,9 timeout -s SIGSEGV 17m /var/lib/jenkins/jobs/gh-ompi-master-pr/workspace/ompi_install1/bin/mpirun -np 8 -bind-to none -mca orte_tmpdir_base /tmp/tmp.RXpsTLcd1E --report-state-on-timeout --get-stack-traces --timeout 900 -mca coll '^hcoll' -mca pml ob1 -mca btl self,vader taskset -c 8,9 /var/lib/jenkins/jobs/gh-ompi-master-pr/workspace/ompi_install1/examples/hello_c
02:02:20 --------------------------------------------------------------------------
02:02:20 A system call failed during shared memory initialization that should
02:02:20 not have.  It is likely that your MPI job will now either abort or
02:02:20 experience performance degradation.
02:02:20 
02:02:20   Local host:  jenkins03
02:02:20   System call: open(2) 
02:02:20   Error:       No such file or directory (errno 2)
02:02:20 --------------------------------------------------------------------------

bot:mellanox:retest

@jsquyres jsquyres merged commit 74257aa into open-mpi:master May 16, 2018
@jsquyres jsquyres deleted the pr/moar-java-updates-but-mostly-cosmetic-this-time branch May 16, 2018 13:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants