rocsolver_sgetrf Interface Reference

rocsolver_sgetrf Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_sgetrf Interface Reference
hipfort_rocsolver::rocsolver_sgetrf Interface Reference

The GETRF functions compute the LU factorization of a general m -by-n matrix A using partial pivoting with row interchanges. More...

Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_sgetrf_ (handle, m, n, a, lda, ipiv, myinfo)
 
integer(kind(rocblas_status_success)) function rocsolver_sgetrf_rank_0 (handle, m, n, a, lda, ipiv, myinfo)
 
integer(kind(rocblas_status_success)) function rocsolver_sgetrf_rank_1 (handle, m, n, a, lda, ipiv, myinfo)
 
integer(kind(rocblas_status_success)) function rocsolver_sgetrf_full_rank (handle, m, n, a, lda, ipiv, myinfo)
 

Detailed Description

The GETRF functions compute the LU factorization of a general m -by-n matrix A using partial pivoting with row interchanges.

(This is the blocked Level-3-BLAS version of the algorithm. An optimized internal implementation without rocBLAS calls could be executed with mid-size matrices if optimizations are enabled (default option). For more details, see the "rocSOLVER performance tuning" guide.)

The factorization has the form

\[ A = PLU \]

where P is a permutation matrix, L is lower triangular with unit diagonal elements (lower trapezoidal if m > n), and U is upper triangular (upper trapezoidal if m < n).

Parameters
[in]handle- rocblas_handle.
[in]m- rocblas_int. m >= 0. The number of rows of the matrix A.
[in]n- rocblas_int. n >= 0. The number of columns of the matrix A.
[in,out]A- pointer to type. Array on the GPU of dimension lda*n. On entry, the m-by-n matrix A to be factored. On exit, the factors L and U from the factorization. The unit diagonal elements of L are not stored.
[in]lda- rocblas_int. lda >= m. Specifies the leading dimension of A.
[out]ipiv- pointer to rocblas_int. Array on the GPU of dimension min(m,n). The vector of pivot indices. Elements of ipiv are 1-based indices. For 1 <= i <= min(m,n), row i of the matrix was interchanged with row ipiv[i]. Matrix P of the factorization can be derived from ipiv.
[out]myInfo- pointer to a rocblas_int on the GPU. If info = 0, successful exit. If info = i > 0, U is singular. U[i,i] is the first zero pivot.

Member Function/Subroutine Documentation

◆ rocsolver_sgetrf_()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrf::rocsolver_sgetrf_ ( type(c_ptr), value  handle,
integer(c_int), value  m,
integer(c_int), value  n,
type(c_ptr), value  a,
integer(c_int), value  lda,
type(c_ptr), value  ipiv,
type(c_ptr), value  myinfo 
)

◆ rocsolver_sgetrf_full_rank()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrf::rocsolver_sgetrf_full_rank ( type(c_ptr)  handle,
integer(c_int)  m,
integer(c_int)  n,
real(c_float), dimension(:,:), target  a,
integer(c_int)  lda,
integer(c_int), dimension(:), target  ipiv,
type(c_ptr)  myinfo 
)

◆ rocsolver_sgetrf_rank_0()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrf::rocsolver_sgetrf_rank_0 ( type(c_ptr)  handle,
integer(c_int)  m,
integer(c_int)  n,
real(c_float), target  a,
integer(c_int)  lda,
integer(c_int), target  ipiv,
type(c_ptr)  myinfo 
)

◆ rocsolver_sgetrf_rank_1()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgetrf::rocsolver_sgetrf_rank_1 ( type(c_ptr)  handle,
integer(c_int)  m,
integer(c_int)  n,
real(c_float), dimension(:), target  a,
integer(c_int)  lda,
integer(c_int), dimension(:), target  ipiv,
type(c_ptr)  myinfo 
)

The documentation for this interface was generated from the following file: