I've added MAGMA to the matrix library, and it includes wrappers for cuBLAS functions so we don't actually need cuBLAS explicitly anymore. However, when I try to run ./test-matrix I get segfaults for m_eigen and m_inverse, each time in an LAPACK call.
Here are the instructions to build MAGMA on Palmetto:
# request a node
qsub -I -l select=1:ncpus=8:mem=16gb;walltime=02:00:00
# the Makefile looks in ../magma-2.2.0
cd face-rec/../
# download MAGMA
wget http://icl.cs.utk.edu/projectsfiles/magma/downloads/magma-2.2.0.tar.gz
tar -xvf magma-2.2.0.tar.gz magma-2.2.0
# select the right make.inc for Intel MKL
cp make.inc-examples/make.inc.mkl-icc make.inc
# build (set num-jobs to the number of cores in your CPU)
make -j [num-jobs]
My latest commit resolved these segfaults, the problem was that some of the workspace variables were allocated on the GPU when they should be allocated in host memory.
I've added MAGMA to the matrix library, and it includes wrappers for cuBLAS functions so we don't actually need cuBLAS explicitly anymore. However, when I try to run
./test-matrix
I get segfaults form_eigen
andm_inverse
, each time in an LAPACK call.Here are the instructions to build MAGMA on Palmetto: