*** empty log message ***
This commit is contained in:
parent
996a7f5275
commit
c51cc70e3a
@ -1,12 +1,12 @@
|
|||||||
lib_LTLIBRARIES = libla.la
|
lib_LTLIBRARIES = libla.la
|
||||||
include_HEADERS = fortran.h cuda_la.h auxstorage.h davidson.h laerror.h mat.h qsort.h vec.h bisection.h diis.h la.h noncblas.h smat.h bitvector.h fourindex.h la_traits.h nonclass.h sparsemat.h sparsesmat.h conjgrad.h gmres.h matexp.h permutation.h
|
include_HEADERS = fortran.h cuda_la.h auxstorage.h davidson.h laerror.h mat.h qsort.h vec.h bisection.h diis.h la.h noncblas.h smat.h bitvector.h fourindex.h la_traits.h nonclass.h sparsemat.h sparsesmat.h csrmat.h conjgrad.h gmres.h matexp.h permutation.h
|
||||||
libla_la_SOURCES = vec.cc mat.cc smat.cc sparsemat.cc sparsesmat.cc laerror.cc noncblas.cc bitvector.cc strassen.cc nonclass.cc cuda_la.cc
|
libla_la_SOURCES = vec.cc mat.cc smat.cc sparsemat.cc sparsesmat.cc csrmat.cc laerror.cc noncblas.cc bitvector.cc strassen.cc nonclass.cc cuda_la.cc
|
||||||
check_PROGRAMS = t test
|
check_PROGRAMS = t test
|
||||||
t_SOURCES = t.cc t2.cc
|
t_SOURCES = t.cc t2.cc
|
||||||
test_SOURCES = test.cc
|
test_SOURCES = test.cc
|
||||||
LDADD = .libs/libla.a
|
LDADD = .libs/libla.a
|
||||||
ACLOCAL_AMFLAGS = -I m4
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
EXTRA_DIST = LICENSE
|
EXTRA_DIST = LICENSE doxygen.cfg aminclude.am acinclude.m4 footer.html
|
||||||
|
|
||||||
.cu.o:
|
.cu.o:
|
||||||
$(NVCC) -o $@ -c $< $(NVCCFLAGS)
|
$(NVCC) -o $@ -c $< $(NVCCFLAGS)
|
||||||
@ -20,7 +20,10 @@ CXXFLAGS += -DNO_STRASSEN -DFORTRAN_
|
|||||||
|
|
||||||
CXXFLAGS += $(CBLASOPT) $(CLAPACKOPT)
|
CXXFLAGS += $(CBLASOPT) $(CLAPACKOPT)
|
||||||
LDFLAGS += $(CBLASLIB)
|
LDFLAGS += $(CBLASLIB)
|
||||||
|
LDFLAGS += $(BLASLIB)
|
||||||
|
LDFLAGS += $(ATLASLIB)
|
||||||
CXXFLAGS += $(TRACEBACKOPT)
|
CXXFLAGS += $(TRACEBACKOPT)
|
||||||
LDFLAGS += $(CUDALIBS)
|
LDFLAGS += $(CUDALIBS)
|
||||||
LDFLAGS += $(TRACEBACKLIB)
|
LDFLAGS += $(TRACEBACKLIB)
|
||||||
|
|
||||||
|
include $(top_srcdir)/aminclude.am
|
||||||
|
41
configure.ac
41
configure.ac
@ -2,7 +2,7 @@
|
|||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
AC_PREREQ([2.63])
|
AC_PREREQ([2.63])
|
||||||
AC_INIT([libla], [0.5], [jiri@pittnerovi.com])
|
AC_INIT([libla], [0.6], [jiri@pittnerovi.com])
|
||||||
AC_CONFIG_HEADERS([config.h])
|
AC_CONFIG_HEADERS([config.h])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
|
||||||
@ -18,19 +18,17 @@ AC_LANG(C++)
|
|||||||
|
|
||||||
|
|
||||||
# Checks for mandatory libraries.
|
# Checks for mandatory libraries.
|
||||||
AC_CHECK_LIB([blas], [dgemm_],, [
|
ATLASLIB=""
|
||||||
echo ERROR: BLAS not found! You have to install the BLAS library.
|
AC_CHECK_LIB([atlas], [ATL_zgemv],ATLASLIB=-latlas, [
|
||||||
exit
|
|
||||||
])
|
|
||||||
|
|
||||||
AC_CHECK_LIB([atlas], [ATL_zgemv],, [
|
|
||||||
echo "ATLAS not found, I hope you are using some other (more) efficient BLAS!"
|
echo "ATLAS not found, I hope you are using some other (more) efficient BLAS!"
|
||||||
])
|
])
|
||||||
|
AC_SUBST([ATLASLIB])
|
||||||
|
|
||||||
AC_CHECK_LIB([lapack], [dgeev_],, [
|
AC_CHECK_LIB([blas], [dgemm_],BLASLIB=-lblas, [
|
||||||
echo ERROR: LAPACK not found! You have to install the LAPACK library
|
echo ERROR: BLAS not found! You have to install the BLAS library.
|
||||||
exit
|
exit
|
||||||
])
|
],[$ATLASLIB])
|
||||||
|
AC_SUBST([BLASLIB])
|
||||||
|
|
||||||
|
|
||||||
MATPTROPT=""
|
MATPTROPT=""
|
||||||
@ -42,18 +40,25 @@ AC_ARG_ENABLE([matptr],[ --enable-matptr switch to double** matrix representa
|
|||||||
esac],
|
esac],
|
||||||
,)
|
,)
|
||||||
|
|
||||||
#check for optional libraries
|
|
||||||
|
|
||||||
#cblas and clapack available?
|
#cblas and clapack available?
|
||||||
AC_CHECK_LIB([cblas], [cblas_ddot], [CBLASLIB=-lcblas], [CBLASOPT=-DNONCBLAS])
|
AC_CHECK_LIB([cblas], [cblas_ddot], [CBLASLIB=-lcblas], [CBLASOPT=-DNONCBLAS],[$ATLASLIB])
|
||||||
AC_CHECK_HEADER([cblas.h],,[CBLASOPT=-DNONCBLAS CBLASLIB=""], AC_INCLUDES_DEFAULT)
|
AC_CHECK_HEADER([cblas.h],,[CBLASOPT=-DNONCBLAS CBLASLIB=""], AC_INCLUDES_DEFAULT)
|
||||||
AC_SUBST([CBLASLIB])
|
AC_SUBST([CBLASLIB])
|
||||||
AC_SUBST([CBLASOPT])
|
AC_SUBST([CBLASOPT])
|
||||||
|
|
||||||
AC_CHECK_LIB([lapack], [clapack_dgesv], , [CLAPACKOPT=-DNONCLAPACK])
|
|
||||||
|
AC_CHECK_LIB([lapack], [dgeev_],, [
|
||||||
|
echo ERROR: LAPACK not found! You have to install the LAPACK library
|
||||||
|
exit
|
||||||
|
],[$CBLASLIB $BLASLIB $ATLASLIB])
|
||||||
|
|
||||||
|
|
||||||
|
AC_CHECK_LIB([lapack], [clapack_dgesv], , [CLAPACKOPT=-DNONCLAPACK],[$CBLASLIB $BLASLIB $ATLASLIB])
|
||||||
AC_CHECK_HEADER([clapack.h],,[CLAPACKOPT=-DNONCLAPACK], AC_INCLUDES_DEFAULT)
|
AC_CHECK_HEADER([clapack.h],,[CLAPACKOPT=-DNONCLAPACK], AC_INCLUDES_DEFAULT)
|
||||||
AC_SUBST([CLAPACKOPT])
|
AC_SUBST([CLAPACKOPT])
|
||||||
|
|
||||||
|
|
||||||
#CUDA available? link with cublas and avoid cblas and clapack then...
|
#CUDA available? link with cublas and avoid cblas and clapack then...
|
||||||
AC_CHECK_LIB([cublas], [cublasInit], [MATPTROPT="" NVCC=nvcc NVCCFLAGS="-O -arch sm_20" CUDALIBS=-lcublas CUDAOPT=-DCUDALA CBLASOPT=-DNONCBLAS CLAPACKOPT=-DNONCLAPACK CBLASLIB=""], [CUDALIB="" CUDAOPT=""])
|
AC_CHECK_LIB([cublas], [cublasInit], [MATPTROPT="" NVCC=nvcc NVCCFLAGS="-O -arch sm_20" CUDALIBS=-lcublas CUDAOPT=-DCUDALA CBLASOPT=-DNONCBLAS CLAPACKOPT=-DNONCLAPACK CBLASLIB=""], [CUDALIB="" CUDAOPT=""])
|
||||||
AC_CHECK_HEADER([cublas.h],,[CUDAOPT="" CUDALIBS=""], AC_INCLUDES_DEFAULT)
|
AC_CHECK_HEADER([cublas.h],,[CUDAOPT="" CUDALIBS=""], AC_INCLUDES_DEFAULT)
|
||||||
@ -122,6 +127,9 @@ AC_CHECK_MEMBERS([struct stat.st_blksize])
|
|||||||
# Checks for library functions.
|
# Checks for library functions.
|
||||||
AC_CHECK_FUNCS([getpagesize memset sqrt])
|
AC_CHECK_FUNCS([getpagesize memset sqrt])
|
||||||
|
|
||||||
|
#Doxygen support
|
||||||
|
DX_INIT_DOXYGEN($PACKAGE_NAME, doxygen.cfg)
|
||||||
|
|
||||||
AC_CONFIG_FILES([Makefile])
|
AC_CONFIG_FILES([Makefile])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
echo
|
echo
|
||||||
@ -131,8 +139,11 @@ echo "Please make sure that the generated Makefile employs a proper version of o
|
|||||||
echo "BLAS/LAPACK library. If not, re-run configure with CXXFLAGS and LDFLAGS options "
|
echo "BLAS/LAPACK library. If not, re-run configure with CXXFLAGS and LDFLAGS options "
|
||||||
echo "set to '-I path' and '-L path' for your preferred BLAS/LAPACK library version. "
|
echo "set to '-I path' and '-L path' for your preferred BLAS/LAPACK library version. "
|
||||||
echo "In addition, similarly you might set include and link paths for Nvidia CUBLAS. "
|
echo "In addition, similarly you might set include and link paths for Nvidia CUBLAS. "
|
||||||
|
echo "Use ./configure --disable-optimize CXXFLAGS='' LDFLAGS='' for a fast compile. "
|
||||||
|
echo "Use --enable-fotran64int to link with BLAS and LAPACK using 64-bit integers. "
|
||||||
|
echo "For documentation, 'make doxygen-doc' and see doxygen-doc/html/index.html "
|
||||||
echo "For usage examples see file t.cc. Do not forget using copyonwrite() before "
|
echo "For usage examples see file t.cc. Do not forget using copyonwrite() before "
|
||||||
echo "changing individual matrix/vector elements via l.h.s. operator[] or operator() "
|
echo "changing individual matrix/vector elements via l.h.s. operator() "
|
||||||
echo "**********************************************************************************"
|
echo "**********************************************************************************"
|
||||||
#echo "Use ./configure --disable-optimize CXXFLAGS="" LDFLAGS="" for a fast compile "
|
echo
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user