hipblasstbmvstridedbatched Interface Reference

hipblasstbmvstridedbatched Interface Reference#

HIPFORT API Reference: hipfort_hipblas::hipblasstbmvstridedbatched Interface Reference
hipfort_hipblas::hipblasstbmvstridedbatched Interface Reference

BLAS Level 2 API. More...

Public Member Functions

integer(kind(hipblas_status_success)) function hipblasstbmvstridedbatched_ (handle, uplo, transa, diag, n, k, ap, lda, stridea, x, incx, stridex, batchcount)
 
integer(kind(hipblas_status_success)) function hipblasstbmvstridedbatched_rank_0 (handle, uplo, transa, diag, n, k, ap, lda, stridea, x, incx, stridex, batchcount)
 
integer(kind(hipblas_status_success)) function hipblasstbmvstridedbatched_rank_1 (handle, uplo, transa, diag, n, k, ap, lda, stridea, x, incx, stridex, batchcount)
 
integer(kind(hipblas_status_success)) function hipblasstbmvstridedbatched_full_rank (handle, uplo, transa, diag, n, k, ap, lda, stridea, x, incx, stridex, batchcount)
 

Detailed Description

BLAS Level 2 API.

The tbmvStridedBatched functions perform one of the matrix-vector operations:

x_i := A_i*x_i      or
x_i := A_i**T*x_i   or
x_i := A_i**H*x_i,

where (A_i, x_i) is the i-th instance of the batch, x_i is a vector, and A_i is an n 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]uplo- [hipblasFillMode_t]
  • HIPBLAS_FILL_MODE_UPPER: each A_i is an upper banded triangular matrix.
  • HIPBLAS_FILL_MODE_LOWER: each A_i is a lower banded triangular matrix.
[in]transA- [hipblasOperation_t] indicates whether each matrix A_i is tranposed (conjugated) or not.
[in]diag- [hipblasDiagType_t]
  • HIPBLAS_DIAG_UNIT: The main diagonal of each A_i is assumed to consist of only 1's and is not referenced.
  • HIPBLAS_DIAG_NON_UNIT: No assumptions are made of each A_i's main diagonal.
[in]n- [int] the number of rows and columns of the matrix represented by each A_i.
[in]k- [int]
  • if uplo == HIPBLAS_FILL_MODE_UPPER, k specifies the number of super-diagonals of each matrix A_i.
  • if uplo == HIPBLAS_FILL_MODE_LOWER, k specifies the number of sub-diagonals of each matrix A_i.
  • k must satisfy k > 0 && k < lda.
[in]AP- device array to the first matrix A_i of the batch. Stores each banded triangular matrix A_i.
  • if uplo == HIPBLAS_FILL_MODE_UPPER: The matrix represented is an upper banded triangular matrix with the main diagonal and k super-diagonals. Everything else can be assumed to be 0. The matrix is compacted so that the main diagonal resides on the k'th row, the first super diagonal resides on the RHS of the k-1'th row, and so forth, with the k'th diagonal on the RHS of the 0'th row. Ex: (HIPBLAS_FILL_MODE_UPPER; n = 5; k = 2) 1 6 9 0 0 -> 0 0 9 8 7 0 2 7 8 0 -> 0 6 7 8 9 0 0 3 8 7 -> 1 2 3 4 5 0 0 0 4 9 -> 0 0 0 0 0 0 0 0 0 5 -> 0 0 0 0 0
    • if uplo == HIPBLAS_FILL_MODE_LOWER: The matrix represnted is a lower banded triangular matrix with the main diagonal and k sub-diagonals. Everything else can be assumed to be 0. The matrix is compacted so that the main diagonal resides on the 0'th row, working up to the k'th diagonal residing on the LHS of the k'th row. Ex: (HIPBLAS_FILL_MODE_LOWER; n = 5; k = 2) 1 0 0 0 0 -> 1 2 3 4 5 6 2 0 0 0 -> 6 7 8 9 0 9 7 3 0 0 -> 9 8 7 0 0 0 8 8 4 0 -> 0 0 0 0 0 0 0 7 9 5 -> 0 0 0 0 0
[in]lda- [int] specifies the leading dimension of each A_i. lda must satisfy lda > k.
[in]strideA- [hipblasStride] stride from the start of one A_i matrix to the next A_(i + 1).
[in,out]x- device array to the first vector x_i of the batch.
[in]incx- [int] specifies the increment for the elements of each x_i.
[in]stridex- [hipblasStride] stride from the start of one x_i matrix to the next x_(i + 1).
[in]batchCount- [int] number of instances in the batch.

Member Function/Subroutine Documentation

◆ hipblasstbmvstridedbatched_()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblasstbmvstridedbatched::hipblasstbmvstridedbatched_ ( type(c_ptr), value  handle,
integer(kind(hipblas_fill_mode_upper)), value  uplo,
integer(kind(hipblas_op_n)), value  transa,
integer(kind(hipblas_diag_non_unit)), value  diag,
integer(c_int), value  n,
integer(c_int), value  k,
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,
integer(c_int), value  batchcount 
)

◆ hipblasstbmvstridedbatched_full_rank()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblasstbmvstridedbatched::hipblasstbmvstridedbatched_full_rank ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(kind(hipblas_op_n))  transa,
integer(kind(hipblas_diag_non_unit))  diag,
integer(c_int)  n,
integer(c_int)  k,
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,
integer(c_int)  batchcount 
)

◆ hipblasstbmvstridedbatched_rank_0()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblasstbmvstridedbatched::hipblasstbmvstridedbatched_rank_0 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(kind(hipblas_op_n))  transa,
integer(kind(hipblas_diag_non_unit))  diag,
integer(c_int)  n,
integer(c_int)  k,
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,
integer(c_int)  batchcount 
)

◆ hipblasstbmvstridedbatched_rank_1()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblasstbmvstridedbatched::hipblasstbmvstridedbatched_rank_1 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(kind(hipblas_op_n))  transa,
integer(kind(hipblas_diag_non_unit))  diag,
integer(c_int)  n,
integer(c_int)  k,
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,
integer(c_int)  batchcount 
)

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