quantum-espresso/install/Makefile.lib_eigsolve

36 lines
1.3 KiB
Makefile

include ../../make.inc
FLAGS = -pgf90libs -Mcuda=cc$(GPU_ARCH),cuda$(CUDA_RUNTIME),ptxinfo $(F90FLAGS)
FLAGS2 = -pgf90libs -Mcuda=cc$(GPU_ARCH),cuda$(CUDA_RUNTIME),ptxinfo,nollvm $(F90FLAGS)
FLAGS3 = -pgf90libs -Mcuda=cc$(GPU_ARCH),cuda$(CUDA_RUNTIME),ptxinfo,maxregcount:64,nollvm $(F90FLAGS)
# Use this FLAGS2 if compiling on Power system
#FLAGS2 = -O1 -mp -pgf90libs -Mcuda=cc$(GPU_ARCH),cuda$(CUDA_RUNTIME),ptxinfo,maxregcount:64,nollvm -Mlarge_arrays
# Uncomment to enable NVTX markers
#OPTFLAGS = -DUSE_NVTX
all: lib_eigsolve.a
OBJS = cusolverDn_m.o eigsolve_vars.o toolbox.o zhegst_gpu.o zhemv_gpu.o zhetd2_gpu.o zhetrd_gpu.o zheevd_gpu.o zhegvdx_gpu.o \
dsygst_gpu.o dsymv_gpu.o dsytd2_gpu.o dsytrd_gpu.o dsyevd_gpu.o dsygvdx_gpu.o
zhetd2_gpu.o : zhetd2_gpu.F90
$(F90) -c ${FLAGS3} ${OPTFLAGS} $*.F90 -o $*.o
zhetrd_gpu.o : zhetrd_gpu.F90
$(F90) -c ${FLAGS2} ${OPTFLAGS} $*.F90 -o $*.o
dsytd2_gpu.o : dsytd2_gpu.F90
$(F90) -c ${FLAGS3} ${OPTFLAGS} $*.F90 -o $*.o
dsytrd_gpu.o : dsytrd_gpu.F90
$(F90) -c ${FLAGS2} ${OPTFLAGS} $*.F90 -o $*.o
%.o: %.cuf
$(F90) -c ${FLAGS} ${OPTFLAGS} $*.cuf -o $*.o
%.o: %.F90
$(F90) -c ${FLAGS} ${OPTFLAGS} $*.F90 -o $*.o
lib_eigsolve.a: $(OBJS)
ar -cr lib_eigsolve.a $(OBJS)
clean:
rm -f lib_eigsolve.a *.mod *.o