rocsolver_sgehrd Interface Reference

rocsolver_sgehrd Interface Reference#

hipFORT API Reference: hipfort_rocsolver::rocsolver_sgehrd Interface Reference
hipfort_rocsolver::rocsolver_sgehrd Interface Reference

The GEHRD functions compute the upper Hessenberg form of a general square matrix A. More...

Public Member Functions

integer(c_int) function rocsolver_sgehrd_ (handle, n, ilo, ihi, a, lda, tau)
 
integer(kind(rocblas_status_success)) function rocsolver_sgehrd_rank_0 (handle, n, ilo, ihi, a, lda, tau)
 
integer(kind(rocblas_status_success)) function rocsolver_sgehrd_rank_1 (handle, n, ilo, ihi, a, lda, tau)
 
integer(kind(rocblas_status_success)) function rocsolver_sgehrd_full_rank (handle, n, ilo, ihi, a, lda, tau)
 

Detailed Description

The GEHRD functions compute the upper Hessenberg form of a general square matrix A.

(This is the blocked version of the algorithm.)

The upper Hessenberg form is given by:

\[ H = Q^H A Q \]

where \(H\) is an upper Hessenberg matrix, and \(Q\) is an n -by-n orthogonal/unitary matrix represented as the product of \((ihi-ilo)\) Householder matrices

\[ Q = H(ilo)H(ilo+1)\cdots H(ihi-1) \]

Each Householder matrix \(H(i)\) is given by

\[ H(i) = I - \text{tau}[i] \cdot v_i^{} v_i^H \]

where the first i elements of the Householder vector \(v_i\) are zero, and \(v_i[i+1] = 1\).

Parameters
[in]handle- rocblas_handle.
[in]n- rocblas_int. n >= 0. The number of rows and columns of the matrix A.
[in]ilo- rocblas_int. 1 <= ilo <= ihi. The starting 1-based index of the row and column to be reduced.
[in]ihi- rocblas_int. ilo <= ihi <= n. The ending 1-based index of the row and column to be reduced.
[in,out]A- pointer to type. Array on the GPU of dimension lda*n. On entry, the n-by-n matrix to be reduced. On exit, the elements on and above the first subdiagonal contain the upper Hessenberg form H, and the elements below the first subdiagonal are the last ihi - i - 1 elements of Householder vector v_i.
[in]lda- rocblas_int. lda >= n. Specifies the leading dimension of A.
[out]tau- pointer to type. Array on the GPU of dimension n-1. The Householder scalars.

Member Function/Subroutine Documentation

◆ rocsolver_sgehrd_()

integer(c_int) function hipfort_rocsolver::rocsolver_sgehrd::rocsolver_sgehrd_ ( type(c_ptr), value  handle,
integer(c_int), value  n,
integer(c_int), value  ilo,
integer(c_int), value  ihi,
type(c_ptr), value  a,
integer(c_int), value  lda,
type(c_ptr), value  tau 
)

◆ rocsolver_sgehrd_full_rank()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehrd::rocsolver_sgehrd_full_rank ( type(c_ptr), value  handle,
integer(c_int)  n,
integer(c_int)  ilo,
integer(c_int)  ihi,
real(c_float), dimension(:,:), target  a,
integer(c_int)  lda,
real(c_float), dimension(:), target  tau 
)

◆ rocsolver_sgehrd_rank_0()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehrd::rocsolver_sgehrd_rank_0 ( type(c_ptr), value  handle,
integer(c_int)  n,
integer(c_int)  ilo,
integer(c_int)  ihi,
real(c_float), target  a,
integer(c_int)  lda,
real(c_float), target  tau 
)

◆ rocsolver_sgehrd_rank_1()

integer(kind(rocblas_status_success)) function hipfort_rocsolver::rocsolver_sgehrd::rocsolver_sgehrd_rank_1 ( type(c_ptr), value  handle,
integer(c_int)  n,
integer(c_int)  ilo,
integer(c_int)  ihi,
real(c_float), dimension(:), target  a,
integer(c_int)  lda,
real(c_float), dimension(:), target  tau 
)

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