This page contains proposed changes for a future release of ROCm. Read the latest Linux release of ROCm documentation for your production environments.

rocsolver_slaswp Interface Reference

rocsolver_slaswp Interface Reference#

HIPFORT API Reference: hipfort_rocsolver::rocsolver_slaswp Interface Reference
hipfort_rocsolver::rocsolver_slaswp Interface Reference

LASWP performs a series of row interchanges on the matrix A. More...

Public Member Functions

integer(kind(rocblas_status_success)) function rocsolver_slaswp_ (handle, n, A, lda, k1, k2, ipiv, incx)
 
integer(kind(rocblas_status_success)) function rocsolver_slaswp_full_rank (handle, n, A, lda, k1, k2, ipiv, incx)
 
integer(kind(rocblas_status_success)) function rocsolver_slaswp_rank_0 (handle, n, A, lda, k1, k2, ipiv, incx)
 
integer(kind(rocblas_status_success)) function rocsolver_slaswp_rank_1 (handle, n, A, lda, k1, k2, ipiv, incx)
 

Detailed Description

LASWP performs a series of row interchanges on the matrix A.

Row interchanges are done one by one. If \(\text{ipiv}[k_1 + (j - k_1) \cdot \text{abs}(\text{incx})] = r\), then the j-th row of A will be interchanged with the r-th row of A, for \(j = k_1,k_1+1,\dots,k_2\). Indices \(k_1\) and \(k_2\) are 1-based indices.

Parameters
[in]handlerocblas_handle.
[in]nrocblas_int. n >= 0.
The number of columns of the matrix A.
[in,out]Apointer to type. Array on the GPU of dimension lda*n.
On entry, the matrix to which the row interchanges will be applied. On exit, the resulting permuted matrix.
[in]ldarocblas_int. lda > 0.
The leading dimension of the array A.
[in]k1rocblas_int. k1 > 0.
The k_1 index. It is the first element of ipiv for which a row interchange will be done. This is a 1-based index.
[in]k2rocblas_int. k2 > k1 > 0.
The k_2 index. k_2 - k_1 + 1 is the number of elements of ipiv for which a row interchange will be done. This is a 1-based index.
[in]ipivpointer to rocblas_int. Array on the GPU of dimension at least k_1 + (k_2 - k_1)*abs(incx).
The vector of pivot indices. Only the elements in positions k_1 through k_1 + (k_2 - k_1)*abs(incx) of this vector are accessed. Elements of ipiv are considered 1-based.
[in]incxrocblas_int. incx != 0.
The distance between successive values of ipiv. If incx is negative, the pivots are applied in reverse order.

Member Function/Subroutine Documentation

◆ rocsolver_slaswp_()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_ ( type(c_ptr), value  handle,
integer(c_int), value  n,
type(c_ptr), value  A,
integer(c_int), value  lda,
integer(c_int), value  k1,
integer(c_int), value  k2,
type(c_ptr), value  ipiv,
integer(c_int), value  incx 
)

◆ rocsolver_slaswp_full_rank()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_full_rank ( type(c_ptr)  handle,
integer(c_int)  n,
real(c_float), dimension(:,:), target  A,
integer(c_int)  lda,
integer(c_int)  k1,
integer(c_int)  k2,
integer(c_int), dimension(:), target  ipiv,
integer(c_int)  incx 
)

◆ rocsolver_slaswp_rank_0()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_rank_0 ( type(c_ptr)  handle,
integer(c_int)  n,
real(c_float), target  A,
integer(c_int)  lda,
integer(c_int)  k1,
integer(c_int)  k2,
integer(c_int), target  ipiv,
integer(c_int)  incx 
)

◆ rocsolver_slaswp_rank_1()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_slaswp::rocsolver_slaswp_rank_1 ( type(c_ptr)  handle,
integer(c_int)  n,
real(c_float), dimension(:), target  A,
integer(c_int)  lda,
integer(c_int)  k1,
integer(c_int)  k2,
integer(c_int), dimension(:), target  ipiv,
integer(c_int)  incx 
)

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