hipblassgemvstridedbatched Interface Reference

hipblassgemvstridedbatched Interface Reference#

HIPFORT API Reference: hipfort_hipblas::hipblassgemvstridedbatched Interface Reference
hipfort_hipblas::hipblassgemvstridedbatched Interface Reference

BLAS Level 2 API. More...

Public Member Functions

integer(kind(hipblas_status_success)) function hipblassgemvstridedbatched_ (handle, transa, m, n, alpha, ap, lda, stridea, x, incx, stridex, beta, y, incy, stridey, batchcount)
 
integer(kind(hipblas_status_success)) function hipblassgemvstridedbatched_rank_0 (handle, transa, m, n, alpha, ap, lda, stridea, x, incx, stridex, beta, y, incy, stridey, batchcount)
 
integer(kind(hipblas_status_success)) function hipblassgemvstridedbatched_rank_1 (handle, transa, m, n, alpha, ap, lda, stridea, x, incx, stridex, beta, y, incy, stridey, batchcount)
 
integer(kind(hipblas_status_success)) function hipblassgemvstridedbatched_full_rank (handle, transa, m, n, alpha, ap, lda, stridea, x, incx, stridex, beta, y, incy, stridey, batchcount)
 

Detailed Description

BLAS Level 2 API.

The gemvStridedBatched functions perform 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, ..., batchCount.

  • Supported precisions in rocBLAS : s, d, c, and z.
  • Supported precisions in cuBLAS : No support.
Parameters
[in]handle- [hipblasHandle_t] handle to the hipBLAS library context queue.
[in]transA- [hipblasOperation_t] indicates whether matrices A_i are tranposed (conjugated) or not.
[in]m- [int] number of rows of matrices A_i.
[in]n- [int] number of columns of matrices A_i.
[in]alpha- device pointer or host pointer to scalar alpha.
[in]AP- device pointer to the first matrix (A_1) in the batch.
[in]lda- [int] specifies the leading dimension of matrices A_i.
[in]strideA- [hipblasStride] stride from the start of one matrix (A_i) to the next one (A_i+1).
[in]x- device pointer to the first vector (x_1) in the batch.
[in]incx- [int] specifies the increment for the elements of vectors x_i.
[in]stridex- [hipblasStride] stride from the start of one vector (x_i) to the next one (x_i+1). There are no restrictions placed on stridex. However, the user should ensure that stridex is of an appropriate size. When trans equals HIPBLAS_OP_N, this typically means stridex >= n * incx. Otherwise, stridex >= 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- [int] specifies the increment for the elements of vectors y_i.
[in]stridey- [hipblasStride] stride from the start of one vector (y_i) to the next one (y_i+1). There are no restrictions placed on stridey. However, the user should ensure that stridey is of an appropriate size. When trans equals HIPBLAS_OP_N, this typically means stridey >= m * incy. Otherwise, stridey >= n * incy. stridey should be non zero.
[in]batchCount- [int] number of instances in the batch.

Member Function/Subroutine Documentation

◆ hipblassgemvstridedbatched_()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgemvstridedbatched::hipblassgemvstridedbatched_ ( type(c_ptr), value  handle,
integer(kind(hipblas_op_n)), value  transa,
integer(c_int), value  m,
integer(c_int), value  n,
real(c_float)  alpha,
type(c_ptr), value  ap,
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,
real(c_float)  beta,
type(c_ptr), value  y,
integer(c_int), value  incy,
integer(c_int64_t), value  stridey,
integer(c_int), value  batchcount 
)

◆ hipblassgemvstridedbatched_full_rank()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgemvstridedbatched::hipblassgemvstridedbatched_full_rank ( type(c_ptr)  handle,
integer(kind(hipblas_op_n))  transa,
integer(c_int)  m,
integer(c_int)  n,
real(c_float)  alpha,
real(c_float), dimension(:,:), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
real(c_float), dimension(:), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
real(c_float)  beta,
real(c_float), dimension(:), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
integer(c_int)  batchcount 
)

◆ hipblassgemvstridedbatched_rank_0()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgemvstridedbatched::hipblassgemvstridedbatched_rank_0 ( type(c_ptr)  handle,
integer(kind(hipblas_op_n))  transa,
integer(c_int)  m,
integer(c_int)  n,
real(c_float)  alpha,
real(c_float), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
real(c_float), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
real(c_float)  beta,
real(c_float), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
integer(c_int)  batchcount 
)

◆ hipblassgemvstridedbatched_rank_1()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblassgemvstridedbatched::hipblassgemvstridedbatched_rank_1 ( type(c_ptr)  handle,
integer(kind(hipblas_op_n))  transa,
integer(c_int)  m,
integer(c_int)  n,
real(c_float)  alpha,
real(c_float), dimension(:), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
real(c_float), dimension(:), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
real(c_float)  beta,
real(c_float), dimension(:), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
integer(c_int)  batchcount 
)

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