hipblasgemmgroupedbatchedex Interface Reference#
hipfort_hipblas::hipblasgemmgroupedbatchedex Interface Reference
BLAS EX API. More...
Public Member Functions | |
| integer(c_int) function | hipblasgemmgroupedbatchedex_ (handle, transa_array, transb_array, m_array, n_array, k_array, alpha_array, aarray, atype, lda_array, barray, btype, ldb_array, beta_array, carray, ctype, ldc_array, darray, dtype, ldd_array, group_count, group_size, computetype, algo) |
Detailed Description
BLAS EX API.
The gemmGroupedBatchedEx functions perform grouped batched matrix-matrix operations with mixed precision types. There are group_count groups. Within group i, all problems share the same transA, transB, m, n, k, lda, ldb, ldc, ldd, alpha, and beta. Each group i contains group_size[i] problems.
For each problem j in group i:
D_j = alpha_i*op( A_j )*op( B_j ) + beta_i*C_j,
Supported types are as follows:
- HIP_R_32F = aType = bType = cType = dType = computeType
- HIP_R_64F = aType = bType = cType = dType = computeType
- HIP_R_16F = aType = bType = cType = dType = computeType
- HIP_R_16F = aType = bType = cType = dType; HIPBLAS_COMPUTE_32F = computeType
- HIP_R_16F = aType = bType; HIP_R_32F = cType = dType = computeType
- HIP_R_16BF = aType = bType = cType = dType; HIPBLAS_COMPUTE_32F = computeType
- HIP_R_16BF = aType = bType; HIP_R_32F = cType = dType = computeType
- HIP_R_8I = aType = bType; HIP_R_32I = cType = dType = computeType
- HIP_C_32F = aType = bType = cType = dType = computeType
- HIP_C_64F = aType = bType = cType = dType = computeType
hipblasGemmGroupedBatchedExWithFlags is also available. This is identical to hipblasGemmGroupedBatchedEx with the addition of a flags parameter which controls the flags used in Tensile to control gemm algorithms with the rocBLAS backend. When using a cuBLAS backend, this function is not supported.
- Parameters
-
[in] handle - [hipblasHandle_t] handle to the hipBLAS library context queue. [in] transA_array - [const hipblasOperation_t*] host array of length group_count.[in] transB_array - [const hipblasOperation_t*] host array of length group_count.[in] m_array - [const int*] host array of length group_count.[in] n_array - [const int*] host array of length group_count.[in] k_array - [const int*] host array of length group_count.[in] alpha_array - device pointer or host pointer to an array of length group_count.[in] Aarray - device array of device pointers storing each matrix A_j.[in] aType - [hipDataType] datatype of each matrix A_j.[in] lda_array - [const int*] host array of length group_count.[in] Barray - device array of device pointers storing each matrix B_j.[in] bType - [hipDataType] datatype of each matrix B_j.[in] ldb_array - [const int*] host array of length group_count.[in] beta_array - device pointer or host pointer to an array of length group_count.[in] Carray - device array of device pointers storing each matrix C_j.[in] cType - [hipDataType] datatype of each matrix C_j.[in] ldc_array - [const int*] host array of length group_count.[in,out] Darray - device array of device pointers storing each matrix D_j.[in] dType - [hipDataType] datatype of each matrix D_j.[in] ldd_array - [const int*] host array of length group_count.[in] group_count - [int] number of groups. [in] group_size - [const int*] host array of length group_count.[in] computeType - [hipblasComputeType_t] datatype of computation. [in] algo - [hipblasGemmAlgo_t] enumerant specifying the algorithm type.
Member Function/Subroutine Documentation
◆ hipblasgemmgroupedbatchedex_()
| integer(c_int) function hipfort_hipblas::hipblasgemmgroupedbatchedex::hipblasgemmgroupedbatchedex_ | ( | type(c_ptr), value | handle, |
| type(c_ptr), value | transa_array, | ||
| type(c_ptr), value | transb_array, | ||
| type(c_ptr), value | m_array, | ||
| type(c_ptr), value | n_array, | ||
| type(c_ptr), value | k_array, | ||
| type(c_ptr), value | alpha_array, | ||
| type(c_ptr), value | aarray, | ||
| integer(c_int), value | atype, | ||
| type(c_ptr), value | lda_array, | ||
| type(c_ptr), value | barray, | ||
| integer(c_int), value | btype, | ||
| type(c_ptr), value | ldb_array, | ||
| type(c_ptr), value | beta_array, | ||
| type(c_ptr), value | carray, | ||
| integer(c_int), value | ctype, | ||
| type(c_ptr), value | ldc_array, | ||
| type(c_ptr), value | darray, | ||
| integer(c_int), value | dtype, | ||
| type(c_ptr), value | ldd_array, | ||
| integer(c_int), value | group_count, | ||
| type(c_ptr), value | group_size, | ||
| integer(c_int), value | computetype, | ||
| integer(c_int), value | algo | ||
| ) |
The documentation for this interface was generated from the following file: