So I have,
Code: Select all
int nb = magma_get_dgesvd_nb(n);
int lwork=(m+n)*nb+3*m;
work=(double*)malloc(lwork*sizeof(double));
magma_dgesvd('S','O',m,n,d_A,m,d_S,d_U,m,d_A,m,work,lwork,&info);My compile option is as follow
Code: Select all
nvcc -g -v -L/opt/intel/composer_xe_2013_sp1/lib/intel64 -L/opt/NVIDIA/cuda/lib64 -lmkl_intel_lp64 -lmkl_core -lmkl_sequential -O3 -lpthread -lm -lcublas -lcurand -lmagma -L/opt/magma-1.4.1/lib -I/opt/magma-1.4.1/include -DHAVE_CUBLAS -DNOCHANGE gpusvdtest.cu -o test
But when executing, it returns a segmentation fault, gdb says it's on dlange in dgesvd.
The only part dgesvd uses dlange is
Code: Select all
254 // Scale A if max element outside range [SMLNUM,BIGNUM]
255 anrm = lapackf77_dlange("M", &m, &n, A, &lda, dummy);P.S. I try to post the whole message or program, but keep getting flagged as spam and refused.