rocblas_zhpmv_strided_batched Interface Reference#
hipfort_rocblas::rocblas_zhpmv_strided_batched Interface Reference
BLAS Level 2 API. More...
Public Member Functions | |
integer(kind(rocblas_status_success)) function | rocblas_zhpmv_strided_batched_ (handle, uplo, n, alpha, AP, stride_A, x, incx, stride_x, beta, y, incy, stride_y, batch_count) |
integer(kind(rocblas_status_success)) function | rocblas_zhpmv_strided_batched_rank_0 (handle, uplo, n, alpha, AP, stride_A, x, incx, stride_x, beta, y, incy, stride_y, batch_count) |
integer(kind(rocblas_status_success)) function | rocblas_zhpmv_strided_batched_rank_1 (handle, uplo, n, alpha, AP, stride_A, x, incx, stride_x, beta, y, incy, stride_y, batch_count) |
Detailed Description
BLAS Level 2 API.
hpmv_strided_batched performs the matrix-vector operation
y_i := alpha*A_i*x_i + beta*y_i
where alpha and beta are scalars, x_i and y_i are n element vectors and A_i is an n by n Hermitian matrix, supplied in packed form (see description below), for each batch in i = [1, batch_count].
- Parameters
-
[in] handle [rocblas_handle] handle to the rocblas library context queue. [in] uplo [rocblas_fill] rocblas_fill_upper: the upper triangular part of each Hermitian matrix A_i is supplied in AP. rocblas_fill_lower: the lower triangular part of each Hermitian matrix A_i is supplied in AP. [in] n [rocblas_int] the order of each matrix A_i. [in] alpha device pointer or host pointer to scalar alpha. [in] AP device pointer pointing to the beginning of the first matrix (AP_1). Stores the packed version of the specified triangular portion of each Hermitian matrix AP_i of size ((n * (n + 1)) 2). if uplo == rocblas_fill_upper: The upper triangular portion of each Hermitian matrix A_i is supplied. The matrix is compacted so that each AP_i 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: (rocblas_fill_upper; n = 3) (1, 0) (2, 1) (3, 2) (2,-1) (4, 0) (5,-1) --—> [(1,0), (2,1), (4,0), (3,2), (5,-1), (6,0)] (3,-2) (5, 1) (6, 0) if uplo == rocblas_fill_lower: The lower triangular portion of each Hermitian matrix A_i is supplied. The matrix is compacted so that each AP_i 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: (rocblas_fill_lower; n = 3) (1, 0) (2, 1) (3, 2) (2,-1) (4, 0) (5,-1) --—> [(1,0), (2,-1), (3,-2), (4,0), (5,1), (6,0)] (3,-2) (5, 1) (6, 0) Note that the imaginary part of the diagonal elements are not accessed and are assumed to be 0. [in] stride_A [rocblas_stride] stride from the start of one matrix (AP_i) and the next one (AP_i+1). [in] x device array pointing to the beginning of the first vector (x_1). [in] incx [rocblas_int] specifies the increment for the elements of each x_i. [in] stride_x [rocblas_stride] stride from the start of one vector (x_i) and the next one (x_i+1). [in] beta device pointer or host pointer to scalar beta. [in,out] y device array pointing to the beginning of the first vector (y_1). [in] incy [rocblas_int] specifies the increment for the elements of y. [in] stride_y [rocblas_stride] stride from the start of one vector (y_i) and the next one (y_i+1). [in] batch_count [rocblas_int] number of instances in the batch.
Member Function/Subroutine Documentation
◆ rocblas_zhpmv_strided_batched_()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zhpmv_strided_batched::rocblas_zhpmv_strided_batched_ | ( | type(c_ptr), value | handle, |
integer(kind(rocblas_fill_upper)), value | uplo, | ||
integer(c_int), value | n, | ||
complex(c_double_complex) | alpha, | ||
type(c_ptr), value | AP, | ||
integer(c_int64_t), value | stride_A, | ||
type(c_ptr), value | x, | ||
integer(c_int), value | incx, | ||
integer(c_int64_t), value | stride_x, | ||
complex(c_double_complex) | beta, | ||
type(c_ptr), value | y, | ||
integer(c_int), value | incy, | ||
integer(c_int64_t), value | stride_y, | ||
integer(c_int), value | batch_count | ||
) |
◆ rocblas_zhpmv_strided_batched_rank_0()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zhpmv_strided_batched::rocblas_zhpmv_strided_batched_rank_0 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_fill_upper)) | uplo, | ||
integer(c_int) | n, | ||
complex(c_double_complex) | alpha, | ||
type(c_ptr) | AP, | ||
integer(c_int64_t) | stride_A, | ||
complex(c_double_complex), target | x, | ||
integer(c_int) | incx, | ||
integer(c_int64_t) | stride_x, | ||
complex(c_double_complex) | beta, | ||
complex(c_double_complex), target | y, | ||
integer(c_int) | incy, | ||
integer(c_int64_t) | stride_y, | ||
integer(c_int) | batch_count | ||
) |
◆ rocblas_zhpmv_strided_batched_rank_1()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zhpmv_strided_batched::rocblas_zhpmv_strided_batched_rank_1 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_fill_upper)) | uplo, | ||
integer(c_int) | n, | ||
complex(c_double_complex) | alpha, | ||
type(c_ptr) | AP, | ||
integer(c_int64_t) | stride_A, | ||
complex(c_double_complex), dimension(:), target | x, | ||
integer(c_int) | incx, | ||
integer(c_int64_t) | stride_x, | ||
complex(c_double_complex) | beta, | ||
complex(c_double_complex), dimension(:), target | y, | ||
integer(c_int) | incy, | ||
integer(c_int64_t) | stride_y, | ||
integer(c_int) | batch_count | ||
) |
The documentation for this interface was generated from the following file: