From ec68ec9e1a500dbca57fcc996a643809919f85a7 Mon Sep 17 00:00:00 2001 From: Doug Ledford Date: Wed, 13 Jan 2010 18:42:01 +0000 Subject: [PATCH] - Update to latest upstream stable version - Add support for libibcm usage - Enable sge support via configure options since it's no longer on by default - Add patch to resolve allreduce issue (bz538199) - Remove no longer needed patch for Chelsio cards --- .cvsignore | 1 + openmpi-bz515567.patch | 13 --------- openmpi-changeset_r22324.patch | 50 ++++++++++++++++++++++++++++++++++ openmpi.spec | 21 ++++++++++---- sources | 2 +- 5 files changed, 67 insertions(+), 20 deletions(-) delete mode 100644 openmpi-bz515567.patch create mode 100644 openmpi-changeset_r22324.patch diff --git a/.cvsignore b/.cvsignore index 272b532..36e0361 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,3 @@ openmpi-1.3.1.tar.bz2 openmpi-1.3.3.tar.bz2 +openmpi-1.4.tar.bz2 diff --git a/openmpi-bz515567.patch b/openmpi-bz515567.patch deleted file mode 100644 index 2a16043..0000000 --- a/openmpi-bz515567.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: ompi/mca/btl/openib/mca-btl-openib-device-params.ini -=================================================================== ---- ompi/mca/btl/openib/mca-btl-openib-device-params.ini (revision 21744) -+++ ompi/mca/btl/openib/mca-btl-openib-device-params.ini (working copy) -@@ -212,7 +212,7 @@ - - [Chelsio T3] - vendor_id = 0x1425 --vendor_part_id = 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0030,0x0031,0x0032 -+vendor_part_id = 0x0020,0x0021,0x0022,0x0023,0x0024,0x0025,0x0026,0x0030,0x0031,0x0032,0x0035,0x0036 - use_eager_rdma = 1 - mtu = 2048 - receive_queues = P,65536,256,192,128 diff --git a/openmpi-changeset_r22324.patch b/openmpi-changeset_r22324.patch new file mode 100644 index 0000000..1a7f7ce --- /dev/null +++ b/openmpi-changeset_r22324.patch @@ -0,0 +1,50 @@ +Index: /trunk/opal/include/opal/sys/amd64/atomic.h +=================================================================== +--- /trunk/opal/include/opal/sys/amd64/atomic.h (revision 21180) ++++ /trunk/opal/include/opal/sys/amd64/atomic.h (revision 22324) +@@ -85,9 +85,9 @@ + unsigned char ret; + __asm__ __volatile__ ( +- SMPLOCK "cmpxchgl %1,%2 \n\t" ++ SMPLOCK "cmpxchgl %3,%4 \n\t" + "sete %0 \n\t" +- : "=qm" (ret) +- : "q"(newval), "m"(*addr), "a"(oldval) +- : "memory"); ++ : "=qm" (ret), "=a" (oldval), "=m" (*addr) ++ : "q"(newval), "m"(*addr), "1"(oldval) ++ ); + + return (int)ret; +@@ -106,9 +106,9 @@ + unsigned char ret; + __asm__ __volatile__ ( +- SMPLOCK "cmpxchgq %1,%2 \n\t" ++ SMPLOCK "cmpxchgq %3,%4 \n\t" + "sete %0 \n\t" +- : "=qm" (ret) +- : "q"(newval), "m"(*((volatile long*)addr)), "a"(oldval) +- : "memory"); ++ : "=qm" (ret), "=a" (oldval), "=m" (*((volatile long*)addr)) ++ : "q"(newval), "m"(*((volatile long*)addr)), "1"(oldval) ++ ); + + return (int)ret; +Index: /trunk/opal/include/opal/sys/ia32/atomic.h +=================================================================== +--- /trunk/opal/include/opal/sys/ia32/atomic.h (revision 21180) ++++ /trunk/opal/include/opal/sys/ia32/atomic.h (revision 22324) +@@ -92,9 +92,9 @@ + unsigned char ret; + __asm__ __volatile__ ( +- SMPLOCK "cmpxchgl %1,%2 \n\t" ++ SMPLOCK "cmpxchgl %3,%4 \n\t" + "sete %0 \n\t" +- : "=qm" (ret) +- : "q"(newval), "m"(*((volatile long*)addr)), "a"(oldval) +- : "memory"); ++ : "=qm" (ret), "=a" (oldval), "=m" (*addr) ++ : "q"(newval), "m"(*((volatile long*)addr)), "1"(oldval) ++ ); + + return (int)ret; diff --git a/openmpi.spec b/openmpi.spec index 5c5782b..52d4d8a 100644 --- a/openmpi.spec +++ b/openmpi.spec @@ -18,8 +18,8 @@ #define _cc_name_suffix -gcc Name: openmpi%{?_cc_name_suffix} -Version: 1.3.3 -Release: 6%{?dist} +Version: 1.4 +Release: 1%{?dist} Summary: Open Message Passing Interface Group: Development/Libraries License: BSD @@ -29,11 +29,11 @@ Source0: http://www.open-mpi.org/software/ompi/v1.3/downloads/openmpi-%{version Source1: openmpi.pc.in Source2: openmpi.module.in Source3: macros.openmpi -Patch0: openmpi-bz515567.patch +Patch0: openmpi-changeset_r22324.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: gcc-gfortran, libtool, numactl-devel, valgrind-devel -BuildRequires: libibverbs-devel, opensm-devel > 3.3.0 -BuildRequires: librdmacm librdmacm-devel +BuildRequires: libibverbs-devel >= 1.1.3, opensm-devel > 3.3.0 +BuildRequires: librdmacm librdmacm-devel libibcm libibcm-devel #%ifnarch ppc #BuildRequires: compat-dapl-devel #%endif @@ -106,7 +106,7 @@ Contains development headers and libraries for openmpi %prep %setup -q -n openmpi-%{version} -%patch0 -p0 -b .bz515567 +%patch0 -p2 -b .bz538199 %ifarch x86_64 XFLAGS="-fPIC" %endif @@ -117,6 +117,8 @@ XFLAGS="-fPIC" --includedir=%{_includedir}/%{namearch} \ --sysconfdir=%{_sysconfdir}/%{namearch} \ --enable-mpi-threads \ + --enable-openib-ibcm \ + --with-sge \ --with-valgrind \ --with-wrapper-cflags="%{?opt_cflags} %{?modeflag}" \ --with-wrapper-cxxflags="%{?opt_cxxflags} %{?modeflag}" \ @@ -214,6 +216,13 @@ rm -rf %{buildroot} %{_sysconfdir}/rpm/macros.%{namearch} %changelog +* Wed Jan 13 2010 Doug Ledford - 1.4-1 +- Update to latest upstream stable version +- Add support for libibcm usage +- Enable sge support via configure options since it's no longer on by default +- Add patch to resolve allreduce issue (bz538199) +- Remove no longer needed patch for Chelsio cards + * Tue Sep 22 2009 Jay Fenlason - 1.3.3-6 - Create and own man* directories for use by dependent packages. diff --git a/sources b/sources index 88986a1..c9f13ff 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -f6cdc9c195daa8571b2e509e952d6755 openmpi-1.3.3.tar.bz2 +9786ec0698afed9498ce43dc3978a435 openmpi-1.4.tar.bz2