Hi,
I want to get the singular value of a martix using the function cusolverDnXgesvd, afterward, the function cusolverDnXgetrs will be used to solve the linear system. In my program, the cusolverDnXgesvd will be used only once and other function will be used more times, such as
main program
istat = cusolverDnXgesvd( parameters )
do i=1, 10
istat = cusolverDnXgetrs( parameters )
end do
end main program
However, I notice that a large memory is taken by cusolverDnXgesvd. May I free the space that occupied by cusolverDnXgesvd:
main program
istat = cusolverDnXgesvd( parameters )
free space(cusolverDnXgesvd)
do i=1, 10
istat = cusolverDnXgetrs( parameters )
end do
end main program
I have tried to destroy the handle and stream ,and deallocate the dynamic arrary used in the function. But device still shows a large memory be used by it. May I empty the current device memory? That mean is not to kill the progress, such as what the cudaDeviceReset does.
regards,
Amore.