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

Configure summary and enable CMA by default #2216

Merged
merged 10 commits into from
Nov 7, 2016

Conversation

hjelmn
Copy link
Member

@hjelmn hjelmn commented Oct 12, 2016

This PR contains two changes:

  • Add the configure summary.
  • Improve CMA detection and turn on CMA support by default.

Both of these things were discussed and agreed upon for 2.1.x but it has been some time since we discussed the summary. If it is still OK for 2.1.x please approve this PR otherwise I can pull the CMA changes off master and back-port them to 2.1.x.

Closes #1404

hjelmn and others added 10 commits October 12, 2016 12:34
This commit adds two m4 macros: OPAL_SUMMARY_ADD, OPAL_SUMMARY_PRINT.
OPAL_SUMMARY_ADD adds an item to a section in the summary. For example
OPAL_SUMMARY_ADD([[Transports]],[[Foo]],...,[yes]) will add the
following to the summary:

Transports
-----------------------
Foo: yes

With this commit two sections are added: Transports, Resource Managers.

The OPAL_SUMMARY_PRINT macro is called after AC_OUTPUT and prints out
some information about the build (version, projects, etc) and then
the summarys sections. It will additionally print a warning if
internal debugging is enabled.

Example output:

Open MPI configuration:
-----------------------
Version: 3.0.0 a1
Build Open Platform Abstration project: yes
Build Open Runtime project: yes
Build Open MPI project: yes
Build Open SHMEM project: no
MPI C++ bindings (deprecated): no
MPI Fortran bindings: mpif.h, use mpi, use mpi_f08
Debug build: yes

Transports
-----------------------
Cray uGNI (Gemini/Aries): no
Intel Omnipath (PSM2): no
KNEM Shared Memory: no
Linux CMA IPC: no
Mellanox MXM: no
Open UCX: no
OpenFabrics libfabric: no
OpenFabrics Verbs: no
portals4: no
QLogic Infinipath (PSM): no
tcp: yes
XPMEM Shared Memory: no

Resource Managers
-----------------------
Cray Alps: no
Grid Engine: no
LSF: no
Slurm: yes
Torque: yes

INTERNAL DEBUGGING IS ENABLED. DO NOT USE THIS BUILD FOR PERFORMANCE MEASUREMENTS!

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
(cherry picked from commit d2f5fca)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
(cherry picked from commit a93b849)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
(cherry picked from commit 48c650c)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
Changed $project_shmem with $project_oshmem

(cherry picked from commit 7bd12dc)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
* Replace all tabs with spaces
* Remove extraneous extra blank line at the end (in some cases, we
  were getting *2* blank lines at the end)
* Use `echo " "` instead of `echo` (which may not be portable)

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
(cherry picked from commit bd3c15c)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
These macros should really be named OPAL_SUMMARY_*; they're used in
all projects, and therefore should be in the lowest later project (OPAL).

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
(cherry picked from commit 6800ef9)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
(cherry picked from commit cdac9e8)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
This commit improves the CMA detection when the installed glibc doesn't
have support for CMA. In this case we need to verify that the syscall
numbers in opal/include/opal/sys/cma.h are valid for the architecture.
This verification is done by attempting to use CMA while including the
internal header.

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
(cherry picked from commit 4a2bd83)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
Split the CMA test into two parts so that the back-end test only has
to be run once.  Fail with --with-cma is specified and cannot be
provided.  Remove a few useless quotes.  Change
$ompi_check_cma_need_defs and $ompi_check_cma_happy to be numeric
values.  Finally, remove a bunch of tabs.

Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
(cherry picked from commit 9974316)
Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
@hjelmn hjelmn added this to the v2.1.0 milestone Oct 12, 2016
@jsquyres
Copy link
Member

@hjelmn Howard and I discussed: this is definitely an enhancement, and since it missed the Sep 30 deadline, it has unfortunately missed the board for v2.1.0. That being said, if v2.1.0 ends up getting significantly delayed, we may open the doors again for v2.1.0 enhancements.

@jsquyres jsquyres modified the milestones: v2.2.0, v2.1.0 Oct 13, 2016
@hjelmn hjelmn modified the milestones: v2.1.0, v2.2.0 Nov 1, 2016
@hjelmn
Copy link
Member Author

hjelmn commented Nov 1, 2016

:bot:retest:

@lanl-ompi
Copy link
Contributor

Can one of the admins verify this patch?

2 similar comments
@lanl-ompi
Copy link
Contributor

Can one of the admins verify this patch?

@lanl-ompi
Copy link
Contributor

Can one of the admins verify this patch?

@jsquyres
Copy link
Member

jsquyres commented Nov 1, 2016

@hppritcha Good to go when CI finishes

@hppritcha
Copy link
Member

bot:lanl:retest

@hppritcha hppritcha merged commit ce333f1 into open-mpi:v2.x Nov 7, 2016
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.

6 participants