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

hipblaszhpr2 Interface Reference

hipblaszhpr2 Interface Reference#

HIPFORT API Reference: hipfort_hipblas::hipblaszhpr2 Interface Reference
hipfort_hipblas::hipblaszhpr2 Interface Reference

BLAS Level 2 API. More...

Public Member Functions

integer(kind(hipblas_status_success)) function hipblaszhpr2_ (handle, uplo, n, alpha, x, incx, y, incy, AP)
 
integer(kind(hipblas_status_success)) function hipblaszhpr2_rank_0 (handle, uplo, n, alpha, x, incx, y, incy, AP)
 
integer(kind(hipblas_status_success)) function hipblaszhpr2_rank_1 (handle, uplo, n, alpha, x, incx, y, incy, AP)
 

Detailed Description

BLAS Level 2 API.

hpr2 performs the matrix-vector operations

A := A + alpha*x*y**H + conj(alpha)*y*x**H

where alpha is a complex scalar, x and y are vectors, and A is an n by n Hermitian matrix, supplied in packed form.

Parameters
[in]handle[hipblasHandle_t] handle to the hipblas library context queue.
[in]uplo[hipblasFillMode_t] specifies whether the upper 'HIPBLAS_FILL_MODE_UPPER' or lower 'HIPBLAS_FILL_MODE_LOWER' HIPBLAS_FILL_MODE_UPPER: The upper triangular part of A is supplied in AP. HIPBLAS_FILL_MODE_LOWER: The lower triangular part of A is supplied in AP.
[in]n[int] the number of rows and columns of matrix A, must be at least 0.
[in]alphadevice pointer or host pointer to scalar alpha.
[in]xdevice pointer storing vector x.
[in]incx[int] specifies the increment for the elements of x.
[in]ydevice pointer storing vector y.
[in]incy[int] specifies the increment for the elements of y.
[in,out]APdevice pointer storing the packed version of the specified triangular portion of the Hermitian matrix A. Of at least size ((n * (n + 1)) 2). if uplo == HIPBLAS_FILL_MODE_UPPER: The upper triangular portion of the Hermitian matrix A is supplied. The matrix is compacted so that AP contains the triangular portion column-by-column so that: AP(0) = A(0,0) AP(1) = A(0,1) AP(2) = A(1,1), etc. Ex: (HIPBLAS_FILL_MODE_UPPER; n = 3) (1, 0) (2, 1) (4,9) (2,-1) (3, 0) (5,3) --—> [(1,0), (2,1), (3,0), (4,9), (5,3), (6,0)] (4,-9) (5,-3) (6,0) if uplo == HIPBLAS_FILL_MODE_LOWER: The lower triangular portion of the Hermitian matrix A is supplied. The matrix is compacted so that AP contains the triangular portion column-by-column so that: AP(0) = A(0,0) AP(1) = A(1,0) AP(2) = A(2,1), etc. Ex: (HIPBLAS_FILL_MODE_LOWER; n = 3) (1, 0) (2, 1) (4,9) (2,-1) (3, 0) (5,3) --—> [(1,0), (2,-1), (4,-9), (3,0), (5,-3), (6,0)] (4,-9) (5,-3) (6,0) Note that the imaginary part of the diagonal elements are not accessed and are assumed to be 0.

Member Function/Subroutine Documentation

◆ hipblaszhpr2_()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblaszhpr2::hipblaszhpr2_ ( type(c_ptr), value  handle,
integer(kind(hipblas_fill_mode_upper)), value  uplo,
integer(c_int), value  n,
complex(c_double_complex)  alpha,
type(c_ptr), value  x,
integer(c_int), value  incx,
type(c_ptr), value  y,
integer(c_int), value  incy,
type(c_ptr), value  AP 
)

◆ hipblaszhpr2_rank_0()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblaszhpr2::hipblaszhpr2_rank_0 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(c_int)  n,
complex(c_double_complex)  alpha,
complex(c_double_complex), target  x,
integer(c_int)  incx,
complex(c_double_complex), target  y,
integer(c_int)  incy,
type(c_ptr)  AP 
)

◆ hipblaszhpr2_rank_1()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblaszhpr2::hipblaszhpr2_rank_1 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(c_int)  n,
complex(c_double_complex)  alpha,
complex(c_double_complex), dimension(:), target  x,
integer(c_int)  incx,
complex(c_double_complex), dimension(:), target  y,
integer(c_int)  incy,
type(c_ptr)  AP 
)

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