rocblas_geam_ex Interface Reference

rocblas_geam_ex Interface Reference#

HIPFORT API Reference: hipfort_rocblas::rocblas_geam_ex Interface Reference
hipfort_rocblas::rocblas_geam_ex Interface Reference

BLAS EX API. More...

Public Member Functions

integer(kind(rocblas_status_success)) function rocblas_geam_ex_ (handle, transa, transb, m, n, k, alpha, a, a_type, lda, b, b_type, ldb, beta, c, c_type, ldc, d, d_type, ldd, compute_type, geam_ex_op)
 

Detailed Description

BLAS EX API.

The geam_ex function performs one of the matrix-matrix operations:

Dij = min(alpha * (Aik + Bkj), beta * Cij)
Dij = min(alpha * Aik, alpha * Bkj) + beta * Cij

alpha and beta are scalars, and A, B, C, and D are matrices, with op( A ) an m by k matrix, op( B ) a k by n matrix, and C and D both m by n matrices. C and D can point to the same matrix if their type and leading dimensions are identical.

Aik refers to the element at the i -th row and k -th column of op( A ), Bkj refers to the element at the k -th row and j -th column of op( B ), and Cij/Dij refers to the element at the i-th row and j-th column of C/D.

Supported types are as follows:

  • rocblas_datatype_f64_r = a_type = b_type = c_type = d_type = compute_type
  • rocblas_datatype_f32_r = a_type = b_type = c_type = d_type = compute_type
  • rocblas_datatype_f16_r = a_type = b_type = c_type = d_type = compute_type
Parameters
[in]handle- [rocblas_handle] handle to the rocBLAS library context queue.
[in]transA- [rocblas_operation] specifies the form of op( A ).
[in]transB- [rocblas_operation] specifies the form of op( B ).
[in]m- [rocblas_int] matrix dimension m.
[in]n- [rocblas_int] matrix dimension n.
[in]k- [rocblas_int] matrix dimension k.
[in]alpha- [const void *] device pointer or host pointer specifying the scalar alpha. Same datatype as compute_type.
[in]A- [void *] device pointer storing matrix A.
[in]a_type- [rocblas_datatype] specifies the datatype of matrix A.
[in]lda- [rocblas_int] specifies the leading dimension of A.
  • If transA == N, must have lda >= max(1, m).
  • Otherwise, must have lda >= max(1, k).
[in]B- [void *] device pointer storing matrix B.
[in]b_type- [rocblas_datatype] specifies the datatype of matrix B.
[in]ldb- [rocblas_int] specifies the leading dimension of B.
  • If transB == N, must have ldb >= max(1, k).
  • Otherwise, must have ldb >= max(1, n).
[in]beta- [const void *] device pointer or host pointer specifying the scalar beta. Same datatype as compute_type.
[in]C- [void *] device pointer storing matrix C.
[in]c_type- [rocblas_datatype] specifies the datatype of matrix C.
[in]ldc- [rocblas_int] specifies the leading dimension of C. Must have ldc >= max(1, m).
[out]D- [void *] device pointer storing matrix D. If D and C pointers are to the same matrix, then d_type must equal c_type and ldd must equal ldc or the respective invalid status will be returned.
[in]d_type- [rocblas_datatype] specifies the datatype of matrix D.
[in]ldd- [rocblas_int] specifies the leading dimension of D. Must have ldd >= max(1, m).
[in]compute_type[rocblas_datatype] specifies the datatype of computation.
[in]geam_ex_op- [rocblas_geam_ex_operation] enumerant specifying the operation type and support for rocblas_geam_ex_operation_min_plus and rocblas_geam_ex_operation_plus_min.

Member Function/Subroutine Documentation

◆ rocblas_geam_ex_()

integer(kind(rocblas_status_success)) function hipfort_rocblas::rocblas_geam_ex::rocblas_geam_ex_ ( type(c_ptr), value  handle,
integer(kind(rocblas_operation_none)), value  transa,
integer(kind(rocblas_operation_none)), value  transb,
integer(c_int), value  m,
integer(c_int), value  n,
integer(c_int), value  k,
type(c_ptr), value  alpha,
type(c_ptr), value  a,
integer(kind(rocblas_datatype_f16_r)), value  a_type,
integer(c_int), value  lda,
type(c_ptr), value  b,
integer(kind(rocblas_datatype_f16_r)), value  b_type,
integer(c_int), value  ldb,
type(c_ptr), value  beta,
type(c_ptr), value  c,
integer(kind(rocblas_datatype_f16_r)), value  c_type,
integer(c_int), value  ldc,
type(c_ptr), value  d,
integer(kind(rocblas_datatype_f16_r)), value  d_type,
integer(c_int), value  ldd,
integer(kind(rocblas_datatype_f16_r)), value  compute_type,
integer(kind(rocblas_geam_ex_operation_min_plus)), value  geam_ex_op 
)

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