*** empty log message ***

This commit is contained in:
jiri 2010-10-22 13:46:59 +00:00
parent 996a7f5275
commit c51cc70e3a
2 changed files with 32 additions and 18 deletions

View File

@ -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

View File

@ -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