pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/parallel/openmpi Update to OpenMPI 1.10.4



details:   https://anonhg.NetBSD.org/pkgsrc/rev/3e32da67fffc
branches:  trunk
changeset: 354211:3e32da67fffc
user:      asau <asau%pkgsrc.org@localhost>
date:      Sun Oct 23 14:02:28 2016 +0000

description:
Update to OpenMPI 1.10.4
Prompted by Nicolas Joly in private mail.


1.10.4 - 01 Sept 2016
------

- Fix assembler support for MIPS
- Improve memory handling for temp buffers in collectives
- Fix [all]reduce with non-zero lower bound datatypes
  Thanks Hristo Iliev for the report
- Fix non-standard ddt handling. Thanks Yuki Matsumoto for the report
- Various libnbc fixes. Thanks Yuki Matsumoto for the report
- Fix typos in request RMA bindings for Fortran. Thanks to @alazzaro
  and @vondele for the assist
- Various bug fixes and enhancements to collective support
- Fix predefined types mapping in hcoll
- Revive the coll/sync component to resolve unexpected message issues
  during tight loops across collectives
- Fix typo in wrapper compiler for Fortran static builds


1.10.3 - 15 June 2016
------

- Fix zero-length datatypes.  Thanks to Wei-keng Liao for reporting
  the issue.
- Minor manpage cleanups
- Implement atomic support in OSHMEM/UCX
- Fix support of MPI_COMBINER_RESIZED. Thanks to James Ramsey
  for the report
- Fix computation of #cpus when --use-hwthread-cpus is used
- Add entry points for Allgatherv, iAllgatherv, Reduce, and iReduce
  for the HCOLL library
- Fix an HCOLL integration bug that could signal completion of request
  while still being worked
- Fix computation of cores when SMT is enabled. Thanks to Ben Menadue
  for the report
- Various USNIC fixes
- Create a datafile in the per-proc directory in order to make it
  unique per communicator. Thanks to Peter Wind for the report
- Fix zero-size malloc in one-sided pt-to-pt code. Thanks to Lisandro
  Dalcin for the report
- Fix MPI_Get_address when passed MPI_BOTTOM to not return an error.
  Thanks to Lisandro Dalcin for the report
- Fix MPI_TYPE_SET_ATTR with NULL value. Thanks to Lisandro Dalcin for
  the report
- Fix various Fortran08 binding issues
- Fix memchecker no-data case. Thanks to Clinton Stimpson for the report
- Fix CUDA support under OS-X
- Fix various OFI/MTL integration issues
- Add MPI_T man pages
- Fix one-sided pt-to-pt issue by preventing communication from happening
  before a target enters a fence, even in the no-precede case
- Fix a bug that disabled Totalview for MPMD use-case
- Correctly support MPI_UNWEIGHTED in topo-graph-neighbors. Thanks to
  Jun Kudo for the report
- Fix singleton operations under SLURM when PMI2 is enabled
- Do not use MPI_IN_PLACE in neighborhood collectives for non-blocking
  collectives (libnbc). Thanks to Jun Kudo for the report
- Silence autogen deprecation warnings for newer versions of Perl
- Do not return MPI_ERR_PENDING from collectives
- Use type int* for MPI_WIN_DISP_UNIT, MPI_WIN_CREATE_FLAVOR, and MPI_WIN_MODEL.
  Thanks to Alastair McKinstry for the report
- Fix register_datarep stub function in IO/OMPIO. Thanks to Eric
  Chamberland for the report
- Fix a bus error on MPI_WIN_[POST,START] in the shared memory one-sided component
- Add several missing MPI_WIN_FLAVOR constants to the Fortran support
- Enable connecting processes from different subnets using the openib BTL
- Fix bug in basic/barrier algorithm in OSHMEM
- Correct process binding for the --map-by node case
- Include support for subnet-to-subnet routing over InfiniBand networks
- Fix usnic resource check
- AUTHORS: Fix an errant reference to Subversion IDs
- Fix affinity for MPMD jobs running under LSF
- Fix many Fortran binding bugs
- Fix `MPI_IN_PLACE`-related bugs
- Fix PSM/PSM2 support for singleton operations
- Ensure MPI transports continue to progress during RTE barriers
- Update HWLOC to 1.9.1 end-of-series
- Fix a bug in the Java command line parser when the
  -Djava.library.path options was given by the user
- Update the MTL/OFI provider selection behavior
- Add support for clock_gettime on Linux.
- Correctly detect and configure for Solaris Studio 12.5
  beta compilers
- Correctly compute #slots when -host is used for MPMD case
- Fix a bug in the hcoll collectives due to an uninitialized field
- Do not set a binding policy when oversubscribing a node
- Fix hang in intercommunicator operations when oversubscribed
- Speed up process termination during MPI_Abort
- Disable backtrace support by default in the PSM/PSM2 libraries to
  prevent unintentional conflicting behavior.



1.10.2: 26 Jan 2016
-------------------

 **********************************************************************
 *  OSHMEM is now 1.2 compliant
 **********************************************************************

- Fix NBC_Copy for legitimate zero-size messages
- Fix multiple bugs in OSHMEM
- Correctly handle mpirun --host <user>@<ip-address>
- Centralize two MCA params to avoid duplication between OMPI and
  OSHMEM layers: opal_abort_delay and opal_abort_print_stack
- Add support for Fujitsu compilers
- Add UCX support for OMPI and OSHMEM
- Correctly handle oversubscription when not given directives
  to permit it. Thanks to @ammore1 for reporting it
- Fix rpm spec file to not include the /usr directory
- Add Intel HFI1 default parameters for the openib BTL
- Resolve symbol conflicts in the PSM2 library
- Add ability to empty the rgpusm cache when full if requested
- Fix another libtool bug when -L requires a space between it
  and the path. Thanks to Eric Schnetter for the patch.
- Add support for OSHMEM v1.2 APIs
- Improve efficiency of oshmem_preconnect_all algorithm
- Fix bug in buffered sends support
- Fix double free in edge case of mpirun. Thanks to @jsharpe for
  the patch
- Multiple one-sided support fixes
- Fix integer overflow in the tuned "reduce" collective when
  using buffers larger than INT_MAX in size
- Fix parse of user environment variables in mpirun. Thanks to
  Stefano Garzarella for the patch
- Performance improvements in PSM2 support
- Fix NBS iBarrier for inter-communicators
- Fix bug in vader BTL during finalize
- Improved configure support for Fortran compilers
- Fix rank_file mapper to support default --slot-set. Thanks
  to Matt Thompson for reporting it
- Update MPI_Testsome man page. Thanks to Eric Schnetter for
  the suggestion
- Fix missing resize of the returned type for subarray and
  darray types. Thanks to Keith Bennett and Dan Garmann for
  reporting it
- Fix Java support on OSX 10.11. Thanks to Alexander Daryin
  for reporting the problem
- Fix some compilation issues on Solaris 11.2. Thanks to
  Paul Hargrove for his continued help in such areas

diffstat:

 parallel/openmpi/Makefile                |   7 +-
 parallel/openmpi/distinfo                |  18 ++++----
 parallel/openmpi/patches/patch-ai        |  12 ++--
 parallel/openmpi/patches/patch-aj        |  18 +++----
 parallel/openmpi/patches/patch-ak        |  18 +++----
 parallel/openmpi/patches/patch-configure |  72 ++++++++++++++++++++++++++-----
 6 files changed, 93 insertions(+), 52 deletions(-)

diffs (259 lines):

diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/Makefile
--- a/parallel/openmpi/Makefile Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/Makefile Sun Oct 23 14:02:28 2016 +0000
@@ -1,14 +1,13 @@
-# $NetBSD: Makefile,v 1.35 2016/07/09 06:38:48 wiz Exp $
+# $NetBSD: Makefile,v 1.36 2016/10/23 14:02:28 asau Exp $
 
-DISTNAME=      openmpi-1.10.1
-PKGREVISION=   2
+DISTNAME=      openmpi-1.10.4
 CATEGORIES=    parallel
 MASTER_SITES=  http://www.open-mpi.org/software/ompi/v1.10/downloads/
 EXTRACT_SUFX=  .tar.bz2
 
 MAINTAINER=    asau%inbox.ru@localhost
 HOMEPAGE=      http://www.open-mpi.org/
-COMMENT=       Open source MPI-2 implementation
+COMMENT=       Open source MPI-3.1 implementation
 
 GNU_CONFIGURE=         yes
 USE_LANGUAGES=         c c++ fortran77
diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/distinfo
--- a/parallel/openmpi/distinfo Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/distinfo Sun Oct 23 14:02:28 2016 +0000
@@ -1,13 +1,13 @@
-$NetBSD: distinfo,v 1.17 2016/02/28 19:47:41 joerg Exp $
+$NetBSD: distinfo,v 1.18 2016/10/23 14:02:28 asau Exp $
 
-SHA1 (openmpi-1.10.1.tar.bz2) = caf6885f323a38b9c106a7815711313843409478
-RMD160 (openmpi-1.10.1.tar.bz2) = 70de0da1f31793333b51eda328a18c01c4ffa3c0
-SHA512 (openmpi-1.10.1.tar.bz2) = 2ebdb6ca29d937bdada25d56b162cddceeed5256a4971b990ac8093e31de931473eb3aff3d18168d2c407b38ec0250b508d0b393ec677288adedb9b5156eaf15
-Size (openmpi-1.10.1.tar.bz2) = 13210778 bytes
+SHA1 (openmpi-1.10.4.tar.bz2) = 1676a7da6cc8cde1d46f6296f38d575249b46cd9
+RMD160 (openmpi-1.10.4.tar.bz2) = cea15b9fe8852805a5f8c1591b31907d996587c7
+SHA512 (openmpi-1.10.4.tar.bz2) = 58bcdc48a4d539f2656480751a9d8129597a0460f7b6ecc6f4d0094703c5f1a3f560eaf80b819d902dee91a77a0d21994f6e42728305969647d3170beefe39df
+Size (openmpi-1.10.4.tar.bz2) = 13430203 bytes
 SHA1 (patch-aa) = 6fa20775c6e2abae7c9a2ae858dbb941652beab8
-SHA1 (patch-ai) = 5ddce5ee190ac7bf6964176e23c0a6e624c8c1dd
-SHA1 (patch-aj) = 547fa12b56bd5fe4c4b58d3558d78773bd9dc5c2
-SHA1 (patch-ak) = f79e69fc02510de8da3834729f471799e175bb9c
+SHA1 (patch-ai) = 33667fb853caef7ae9a22c7f2e6a016929eb1a13
+SHA1 (patch-aj) = ec79dc2137107d1253e47811c3ea7d00ff988b06
+SHA1 (patch-ak) = fce9064c50f62334ebc30c8488dbf9cc7500a634
 SHA1 (patch-config_opal__setup__wrappers.m4) = c3fe3cb5ff7cedcb5c847f25eea129d4299dd5d2
-SHA1 (patch-configure) = 8717730bd4958fff225d64f34d10dc70a1bc2d92
+SHA1 (patch-configure) = 10b38cc45614258e236b70057c963a0615032e93
 SHA1 (patch-ompi_mpi_java_java_Makefile.in) = bd61f02f56e03af9799d2ba86d66c1ded35f62f4
diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/patches/patch-ai
--- a/parallel/openmpi/patches/patch-ai Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/patches/patch-ai Sun Oct 23 14:02:28 2016 +0000
@@ -1,16 +1,16 @@
-$NetBSD: patch-ai,v 1.5 2015/12/12 22:41:19 asau Exp $
+$NetBSD: patch-ai,v 1.6 2016/10/23 14:02:28 asau Exp $
 
---- orte/etc/Makefile.in.orig  2015-06-17 19:57:45.000000000 +0000
+--- orte/etc/Makefile.in.orig  2016-09-02 01:30:19.000000000 +0000
 +++ orte/etc/Makefile.in
-@@ -1451,6 +1451,7 @@ spml_ikrit_LDFLAGS = @spml_ikrit_LDFLAGS
- spml_ikrit_LIBS = @spml_ikrit_LIBS@
+@@ -1515,6 +1515,7 @@ spml_ucx_LDFLAGS = @spml_ucx_LDFLAGS@
+ spml_ucx_LIBS = @spml_ucx_LIBS@
  srcdir = @srcdir@
  sysconfdir = @sysconfdir@
 +sysconfexampledir = $(pkgdatadir)/examples
  target = @target@
  target_alias = @target_alias@
  target_cpu = @target_cpu@
-@@ -1667,19 +1668,19 @@ uninstall-am: uninstall-local
+@@ -1731,19 +1732,19 @@ uninstall-am: uninstall-local
  # details why the mkdir is in install-data-local.
  
  install-data-local:
@@ -35,7 +35,7 @@
          fi; \
        done
  
-@@ -1690,11 +1691,11 @@ install-data-local:
+@@ -1754,11 +1755,11 @@ install-data-local:
  uninstall-local:
        @ p="$(orte_config_files)"; \
        for file in $$p; do \
diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/patches/patch-aj
--- a/parallel/openmpi/patches/patch-aj Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/patches/patch-aj Sun Oct 23 14:02:28 2016 +0000
@@ -1,18 +1,16 @@
-$NetBSD: patch-aj,v 1.4 2015/12/12 22:41:19 asau Exp $
-
-Install configuration files into example directory.
+$NetBSD: patch-aj,v 1.5 2016/10/23 14:02:28 asau Exp $
 
---- opal/etc/Makefile.in.orig  2013-01-15 14:43:13.000000000 +0100
-+++ opal/etc/Makefile.in       2013-01-24 12:34:41.090709828 +0100
-@@ -51,6 +51,7 @@
-     test $$am__dry = yes; \
-   }
+--- opal/etc/Makefile.in.orig  2016-09-02 01:30:16.000000000 +0000
++++ opal/etc/Makefile.in
+@@ -89,6 +89,7 @@ am__make_running_with_option = \
+ am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+ am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
  pkgdatadir = $(datadir)/@PACKAGE@
 +sysconfexampledir = $(pkgdatadir)/examples
  pkgincludedir = $(includedir)/@PACKAGE@
  pkglibdir = $(libdir)/@PACKAGE@
  pkglibexecdir = $(libexecdir)/@PACKAGE@
-@@ -1535,24 +1536,24 @@
+@@ -1730,24 +1731,24 @@ uninstall-am: uninstall-local
  # details why the mkdir is in install-data-local.
  
  install-data-local:
@@ -44,7 +42,7 @@
                fi; \
            done \
          fi;
-@@ -1564,11 +1565,11 @@
+@@ -1759,11 +1760,11 @@ install-data-local:
  uninstall-local:
        @ p="$(opal_config_files)"; \
        for file in $$p; do \
diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/patches/patch-ak
--- a/parallel/openmpi/patches/patch-ak Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/patches/patch-ak Sun Oct 23 14:02:28 2016 +0000
@@ -1,18 +1,16 @@
-$NetBSD: patch-ak,v 1.4 2015/12/12 22:41:19 asau Exp $
-
-Install configuration files into example directory.
+$NetBSD: patch-ak,v 1.5 2016/10/23 14:02:28 asau Exp $
 
---- ompi/etc/Makefile.in.orig  2013-01-15 14:41:30.000000000 +0100
-+++ ompi/etc/Makefile.in       2013-01-24 12:36:01.150707935 +0100
-@@ -51,6 +51,7 @@
-     test $$am__dry = yes; \
-   }
+--- ompi/etc/Makefile.in.orig  2016-09-02 01:30:09.000000000 +0000
++++ ompi/etc/Makefile.in
+@@ -89,6 +89,7 @@ am__make_running_with_option = \
+ am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+ am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
  pkgdatadir = $(datadir)/@PACKAGE@
 +sysconfexampledir = $(pkgdatadir)/examples
  pkgincludedir = $(includedir)/@PACKAGE@
  pkglibdir = $(libdir)/@PACKAGE@
  pkglibexecdir = $(libexecdir)/@PACKAGE@
-@@ -1536,19 +1537,19 @@
+@@ -1731,19 +1732,19 @@ uninstall-am: uninstall-local
  # details why the mkdir is in install-data-local.
  
  install-data-local:
@@ -37,7 +35,7 @@
          fi; \
        done
  
-@@ -1559,11 +1560,11 @@
+@@ -1754,11 +1755,11 @@ install-data-local:
  uninstall-local:
        @ p="$(ompi_config_files)"; \
        for file in $$p; do \
diff -r c1bc33512c8f -r 3e32da67fffc parallel/openmpi/patches/patch-configure
--- a/parallel/openmpi/patches/patch-configure  Sun Oct 23 13:31:26 2016 +0000
+++ b/parallel/openmpi/patches/patch-configure  Sun Oct 23 14:02:28 2016 +0000
@@ -1,16 +1,8 @@
-$NetBSD: patch-configure,v 1.1 2016/02/28 19:47:41 joerg Exp $
+$NetBSD: patch-configure,v 1.2 2016/10/23 14:02:28 asau Exp $
 
---- configure.orig     2016-02-24 13:44:02.424420285 +0000
+--- configure.orig     2016-09-02 01:30:27.000000000 +0000
 +++ configure
-@@ -307902,6 +307902,7 @@ fi
- 
- 
-     # Unwind the index
-+    
-     ompi_scope_index=`expr $ompi_scope_index - 1`
-     ompi_scope_test=`expr $ompi_scope_index \> 0`
-     if test "$ompi_scope_test" = "0"; then
-@@ -307922,112 +307923,6 @@ $as_echo "$as_me: WARNING: This usually 
+@@ -314733,166 +314734,6 @@ $as_echo "$as_me: WARNING: This usually 
      done
  
  
@@ -28,7 +20,7 @@
 -    # This is a simple sanity check to ensure we're not already
 -    # overwriting pre-existing variables (that have a non-empty
 -    # value).  It's not a perfect check, but at least it's something.
--    for ompi_var in LDFLAGS_save; do
+-    for ompi_var in LDFLAGS_save rpath_script rpath_outfile wl_fc; do
 -        ompi_str="ompi_str=\"\$$ompi_var\""
 -        eval $ompi_str
 -
@@ -47,7 +39,7 @@
 -
 -    # Ok, we passed the simple sanity check.  Save all these names so
 -    # that we can unset them at the end of the scope.
--    ompi_str="ompi_scope_$ompi_scope_index=\"LDFLAGS_save\""
+-    ompi_str="ompi_scope_$ompi_scope_index=\"LDFLAGS_save rpath_script rpath_outfile wl_fc\""
 -    eval $ompi_str
 -    unset ompi_str
 -
@@ -95,6 +87,60 @@
 -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 -ac_compiler_gnu=$ac_cv_c_compiler_gnu
 -
+-    # Output goes into globally-visible $rpath_args.  Run this in a
+-    # sub-process so that we don't pollute the current process
+-    # environment.
+-    rpath_script=conftest.$$.sh
+-    rpath_outfile=conftest.$$.out
+-    rm -f $rpath_script $rpath_outfile
+-    cat > $rpath_script <<EOF
+-#!/bin/sh
+-
+-# Slurp in the libtool config into my environment
+-
+-# Apparently, "libtoool --config" calls "exit", so we can't source it
+-# (because if script A sources script B, and B calls "exit", then both
+-# B and A will exit).  Instead, we have to send the output to a file
+-# and then source that.
+-$OMPI_TOP_BUILDDIR/libtool --tag=FC --config > $rpath_outfile
+-
+-chmod +x $rpath_outfile
+-. ./$rpath_outfile
+-rm -f $rpath_outfile
+-
+-wl="\`eval echo \$wl\`"
+-echo \$wl
+-
+-# Done
+-exit 0
+-EOF
+-    chmod +x $rpath_script
+-    wl_fc=`./$rpath_script`
+-    rm -f $rpath_script
+-
+-    LDFLAGS="$LDFLAGS_save ${wl_fc}--enable-new-dtags"
+-    ac_ext=${ac_fc_srcext-f}
+-ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+-ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+-ac_compiler_gnu=$ac_cv_fc_compiler_gnu
+-
+-    cat > conftest.$ac_ext <<_ACEOF
+-program test
+-end program
+-_ACEOF
+-if ac_fn_fc_try_link "$LINENO"; then :
+-  runpath_fc_args="${wl_fc}--enable-new-dtags"
+-else
+-  runpath_fc_args=""
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+-    conftest$ac_exeext conftest.$ac_ext
+-    ac_ext=c
+-ac_cpp='$CPP $CPPFLAGS'
+-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+-ac_compiler_gnu=$ac_cv_c_compiler_gnu
+-
 -    LDFLAGS=$LDFLAGS_save
 -
 -



Home | Main Index | Thread Index | Old Index