Hi Will,
I think this happens sometimes when there are multiple CUDA versions installed on a machine - most probably due to some mix-up of include files (from the different CUDA versions), already compiled files with the old CUDA, or setting of environment variables like LD_LIBRARY_PATH even during the linking.
Usually
make cleanall all fixes it. I also went on eiger and everything went through by executing
- Code: Select all
module load mkl cuda
qsub -I -l select=1:ncpus=12:mem=1gb:gpu=fermi -l cput=01:30:00,walltime=01:30:00 -q feed@eiger170
cd magma_1.0.0-rc5
make cleanall all
The make.inc that I used is
- Code: Select all
#//////////////////////////////////////////////////////////////////////////////
# -- MAGMA (version 1.0) --
# Univ. of Tennessee, Knoxville
# Univ. of California, Berkeley
# Univ. of Colorado, Denver
# November 2010
#//////////////////////////////////////////////////////////////////////////////
#
# GPU_TARGET specifies for which GPU you want to compile MAGMA
# 0: Tesla family
# 1: Fermi Family
#
GPU_TARGET = 1
CC = gcc
NVCC = nvcc
FORT = gfortran
ARCH = ar
ARCHFLAGS = cr
RANLIB = ranlib
OPTS = -O3 -DADD_
FOPTS = -O3 -DADD_ -x f95-cpp-input
NVOPTS = --compiler-options -fno-strict-aliasing -DUNIX -O3 -DADD_
LDOPTS = -fPIC -nofor_main -Xlinker -zmuldefs
LIB = -lcuda -lmkl_intel_lp64 -lmkl_gnu_thread -lmkl_core \
-lpthread -fopenmp -lcublas -lm
CUDADIR = /apps/eiger/Cuda-4.0/cuda/
LIBDIR = -L/apps/eiger/Intel-FOR-11.1/mkl/lib/em64t \
-L$(CUDADIR)/lib64
INC = -I$(CUDADIR)/include
LIBMAGMA = ../lib/libmagma.a
LIBMAGMABLAS = ../lib/libmagmablas.a
I see that you must have used GPU_TARGET = 0 (i.e., not Fermi). Was this your intent?
Best regards,
Stan