hipblascher2stridedbatched Interface Reference

hipblascher2stridedbatched Interface Reference#

HIPFORT API Reference: hipfort_hipblas::hipblascher2stridedbatched Interface Reference
hipfort_hipblas::hipblascher2stridedbatched Interface Reference

BLAS Level 2 API. More...

Public Member Functions

integer(kind(hipblas_status_success)) function hipblascher2stridedbatched_ (handle, uplo, n, alpha, x, incx, stridex, y, incy, stridey, ap, lda, stridea, batchcount)
 
integer(kind(hipblas_status_success)) function hipblascher2stridedbatched_rank_0 (handle, uplo, n, alpha, x, incx, stridex, y, incy, stridey, ap, lda, stridea, batchcount)
 
integer(kind(hipblas_status_success)) function hipblascher2stridedbatched_rank_1 (handle, uplo, n, alpha, x, incx, stridex, y, incy, stridey, ap, lda, stridea, batchcount)
 
integer(kind(hipblas_status_success)) function hipblascher2stridedbatched_full_rank (handle, uplo, n, alpha, x, incx, stridex, y, incy, stridey, ap, lda, stridea, batchcount)
 

Detailed Description

BLAS Level 2 API.

The her2StridedBatched functions perform the matrix-vector operations:

A_i := A_i + alpha*x_i*y_i**H + conj(alpha)*y_i*x_i**H

where alpha is a complex scalar, x_i and y_i are vectors, and A_i is an n by n Hermitian matrix for each batch in i = [1, batchCount].

  • Supported precisions in rocBLAS : 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] specifies either upper (HIPBLAS_FILL_MODE_UPPER) or lower (HIPBLAS_FILL_MODE_LOWER):
  • HIPBLAS_FILL_MODE_UPPER: The upper triangular part of each A_i is supplied.
  • HIPBLAS_FILL_MODE_LOWER: The lower triangular part of each A_i is supplied.
[in]n- [int] the number of rows and columns of each matrix A_i. Must be at least 0.
[in]alphadevice pointer or host pointer to scalar alpha.
[in]x- device pointer pointing to the first vector x_1.
[in]incx- [int] specifies the increment for the elements of each x_i.
[in]stridex- [hipblasStride] specifies the stride between the beginning of one vector (x_i) and the next (x_i+1).
[in]y- device pointer pointing to the first vector y_i.
[in]incy- [int] specifies the increment for the elements of each y_i.
[in]stridey- [hipblasStride] specifies the stride between the beginning of one vector (y_i) and the next (y_i+1).
[in,out]AP- device pointer pointing to the first matrix (A_1). Stores the specified triangular portion of each Hermitian matrix A_i.
  • if uplo == HIPBLAS_FILL_MODE_UPPER: The upper triangular portion of each Hermitian matrix A_i is supplied. The lower triangular portion of each A_i will not be touched.
  • if uplo == HIPBLAS_FILL_MODE_LOWER: The lower triangular portion of each Hermitian matrix A_i is supplied. The upper triangular portion of each A_i will not be touched.
  • Note that the imaginary part of the diagonal elements are not accessed and are assumed to be 0.
[in]lda- [int] specifies the leading dimension of each A_i. Must be at least max(lda, 1).
[in]strideA- [hipblasStride] specifies the stride between the beginning of one matrix (A_i) and the next (A_i+1).
[in]batchCount- [int] number of instances in the batch.

Member Function/Subroutine Documentation

◆ hipblascher2stridedbatched_()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblascher2stridedbatched::hipblascher2stridedbatched_ ( type(c_ptr), value  handle,
integer(kind(hipblas_fill_mode_upper)), value  uplo,
integer(c_int), value  n,
complex(c_float_complex)  alpha,
type(c_ptr), value  x,
integer(c_int), value  incx,
integer(c_int64_t), value  stridex,
type(c_ptr), value  y,
integer(c_int), value  incy,
integer(c_int64_t), value  stridey,
type(c_ptr), value  ap,
integer(c_int), value  lda,
integer(c_int64_t), value  stridea,
integer(c_int), value  batchcount 
)

◆ hipblascher2stridedbatched_full_rank()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblascher2stridedbatched::hipblascher2stridedbatched_full_rank ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(c_int)  n,
complex(c_float_complex)  alpha,
complex(c_float_complex), dimension(:), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
complex(c_float_complex), dimension(:), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
complex(c_float_complex), dimension(:,:), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
integer(c_int)  batchcount 
)

◆ hipblascher2stridedbatched_rank_0()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblascher2stridedbatched::hipblascher2stridedbatched_rank_0 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(c_int)  n,
complex(c_float_complex)  alpha,
complex(c_float_complex), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
complex(c_float_complex), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
complex(c_float_complex), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
integer(c_int)  batchcount 
)

◆ hipblascher2stridedbatched_rank_1()

integer(kind(hipblas_status_success)) function hipfort_hipblas::hipblascher2stridedbatched::hipblascher2stridedbatched_rank_1 ( type(c_ptr)  handle,
integer(kind(hipblas_fill_mode_upper))  uplo,
integer(c_int)  n,
complex(c_float_complex)  alpha,
complex(c_float_complex), dimension(:), target  x,
integer(c_int)  incx,
integer(c_int64_t)  stridex,
complex(c_float_complex), dimension(:), target  y,
integer(c_int)  incy,
integer(c_int64_t)  stridey,
complex(c_float_complex), dimension(:), target  ap,
integer(c_int)  lda,
integer(c_int64_t)  stridea,
integer(c_int)  batchcount 
)

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