Hello community, here is the log from the commit of package openmpi for openSUSE:Factory checked in at 2012-03-23 12:23:46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openmpi (Old) and /work/SRC/openSUSE:Factory/.openmpi.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openmpi", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/openmpi/openmpi.changes 2012-03-22 13:37:04.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.openmpi.new/openmpi.changes 2012-03-23 12:23:47.000000000 +0100 @@ -2,53 +1,0 @@ -Tue Mar 20 19:05:25 CET 2012 - [email protected] - -- Update to 1.5.4: - * Add support for the (as yet unreleased) Mellanox MXM transport. - * Add support for dynamic service levels (SLs) in the openib BTL. - * Fixed C++ bindings cosmetic/warnings issue with - MPI::Comm::NULL_COPY_FN and MPI::Comm::NULL_DELETE_FN. - * Also allow the word "slots" in rankfiles (i.e., not just "slot"). - * Add Mellanox ConnectX 3 device IDs to the openib BTL defaults. - * Various FCA updates. - * Add missing ARM assembly code files. - * Update to allow more than 128 entries in an appfile. - * Various VT updates and bug fixes. - * Update description of btl_openib_cq_size to be more accurate. - * Various assembly "clobber" fixes. - * Fix a hang in carto selection in obscure situations. - * Updated to Automake 1.11.1 - * Fix compilation of LSF support. - * Update MPI_Comm_spawn_multiple.3 man page to reflect what it - actually does. - * Fix for possible corruption of the environment. - * Enable use of PSM on direct-launch SLURM jobs. - * Update paffinity hwloc to v1.2, and to fix minor bugs affinity - assignment bugs on PPC64/Linux platforms. - * Let the openib BTL auto-detect its bandwidth. - * Support new MPI-2.2 datatypes. - * Updates to support more datatypes in MPI one-sided communication. - * Fix recursive locking bug when MPI-IO was used with - MPI_THREAD_MULTIPLE. - * Fix mpirun handling of prefix conflicts. - * Ensure mpirun's --xterm options leaves sessions attached. - * Fixed type of sendcounts and displs in the "use mpi" F90 module. - ABI is preserved, but applications may well be broken. See the - README for more details. - * Fix indexed datatype leaks. - * Fix debugger mapping when mpirun's -npernode option is used. - * Fix segv associated with MPI_Comm_create with MPI_GROUP_EMPTY. - * Improved LoadLeveler ORTE support. - * Add new btl_openib_gid_index MCA parameter to allow selecting which - GID to use on an OpenFabrics device's GID table. - * Add support for PCI relaxed ordering in the OpenFabrics BTL (when - available). - * Update rsh logic to allow correct SGE operation. - * Ensure that the mca_paffinity_alone MCA parameter only appears once - in the ompi_info output. - * Fixed return codes from MPI_PROBE and MPI_IPROBE. - * If something goes wrong during MPI_INIT, fix the error - message to say that it's illegal to invoke MPI_INIT before - MPI_INIT. - - For further changes see NEWS in the package documentation. - -------------------------------------------------------------------- Old: ---- openmpi-1.5.4.tar.bz2 New: ---- arm_support openmpi-1.4.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openmpi.spec ++++++ --- /var/tmp/diff_new_pack.MSRIjX/_old 2012-03-23 12:23:49.000000000 +0100 +++ /var/tmp/diff_new_pack.MSRIjX/_new 2012-03-23 12:23:49.000000000 +0100 @@ -22,20 +22,20 @@ Summary: A powerful implementaion of MPI License: BSD-3-Clause Group: Development/Libraries/Parallel -Version: 1.5.4 +Version: 1.4.5 Release: 0 Source0: %{name}-%{version}.tar.bz2 #Source0: http://www.open-mpi.org/software/ompi/v1.4/downloads/%{name}-%{version}.tar.bz2 Source1: mpivars.sh Source2: mpivars.csh Source3: baselibs.conf +Patch0: arm_support +# Patch0: openmpi-new-ehca.patch Url: http://www.open-mpi.org/ BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: Modules -BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: gcc-fortran -BuildRequires: libquadmath46 BuildRequires: mpi-selector %if %{with_dapl} BuildRequires: compat-dapl-devel @@ -82,6 +82,7 @@ %prep %setup -q +%patch0 -p1 %build %ifarch %arm @@ -96,7 +97,7 @@ make %{?_smp_mflags} %install -%makeinstall +make DESTDIR=$RPM_BUILD_ROOT install # make and install mpivars files sed -e 's,prefix,%_prefix,g' -e 's,libdir,%_prefix/%_lib,g' %{S:1} \ > $RPM_BUILD_ROOT%_bindir/mpivars.sh @@ -119,10 +120,7 @@ ls -l "$input.gz" done -rm -f %buildroot/%_libdir/libotf.la - mkdir -p ${RPM_BUILD_ROOT}/usr/share/modules/gnu-openmpi -%fdupes %{buildroot}%{_mandir} %{buildroot}%{_datadir} cat << EOF > ${RPM_BUILD_ROOT}/usr/share/modules/gnu-openmpi/%version #%Module @@ -202,7 +200,5 @@ %doc %_prefix/share/*.SPEC %doc %_prefix/share/vampirtrace %doc %_prefix/share/vt*-wrapper-data.txt -%_libdir/pkgconfig -%_datadir/libtool %changelog ++++++ arm_support ++++++ ## Description: Support building for arm ## Origin/Author: [email protected] ## Bug: bug URL Index: openmpi-1.4.3/config/ompi_config_asm.m4 =================================================================== --- openmpi-1.4.3.orig/config/ompi_config_asm.m4 2011-01-06 14:07:27.000000000 +0200 +++ openmpi-1.4.3/config/ompi_config_asm.m4 2011-01-06 14:49:30.000000000 +0200 @@ -875,6 +875,12 @@ OMPI_GCC_INLINE_ASSIGN='"movl [$]0, %0" : "=&r"(ret)' ;; + arm*) + ompi_cv_asm_arch="ARM" + OMPI_ASM_SUPPORT_64BIT=1 + OMPI_GCC_INLINE_ASSIGN='"mov r0, 0" : "=&r"(ret)' + ;; + ia64-*) ompi_cv_asm_arch="IA64" OMPI_ASM_SUPPORT_64BIT=1 Index: openmpi-1.4.3/opal/include/opal/sys/Makefile.am =================================================================== --- openmpi-1.4.3.orig/opal/include/opal/sys/Makefile.am 2011-01-06 14:07:27.000000000 +0200 +++ openmpi-1.4.3/opal/include/opal/sys/Makefile.am 2011-01-06 14:49:30.000000000 +0200 @@ -27,6 +27,7 @@ include opal/sys/alpha/Makefile.am include opal/sys/amd64/Makefile.am +include opal/sys/arm/Makefile.am include opal/sys/ia32/Makefile.am include opal/sys/ia64/Makefile.am include opal/sys/mips/Makefile.am Index: openmpi-1.4.3/opal/include/opal/sys/architecture.h =================================================================== --- openmpi-1.4.3.orig/opal/include/opal/sys/architecture.h 2011-01-06 14:07:27.000000000 +0200 +++ openmpi-1.4.3/opal/include/opal/sys/architecture.h 2011-01-06 14:49:30.000000000 +0200 @@ -36,6 +36,7 @@ #define OMPI_SPARCV9_32 0061 #define OMPI_SPARCV9_64 0062 #define OMPI_MIPS 0070 +#define OMPI_ARM 0100 /* Formats */ #define OMPI_DEFAULT 1000 /* standard for given architecture */ Index: openmpi-1.4.3/opal/include/opal/sys/arm/Makefile.am =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ openmpi-1.4.3/opal/include/opal/sys/arm/Makefile.am 2011-01-06 14:49:30.000000000 +0200 @@ -0,0 +1,23 @@ +# +# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana +# University Research and Technology +# Corporation. All rights reserved. +# Copyright (c) 2004-2005 The University of Tennessee and The University +# of Tennessee Research Foundation. All rights +# reserved. +# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, +# University of Stuttgart. All rights reserved. +# Copyright (c) 2004-2005 The Regents of the University of California. +# All rights reserved. +# $COPYRIGHT$ +# +# Additional copyrights may follow +# +# $HEADER$ +# + +# This makefile.am does not stand on its own - it is included from opal/include/Makefile.am + +headers += \ + opal/sys/arm/atomic.h \ + opal/sys/arm/timer.h Index: openmpi-1.4.3/opal/include/opal/sys/arm/atomic.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ openmpi-1.4.3/opal/include/opal/sys/arm/atomic.h 2011-01-06 14:49:30.000000000 +0200 @@ -0,0 +1,163 @@ +/* + * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana + * University Research and Technology + * Corporation. All rights reserved. + * Copyright (c) 2004-2005 The University of Tennessee and The University + * of Tennessee Research Foundation. All rights + * reserved. + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, + * University of Stuttgart. All rights reserved. + * Copyright (c) 2004-2005 The Regents of the University of California. + * All rights reserved. + * $COPYRIGHT$ + * + * Additional copyrights may follow + * + * $HEADER$ + */ + +#ifndef OMPI_SYS_ARCH_ATOMIC_H +#define OMPI_SYS_ARCH_ATOMIC_H 1 + +/* + * On armv7, everything is load-locked, store-conditional... + */ + +#if OMPI_WANT_SMP_LOCKS +#define MB() __sync_synchronize(); +#define RMB() MB() +#define WMB() MB(); + +#else + +#define MB() +#define RMB() +#define WMB() + +#endif + + +/********************************************************************** + * + * Define constants for ARM + * + *********************************************************************/ +#define OPAL_HAVE_ATOMIC_MEM_BARRIER 1 + +#define OPAL_HAVE_ATOMIC_CMPSET_32 1 +#define OPAL_HAVE_ATOMIC_MATH_32 1 +#define OPAL_HAVE_ATOMIC_ADD_32 1 +#define OPAL_HAVE_ATOMIC_SUB_32 1 + +#define OPAL_HAVE_ATOMIC_CMPSET_64 0 +#define OPAL_HAVE_ATOMIC_MATH_64 0 +#define OPAL_HAVE_ATOMIC_ADD_64 0 +#define OPAL_HAVE_ATOMIC_SUB_64 0 + +/********************************************************************** + * + * Memory Barriers + * + *********************************************************************/ + +static inline void opal_atomic_mb(void) +{ + MB(); +} + + +static inline void opal_atomic_rmb(void) +{ + RMB(); +} + + +static inline void opal_atomic_wmb(void) +{ + WMB(); +} + + +/********************************************************************** + * + * Atomic math operations + * + *********************************************************************/ + +static inline int opal_atomic_cmpset_32( volatile int32_t *addr, + int32_t oldval, int32_t newval) +{ + return __sync_bool_compare_and_swap(addr, oldval, newval); +} + +static inline int opal_atomic_cmpset_acq_32(volatile int32_t *addr, + int32_t oldval, + int32_t newval) +{ + int rc; + + rc = opal_atomic_cmpset_32(addr, oldval, newval); + opal_atomic_rmb(); + + return rc; +} + + +static inline int opal_atomic_cmpset_rel_32(volatile int32_t *addr, + int32_t oldval, + int32_t newval) +{ + opal_atomic_wmb(); + return opal_atomic_cmpset_32(addr, oldval, newval); +} + + +static inline int opal_atomic_cmpset_64( volatile int64_t *addr, + int64_t oldval, int64_t newval) +{ + return __sync_bool_compare_and_swap(addr, oldval, newval); +} + + +static inline int opal_atomic_cmpset_acq_64(volatile int64_t *addr, + int64_t oldval, + int64_t newval) +{ + int rc; + + rc = opal_atomic_cmpset_64(addr, oldval, newval); + opal_atomic_rmb(); + + return rc; +} + + +static inline int opal_atomic_cmpset_rel_64(volatile int64_t *addr, + int64_t oldval, + int64_t newval) +{ + opal_atomic_wmb(); + return opal_atomic_cmpset_64(addr, oldval, newval); +} + +static inline int32_t opal_atomic_add_32(volatile int32_t* v, int inc) +{ + return __sync_add_and_fetch(v, inc); +} + +static inline int64_t opal_atomic_sub_64(volatile int64_t* v, int64_t dec) +{ + return __sync_sub_and_fetch(v, dec); +} + +static inline int64_t opal_atomic_add_64(volatile int64_t* v, int64_t inc) +{ + return __sync_add_and_fetch(v, inc); +} + + +static inline int32_t opal_atomic_sub_32(volatile int32_t* v, int dec) +{ + return __sync_sub_and_fetch(v, dec); +} +#endif /* ! OMPI_SYS_ARCH_ATOMIC_H */ Index: openmpi-1.4.3/opal/include/opal/sys/atomic.h =================================================================== --- openmpi-1.4.3.orig/opal/include/opal/sys/atomic.h 2011-01-06 14:07:27.000000000 +0200 +++ openmpi-1.4.3/opal/include/opal/sys/atomic.h 2011-01-06 14:49:30.000000000 +0200 @@ -148,6 +148,8 @@ #include "opal/sys/alpha/atomic.h" #elif OMPI_ASSEMBLY_ARCH == OMPI_AMD64 #include "opal/sys/amd64/atomic.h" +#elif OMPI_ASSEMBLY_ARCH == OMPI_ARM +#include "opal/sys/arm/atomic.h" #elif OMPI_ASSEMBLY_ARCH == OMPI_IA32 #include "opal/sys/ia32/atomic.h" #elif OMPI_ASSEMBLY_ARCH == OMPI_IA64 Index: openmpi-1.4.3/opal/include/opal/sys/arm/timer.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ openmpi-1.4.3/opal/include/opal/sys/arm/timer.h 2011-01-06 14:49:50.000000000 +0200 @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana + * University Research and Technology + * Corporation. All rights reserved. + * Copyright (c) 2004-2005 The University of Tennessee and The University + * of Tennessee Research Foundation. All rights + * reserved. + * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, + * University of Stuttgart. All rights reserved. + * Copyright (c) 2004-2005 The Regents of the University of California. + * All rights reserved. + * $COPYRIGHT$ + * + * Additional copyrights may follow + * + * $HEADER$ + */ + +#ifndef OMPI_SYS_ARCH_TIMER_H +#define OMPI_SYS_ARCH_TIMER_H 1 + +#define OPAL_HAVE_SYS_TIMER_GET_CYCLES 1 + +typedef uint64_t opal_timer_t; + +static inline opal_timer_t +opal_sys_timer_get_cycles(void) +{ + return 0; +} + +#endif /* ! OMPI_SYS_ARCH_TIMER_H */ Index: openmpi-1.4.3/opal/include/opal/sys/timer.h =================================================================== --- openmpi-1.4.3.orig/opal/include/opal/sys/timer.h 2011-01-06 14:07:27.000000000 +0200 +++ openmpi-1.4.3/opal/include/opal/sys/timer.h 2011-01-06 14:49:30.000000000 +0200 @@ -81,6 +81,8 @@ /* don't include system-level gorp when generating doxygen files */ #elif OMPI_ASSEMBLY_ARCH == OMPI_AMD64 #include "opal/sys/amd64/timer.h" +#elif OMPI_ASSEMBLY_ARCH == OMPI_ARM +#include "opal/sys/arm/timer.h" #elif OMPI_ASSEMBLY_ARCH == OMPI_IA32 #include "opal/sys/ia32/timer.h" #elif OMPI_ASSEMBLY_ARCH == OMPI_IA64 Index: openmpi-1.4.3/opal/mca/timer/linux/configure.m4 =================================================================== --- openmpi-1.4.3.orig/opal/mca/timer/linux/configure.m4 2011-01-06 14:07:26.000000000 +0200 +++ openmpi-1.4.3/opal/mca/timer/linux/configure.m4 2011-01-06 14:49:30.000000000 +0200 @@ -42,7 +42,7 @@ [timer_linux_happy="no"])]) case "${host}" in - i?86-*linux*|x86_64*linux*|ia64-*linux*|powerpc-*linux*|powerpc64-*linux*|sparc*-*linux*) + i?86-*linux*|x86_64*linux*|ia64-*linux*|powerpc-*linux*|powerpc64-*linux*|sparc*-*linux*|arm*-*linux*) AS_IF([test "$timer_linux_happy" = "yes"], [AS_IF([test -r "/proc/cpuinfo"], [timer_linux_happy="yes"], ++++++ openmpi-1.5.4.tar.bz2 -> openmpi-1.4.5.tar.bz2 ++++++ /work/SRC/openSUSE:Factory/openmpi/openmpi-1.5.4.tar.bz2 /work/SRC/openSUSE:Factory/.openmpi.new/openmpi-1.4.5.tar.bz2 differ: char 11, line 1 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
