rocblas_zgemv_strided_batched Interface Reference#
hipfort_rocblas::rocblas_zgemv_strided_batched Interface Reference
BLAS Level 2 API. More...
Public Member Functions | |
integer(kind(rocblas_status_success)) function | rocblas_zgemv_strided_batched_ (handle, transA, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batch_count) |
integer(kind(rocblas_status_success)) function | rocblas_zgemv_strided_batched_full_rank (handle, transA, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batch_count) |
integer(kind(rocblas_status_success)) function | rocblas_zgemv_strided_batched_rank_0 (handle, transA, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batch_count) |
integer(kind(rocblas_status_success)) function | rocblas_zgemv_strided_batched_rank_1 (handle, transA, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batch_count) |
Detailed Description
BLAS Level 2 API.
gemv_strided_batched performs a batch of matrix-vector operations
y_i := alpha*A_i*x_i + beta*y_i, or y_i := alpha*A_i**T*x_i + beta*y_i, or y_i := alpha*A_i**H*x_i + beta*y_i,
where (A_i, x_i, y_i) is the i-th instance of the batch. alpha and beta are scalars, x_i and y_i are vectors and A_i is an m by n matrix, for i = 1, ..., batch_count.
- Parameters
-
[in] handle [rocblas_handle] handle to the rocblas library context queue. [in] transA [rocblas_operation] indicates whether matrices A_i are tranposed (conjugated) or not [in] m [rocblas_int] number of rows of matrices A_i [in] n [rocblas_int] number of columns of matrices A_i [in] alpha device pointer or host pointer to scalar alpha. [in] A device pointer to the first matrix (A_1) in the batch. [in] lda [rocblas_int] specifies the leading dimension of matrices A_i. [in] strideA [rocblas_stride] stride from the start of one matrix (A_i) and the next one (A_i+1) [in] x device pointer to the first vector (x_1) in the batch. [in] incx [rocblas_int] specifies the increment for the elements of vectors x_i. [in] stridex [rocblas_stride] stride from the start of one vector (x_i) and the next one (x_i+1). There are no restrictions placed on stride_x, however the user should take care to ensure that stride_x is of appropriate size. When trans equals rocblas_operation_none this typically means stride_x >= n * incx, otherwise stride_x >= m * incx. [in] beta device pointer or host pointer to scalar beta. [in,out] y device pointer to the first vector (y_1) in the batch. [in] incy [rocblas_int] specifies the increment for the elements of vectors y_i. [in] stridey [rocblas_stride] stride from the start of one vector (y_i) and the next one (y_i+1). There are no restrictions placed on stride_y, however the user should take care to ensure that stride_y is of appropriate size. When trans equals rocblas_operation_none this typically means stride_y >= m * incy, otherwise stride_y >= n * incy. stridey should be non zero. [in] batch_count [rocblas_int] number of instances in the batch
Member Function/Subroutine Documentation
◆ rocblas_zgemv_strided_batched_()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zgemv_strided_batched::rocblas_zgemv_strided_batched_ | ( | type(c_ptr), value | handle, |
integer(kind(rocblas_operation_none)), value | transA, | ||
integer(c_int), value | m, | ||
integer(c_int), value | n, | ||
complex(c_double_complex) | alpha, | ||
type(c_ptr), value | A, | ||
integer(c_int), value | lda, | ||
integer(c_int64_t), value | strideA, | ||
type(c_ptr), value | x, | ||
integer(c_int), value | incx, | ||
integer(c_int64_t), value | stridex, | ||
complex(c_double_complex) | beta, | ||
type(c_ptr), value | y, | ||
integer(c_int), value | incy, | ||
integer(c_int64_t), value | stridey, | ||
integer(c_int), value | batch_count | ||
) |
◆ rocblas_zgemv_strided_batched_full_rank()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zgemv_strided_batched::rocblas_zgemv_strided_batched_full_rank | ( | type(c_ptr) | handle, |
integer(kind(rocblas_operation_none)) | transA, | ||
integer(c_int) | m, | ||
integer(c_int) | n, | ||
complex(c_double_complex) | alpha, | ||
complex(c_double_complex), dimension(:,:), target | A, | ||
integer(c_int) | lda, | ||
integer(c_int64_t) | strideA, | ||
complex(c_double_complex), dimension(:), target | x, | ||
integer(c_int) | incx, | ||
integer(c_int64_t) | stridex, | ||
complex(c_double_complex) | beta, | ||
complex(c_double_complex), dimension(:), target | y, | ||
integer(c_int) | incy, | ||
integer(c_int64_t) | stridey, | ||
integer(c_int) | batch_count | ||
) |
◆ rocblas_zgemv_strided_batched_rank_0()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zgemv_strided_batched::rocblas_zgemv_strided_batched_rank_0 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_operation_none)) | transA, | ||
integer(c_int) | m, | ||
integer(c_int) | n, | ||
complex(c_double_complex) | alpha, | ||
complex(c_double_complex), target | A, | ||
integer(c_int) | lda, | ||
integer(c_int64_t) | strideA, | ||
complex(c_double_complex), target | x, | ||
integer(c_int) | incx, | ||
integer(c_int64_t) | stridex, | ||
complex(c_double_complex) | beta, | ||
complex(c_double_complex), target | y, | ||
integer(c_int) | incy, | ||
integer(c_int64_t) | stridey, | ||
integer(c_int) | batch_count | ||
) |
◆ rocblas_zgemv_strided_batched_rank_1()
integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_zgemv_strided_batched::rocblas_zgemv_strided_batched_rank_1 | ( | type(c_ptr) | handle, |
integer(kind(rocblas_operation_none)) | transA, | ||
integer(c_int) | m, | ||
integer(c_int) | n, | ||
complex(c_double_complex) | alpha, | ||
complex(c_double_complex), dimension(:), target | A, | ||
integer(c_int) | lda, | ||
integer(c_int64_t) | strideA, | ||
complex(c_double_complex), dimension(:), target | x, | ||
integer(c_int) | incx, | ||
integer(c_int64_t) | stridex, | ||
complex(c_double_complex) | beta, | ||
complex(c_double_complex), dimension(:), target | y, | ||
integer(c_int) | incy, | ||
integer(c_int64_t) | stridey, | ||
integer(c_int) | batch_count | ||
) |
The documentation for this interface was generated from the following file: