Updated Netlib versions (BLAS to 3.6.0, LAPACK to 3.6.1).

git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12929 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
spigafi 2016-09-08 20:52:28 +00:00
parent ab0e4e0c2f
commit 21a0e267b4
9 changed files with 66 additions and 45 deletions

View File

@ -17,6 +17,7 @@ New in 6.0 version:
with etf_mem true or false.
* EPW: The test-farm now checks 5 representative examples and the associated
accuracy
* Netlib BLAS and LAPACK updated, easy to update going forward
Fixed in 6.0 version:

Binary file not shown.

BIN
archive/blas-3.6.0.tgz Normal file

Binary file not shown.

Binary file not shown.

BIN
archive/lapack-3.6.1.tgz Normal file

Binary file not shown.

4
install/configure vendored
View File

@ -10080,7 +10080,7 @@ fi
# or internal lapack esplicitly required
if test "$have_lapack" -eq 0 -o "$use_internal_lapack" -eq 1 ; then
lapack_libs="$topdir/lapack-3.2/lapack.a"
lapack_libs="$topdir/LAPACK/liblapack.a"
lapack_libs_switch="internal"
else
if test "$have_essl" -eq 1 -o "$have_atlas" -eq 1 ; then
@ -10088,7 +10088,7 @@ else
# atlas: add missing lapack routines so as to complete atlas
# note that some compilers do not like to have multiple symbols
# OBSOLETE
lapack_libs="$lapack_libs $topdir/lapack-3.2/lapack.a"
lapack_libs="$lapack_libs $topdir/LAPACK/liblapack.a"
lapack_libs_switch="internal"
else
lapack_libs_switch="external"

View File

@ -5,6 +5,17 @@
#
include ../make.inc
#.NOTPARALLEL: liblapack_internal libblas_internal
# NETLIB targets
BLAS_NETLIB=blas-3.6.0.tgz
BLAS_NETLIB_NAME=BLAS-3.6.0
BLAS_NETLIB_URL=http://www.netlib.org/blas/${BLAS_NETLIB}
LAPACK_NETLIB=lapack-3.6.1.tgz
LAPACK_NETLIB_NAME=lapack-3.6.1
LAPACK_NETLIB_URL=http://www.netlib.org/lapack/${LAPACK_NETLIB}
#
# MAIN target
#
@ -14,7 +25,6 @@ all:
$(MAKE) libelpa_internal
$(MAKE) libiotk
# BLAS
libblas : libblas_$(BLAS_LIBS_SWITCH)
libblas_external : fake_blas_external
@ -25,14 +35,14 @@ fake_blas_external :
libblas_internal:
if test ! -d ../BLAS; then \
( gzip -dc ../archive/blas-1.tar.gz |(cd ../; tar -xvf -)); fi
( gzip -dc ../archive/${BLAS_NETLIB} | \
(cd ../; tar -xvf -; ln -s ${BLAS_NETLIB_NAME} BLAS)); fi
if test -e make_blas.inc; then \
(cp make_blas.inc ../BLAS/make.inc; \
cd ../BLAS; $(MAKE) $(BLASLIB)); else \
cd ../BLAS; $(MAKE) ); else \
(echo "no configuration file found for blas"; \
echo "run configure from main QE dir"); fi
echo "run configure from main QE dir"; exit); fi
# LAPACK
liblapack : liblapack_$(LAPACK_LIBS_SWITCH)
liblapack_external : fake_lapack_external
@ -42,15 +52,14 @@ fake_lapack_external :
-rm fake_liblapack.a
liblapack_internal:
if test ! -d ../lapack-3.2; then \
( gzip -dc ../archive/lapack-3.2.tar.gz | (cd ../; tar -xvf -)); fi
if test ! -d ../LAPACK; then \
( gzip -dc ../archive/${LAPACK_NETLIB} | \
(cd ../; tar -xvf -; ln -s ${LAPACK_NETLIB_NAME} LAPACK)); fi
if test -e make_lapack.inc; then \
(cp make_lapack.inc ../lapack-3.2/make.inc; \
cp Makefile_lapack ../lapack-3.2/SRC/Makefile; \
cp Makefile_lapack_testing_lin ../lapack-3.2/TESTING/LIN/Makefile; \
cd ../lapack-3.2; $(MAKE) lapacklib); else \
(cp make_lapack.inc ../LAPACK/make.inc; \
cd ../LAPACK; $(MAKE) lapacklib); else \
(echo "no configuration file found for lapack"; \
echo "run configure from main QE dir"); fi
echo "run configure from main QE dir"; exit); fi
libiotk:
if test ! -d ../S3DE; then \
(gzip -dc ../archive/iotk-1.2.beta.tar.gz | (cd ../; tar -xvf -)) ; \
@ -86,11 +95,11 @@ libelpa_enabled:
blas_clean:
if test -d ../BLAS; then (cd ../BLAS; $(MAKE) clean); fi
blas_veryclean:
if test -d ../BLAS; then (rm -R -f ../BLAS); fi
if test -d ../BLAS; then (rm -R -f ../BLAS ../${BLAS_NETLIB_NAME}); fi
lapack_clean:
if test -d ../lapack-3.2; then (cd ../lapack-3.2; $(MAKE) clean); fi
if test -d ../LAPACK; then (cd ../LAPACK; $(MAKE) clean); fi
lapack_veryclean:
if test -d ../lapack-3.2; then (rm -R -f ../lapack-3.2); fi
if test -d ../LAPACK; then (rm -R -f ../LAPACK ../${LAPACK_NETLIB_NAME}); fi
elpa_clean:
if test -d ../ELPA; then (cd ../ELPA; $(MAKE) clean); fi
elpa_veryclean:

View File

@ -141,7 +141,7 @@ fi
# or internal lapack esplicitly required
if test "$have_lapack" -eq 0 -o "$use_internal_lapack" -eq 1 ; then
lapack_libs="$topdir/lapack-3.2/lapack.a"
lapack_libs="$topdir/LAPACK/liblapack.a"
lapack_libs_switch="internal"
else
if test "$have_essl" -eq 1 -o "$have_atlas" -eq 1 ; then
@ -149,7 +149,7 @@ else
# atlas: add missing lapack routines so as to complete atlas
# note that some compilers do not like to have multiple symbols
# OBSOLETE
lapack_libs="$lapack_libs $topdir/lapack-3.2/lapack.a"
lapack_libs="$lapack_libs $topdir/LAPACK/liblapack.a"
lapack_libs_switch="internal"
else
lapack_libs_switch="external"

View File

@ -1,32 +1,34 @@
# @configure_input@
# -*- Makefile -*-
####################################################################
# LAPACK make include file. #
# LAPACK, Version 3.2 #
# November 2008 #
# LAPACK, Version 3.6.1 #
# June 2016 #
####################################################################
#
# See the INSTALL/ directory for more examples.
#
SHELL = /bin/sh
#
# The machine (platform) identifier to append to the library names
#
PLAT =
#
# Modify the FORTRAN and OPTS definitions to refer to the
# compiler and desired compiler options for your machine. NOOPT
# refers to the compiler options desired when NO OPTIMIZATION is
# selected. Define LOADER and LOADOPTS to refer to the loader
# and desired load options for your machine.
# selected. Define LOADER and LOADOPTS to refer to the loader and
# desired load options for your machine.
#
# Note: During a regular execution, LAPACK might create NaN and Inf
# and handle these quantities appropriately. As a consequence, one
# should not compile LAPACK with flags such as -ffpe-trap=overflow.
#
FORTRAN = @f77@
OPTS = @fflags@
DRVOPTS = @fflags@
DRVOPTS = $(OPTS)
NOOPT = @fflags_noopt@
LOADER = @ld@
LOADOPTS = @ldflags@
#
# Comment out the following line to include deprecated routines to the
# LAPACK library.
#
MAKEDEPRECATED = Yes
BUILD_DEPRECATED = Yes
#
# Timer for the SECOND and DSECND routines
#
# Default : SECOND and DSECND will use a call to the EXTERNAL FUNCTION ETIME
@ -36,23 +38,29 @@ LOADOPTS = @ldflags@
# For gfortran compiler: SECOND and DSECND will use a call to the INTERNAL FUNCTION ETIME
# TIMER = INT_ETIME
# If your Fortran compiler does not provide etime (like Nag Fortran Compiler, etc...)
# SECOND and DSECND will use a call to the Fortran standard INTERNAL FUNCTION CPU_TIME
# SECOND and DSECND will use a call to the INTERNAL FUNCTION CPU_TIME
TIMER = INT_CPU_TIME
# If neither of this works...you can use the NONE value... In that case, SECOND and DSECND will always return 0
# TIMER = NONE
#
# Configuration LAPACKE: Native C interface to LAPACK
# To generate LAPACKE library: type 'make lapackelib'
# Configuration file: turned off (default)
# Complex types: C99 (default)
# Name pattern: mixed case (default)
# (64-bit) Data model: LP64 (default)
#
# CC is the C compiler, normally invoked with options CFLAGS.
#
CC = @cc@
CFLAGS = @cflags@
#
# The archiver and the flag(s) to use when building archive (library)
# If you system has no ranlib, set RANLIB = echo.
#
ARCH = @ar@
ARCHFLAGS= @arflags@
RANLIB = @ranlib@
#
# The location of BLAS library for linking the testing programs.
# The target's machine-specific, optimized BLAS library should be
# used whenever possible.
#
BLASLIB = @blas_libs@
RANLIB = @ranlib@
#
# Location of the extended-precision BLAS (XBLAS) Fortran library
# used for building and testing extended-precision routines. The
@ -63,9 +71,12 @@ BLASLIB = @blas_libs@
XBLASLIB =
# XBLASLIB = -lxblas
#
# Names of generated libraries.
# The location of the libraries to which you will link. (The
# machine-specific, optimized BLAS library should be used whenever
# possible.)
#
LAPACKLIB = lapack$(PLAT).a
TMGLIB = tmglib$(PLAT).a
EIGSRCLIB = eigsrc$(PLAT).a
LINSRCLIB = linsrc$(PLAT).a
BLASLIB = @blas_libs@
CBLASLIB = ../../libcblas.a
LAPACKLIB = liblapack.a
TMGLIB = libtmglib.a
LAPACKELIB = liblapacke.a