update to 2015.11.001 release

- update URL and Source URL
- fix AVX(2) support detection and usage
This commit is contained in:
Dominik 'Rathann' Mierzejewski 2016-04-04 15:39:10 +02:00
parent 8ff2e04c9b
commit 51eb0a91cb
4 changed files with 55 additions and 23 deletions

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
/ELPA_2013.11.008_20140321.tar.gz
/elpa-2015.02.002.tar.gz
/elpa-2015.05.001.tar.gz
/elpa-2015.11.001.tar.gz

View File

@ -1,7 +1,7 @@
diff -up mpich/configure.ac.avx mpich/configure.ac
--- mpich/configure.ac.avx 2015-08-06 17:31:47.819635434 +0200
+++ mpich/configure.ac 2015-08-07 12:42:07.817171493 +0200
@@ -198,8 +198,12 @@ AC_MSG_RESULT([${can_compile_sse}])
--- mpich/configure.ac.avx 2016-04-03 16:02:10.334634259 +0200
+++ mpich/configure.ac 2016-04-03 16:03:45.419882924 +0200
@@ -196,8 +196,12 @@ AC_MSG_RESULT([${can_compile_sse}])
dnl check whether one can compile with avx - gcc intrinsics
@ -14,7 +14,7 @@ diff -up mpich/configure.ac.avx mpich/configure.ac
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
#include <x86intrin.h>
int main(int argc, char **argv){
@@ -213,6 +217,8 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
@@ -211,6 +215,8 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
)
AC_MSG_RESULT([${can_compile_avx}])
if test "${can_compile_avx}" = "yes" ; then
@ -23,7 +23,7 @@ diff -up mpich/configure.ac.avx mpich/configure.ac
AC_MSG_CHECKING([whether we can compile AVX intrinsics in C++])
AC_LANG_PUSH([C++])
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
@@ -230,9 +236,14 @@ if test "${can_compile_avx}" = "yes" ; t
@@ -228,10 +234,16 @@ if test "${can_compile_avx}" = "yes" ; t
AC_MSG_RESULT([${can_compile_avx}])
if test "${can_compile_avx}" = "no" ; then
AC_MSG_WARN([Cannot compile C++ with AVX: disabling AVX alltogether])
@ -35,10 +35,35 @@ diff -up mpich/configure.ac.avx mpich/configure.ac
+CFLAGS=$save_CFLAGS
+CXXFLAGS=$save_CXXFLAGS
+
AC_MSG_CHECKING([whether we can compile AVX2 intrinsics in C])
+CFLAGS="$CFLAGS -mavx2 -mfma"
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
#include <x86intrin.h>
int main(int argc, char **argv){
@@ -246,6 +258,8 @@ AC_COMPILE_IFELSE([AC_LANG_SOURCE([
)
AC_MSG_RESULT([${can_compile_avx2}])
if test "${can_compile_avx2}" = "yes" ; then
+ AVX2CFLAGS="-mavx2 -mfma"
+ CXXFLAGS="$CXXFLAGS -mavx2 -mfma"
AC_MSG_CHECKING([whether we can compile AVX2 intrinsics in C++])
AC_LANG_PUSH([C++])
AC_COMPILE_IFELSE([AC_LANG_SOURCE([
@@ -264,9 +278,13 @@ if test "${can_compile_avx2}" = "yes" ;
AC_MSG_RESULT([${can_compile_avx2}])
if test "${can_compile_avx2}" = "no" ; then
AC_MSG_WARN([Cannot compile C++ with AVX2!])
+ else
+ AVX2CXXFLAGS="-mavx2 -mfma"
fi
fi
+CFLAGS=$save_CFLAGS
+CXXFLAGS=$save_CXXFLAGS
if test "${can_compile_avx}" = "yes" ; then
install_real_avx_block2=yes
install_real_avx_block4=yes
@@ -634,6 +645,8 @@ AC_SUBST([OPENMP_CFLAGS])
@@ -669,6 +687,8 @@ AC_SUBST([OPENMP_CFLAGS])
AC_SUBST([OPENMP_FCFLAGS])
AC_SUBST([OPENMP_LDFLAGS])
#AC_SUBST(OPT_FCFLAGS)
@ -48,14 +73,14 @@ diff -up mpich/configure.ac.avx mpich/configure.ac
rm -rf modules/ .fortran_dependencies/
mkdir modules
diff -up mpich/Makefile.am.avx mpich/Makefile.am
--- mpich/Makefile.am.avx 2015-04-20 10:46:16.000000000 +0200
+++ mpich/Makefile.am 2015-08-06 17:31:47.820635439 +0200
--- mpich/Makefile.am.avx 2015-11-22 20:05:49.000000000 +0100
+++ mpich/Makefile.am 2016-04-03 16:02:10.336634243 +0200
@@ -8,6 +8,8 @@ AM_LDFLAGS = $(SCALAPACK_LDFLAGS)
# libelpa
lib_LTLIBRARIES = libelpa@SUFFIX@.la
libelpa@SUFFIX@_la_LINK = $(FCLINK) $(AM_LDFLAGS) -version-info $(ELPA_SO_VERSION) -lstdc++
+libelpa@SUFFIX@_la_CFLAGS = $(AVXCFLAGS) $(AM_CFLAGS)
+libelpa@SUFFIX@_la_CXXFLAGS = $(AVXCXXFLAGS) $(AM_CFLAGS)
+libelpa@SUFFIX@_la_CFLAGS = $(AVXCFLAGS) $(AVX2CFLAGS) $(AM_CFLAGS)
+libelpa@SUFFIX@_la_CXXFLAGS = $(AVXCXXFLAGS) $(AVX2CXXFLAGS) $(AM_CFLAGS)
libelpa@SUFFIX@_la_SOURCES = src/elpa_utilities.F90 \
src/elpa1.F90 \

View File

@ -2,16 +2,16 @@
Summary: High-performance library for parallel solution of eigenvalue problems
Name: elpa
Version: 2015.05.001
Release: 4%{?dist}
URL: http://elpa.rzg.mpg.de/
Source0: http://elpa.rzg.mpg.de/elpa-%{version}.tar.gz
Version: 2015.11.001
Release: 1%{?dist}
URL: http://elpa.mpcdf.mpg.de/software
Source0: http://elpa.mpcdf.mpg.de/elpa-%{version}.tar.gz
# fix pkgconfig file
Patch1: elpa-pc.patch
# build against atlas instead of reference blas
Patch2: elpa-atlas.patch
# don't use AVX instructions in test binaries
Patch3: elpa-no-avx.patch
# fix detection of AVX(2) compiler support and use them only in the library
Patch3: elpa-avx.patch
License: LGPLv3+
BuildRequires: atlas-devel
BuildRequires: gcc-gfortran
@ -129,10 +129,10 @@ mkdir _openmp
cp -pr mpich openmpi _openmp/
%build
export FCFLAGS=-ffree-line-length-none
%{_mpich_load}
export LDFLAGS="-L%{_libdir}/atlas -L$MPI_LIB"
export FCFLAGS="-ffree-line-length-none -I$MPI_FORTRAN_MOD_DIR"
pushd mpich
%configure --disable-silent-rules --disable-static \
--libdir=%{_libdir}/mpich%{?_opt_cc_suffix}/lib
@ -151,6 +151,7 @@ popd
%{_openmpi_load}
export LDFLAGS="-L%{_libdir}/atlas -L$MPI_LIB"
export FCFLAGS="-ffree-line-length-none -I$MPI_FORTRAN_MOD_DIR"
pushd openmpi
%configure --disable-silent-rules --disable-static \
--libdir=%{_libdir}/openmpi%{?_opt_cc_suffix}/lib
@ -231,8 +232,8 @@ popd
%files mpich
%{_libdir}/mpich%{?_opt_cc_suffix}/bin/elpa2_print_kernels
%{_libdir}/mpich%{?_opt_cc_suffix}/bin/elpa2_print_kernels_openmp
%{_libdir}/mpich%{?_opt_cc_suffix}/lib/libelpa.so.3*
%{_libdir}/mpich%{?_opt_cc_suffix}/lib/libelpa_openmp.so.3*
%{_libdir}/mpich%{?_opt_cc_suffix}/lib/libelpa.so.4*
%{_libdir}/mpich%{?_opt_cc_suffix}/lib/libelpa_openmp.so.4*
%files mpich-devel
%{_libdir}/mpich%{?_opt_cc_suffix}/lib/libelpa.so
@ -245,8 +246,8 @@ popd
%files openmpi
%{_libdir}/openmpi%{?_opt_cc_suffix}/bin/elpa2_print_kernels
%exclude %{_libdir}/openmpi%{?_opt_cc_suffix}/bin/elpa2_print_kernels_openmp
%{_libdir}/openmpi%{?_opt_cc_suffix}/lib/libelpa.so.3*
%exclude %{_libdir}/openmpi%{?_opt_cc_suffix}/lib/libelpa_openmp.so.3*
%{_libdir}/openmpi%{?_opt_cc_suffix}/lib/libelpa.so.4*
%exclude %{_libdir}/openmpi%{?_opt_cc_suffix}/lib/libelpa_openmp.so.4*
%files openmpi-devel
%{_libdir}/openmpi%{?_opt_cc_suffix}/lib/libelpa.so
@ -257,6 +258,11 @@ popd
%exclude %{_fmoddir}/openmpi%{?_cc_name_suffix}/*_openmp.mod
%changelog
* Sun Apr 03 2016 Dominik Mierzejewski <rpm@greysector.net> 2015.11.001-1
- update to 2015.11.001 release
- update URL and Source URL
- fix AVX(2) support detection and usage
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2015.05.001-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

View File

@ -1 +1 @@
04e4bfc0eb9b8e59b1b53361fa55e6d7 elpa-2015.05.001.tar.gz
de0f35b7ee7c971fd0dca35c900b87e6 elpa-2015.11.001.tar.gz