rocblas_stbmv_batched Interface Reference

rocblas_stbmv_batched Interface Reference#

HIPFORT API Reference: hipfort_rocblas::rocblas_stbmv_batched Interface Reference
hipfort_rocblas::rocblas_stbmv_batched Interface Reference

BLAS Level 2 API. More...

Public Member Functions

integer(kind(rocblas_status_success)) function rocblas_stbmv_batched_ (handle, uplo, trans, diag, n, k, a, lda, x, incx, batch_count)
 

Detailed Description

BLAS Level 2 API.

The tbmv_batched 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, ..., batch_count.

Parameters
[in]handle- [rocblas_handle] handle to the rocBLAS library context queue.
[in]uplo- [rocblas_fill]
  • rocblas_fill_upper: each A_i is an upper banded triangular matrix.
  • rocblas_fill_lower: each A_i is a lower banded triangular matrix.
[in]trans- [rocblas_operation] indicates whether each matrix A_i is tranposed (conjugated) or not.
[in]diag- [rocblas_diagonal]
  • rocblas_diagonal_unit: The main diagonal of each A_i is assumed to consist of only 1's and is not referenced.
  • rocblas_diagonal_non_unit: No assumptions are made of the main diagonal of each A_i.
[in]n- [rocblas_int] the number of rows and columns of the matrix represented by each A_i.
[in]k- [rocblas_int]
    if uplo == rocblas_fill_upper, k specifies the number of super-diagonals
    of each matrix A_i.

    if uplo == rocblas_fill_lower, k specifies the number of sub-diagonals
    of each matrix A_i.
    k must satisfy k > 0 && k < lda.
[in]A- device array of device pointers storing each banded triangular matrix A_i.
    if uplo == rocblas_fill_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: (rocblas_fill_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 == rocblas_fill_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: (rocblas_fill_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- [rocblas_int] specifies the leading dimension of each A_i. lda must satisfy lda > k.
[in,out]x- device array of device pointer storing each vector x_i.
[in]incx- [rocblas_int] specifies the increment for the elements of each x_i.
[in]batch_count- [rocblas_int] number of instances in the batch.

Member Function/Subroutine Documentation

◆ rocblas_stbmv_batched_()

integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_stbmv_batched::rocblas_stbmv_batched_ ( type(c_ptr), value  handle,
integer(kind(rocblas_fill_upper)), value  uplo,
integer(kind(rocblas_operation_none)), value  trans,
integer(kind(rocblas_diagonal_non_unit)), value  diag,
integer(c_int), value  n,
integer(c_int), value  k,
type(c_ptr), value  a,
integer(c_int), value  lda,
type(c_ptr), value  x,
integer(c_int), value  incx,
integer(c_int), value  batch_count 
)

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