HICBLAS_MOD Module


Uses

  • module~~hicblas_mod~~UsesGraph module~hicblas_mod HICBLAS_MOD EC_PARKIND EC_PARKIND module~hicblas_mod->EC_PARKIND module~growing_allocator_mod GROWING_ALLOCATOR_MOD module~hicblas_mod->module~growing_allocator_mod iso_c_binding iso_c_binding module~growing_allocator_mod->iso_c_binding

Used by

  • module~~hicblas_mod~~UsedByGraph module~hicblas_mod HICBLAS_MOD proc~dealloc_resol DEALLOC_RESOL proc~dealloc_resol->module~hicblas_mod proc~ledir~2 LEDIR proc~ledir~2->module~hicblas_mod proc~leinv LEINV proc~leinv->module~hicblas_mod

Interfaces

interface

  • public subroutine HIP_DGEMM_BATCHED(CTA, CTB, M, N, K, ALPHA, A, LDA, TDA, B, LDB, TDB, BETA, C, LDC, TDC, BATCHCOUNT, STREAM, ALLOC) bind(C, NAME='hipblas_dgemm_wrapper')

    Arguments

    Type IntentOptional Attributes Name
    character(kind=C_CHAR, len=1), VALUE :: CTA
    character(kind=C_CHAR, len=1), VALUE :: CTB
    integer(kind=C_INT), VALUE :: M
    integer(kind=C_INT), VALUE :: N
    integer(kind=C_INT), VALUE :: K
    real(kind=C_DOUBLE), VALUE :: ALPHA
    real(kind=C_DOUBLE), DIMENSION(LDA,*) :: A
    integer(kind=C_INT), VALUE :: LDA
    integer(kind=C_INT), VALUE :: TDA
    real(kind=C_DOUBLE), DIMENSION(LDB,*) :: B
    integer(kind=C_INT), VALUE :: LDB
    integer(kind=C_INT), VALUE :: TDB
    real(kind=C_DOUBLE), VALUE :: BETA
    real(kind=C_DOUBLE), DIMENSION(LDC,*) :: C
    integer(kind=C_INT), VALUE :: LDC
    integer(kind=C_INT), VALUE :: TDC
    integer(kind=C_INT), VALUE :: BATCHCOUNT
    integer(kind=C_SIZE_T) :: STREAM
    type(C_PTR), intent(in), VALUE :: ALLOC

interface

  • public subroutine HIP_SGEMM_BATCHED(CTA, CTB, M, N, K, ALPHA, A, LDA, TDA, B, LDB, TDB, BETA, C, LDC, TDC, BATCHCOUNT, STREAM, ALLOC) bind(C, NAME='hipblas_sgemm_wrapper')

    Arguments

    Type IntentOptional Attributes Name
    character(kind=C_CHAR, len=1), VALUE :: CTA
    character(kind=C_CHAR, len=1), VALUE :: CTB
    integer(kind=C_INT), VALUE :: M
    integer(kind=C_INT), VALUE :: N
    integer(kind=C_INT), VALUE :: K
    real(kind=C_FLOAT), VALUE :: ALPHA
    real(kind=C_FLOAT), DIMENSION(LDA,*) :: A
    integer(kind=C_INT), VALUE :: LDA
    integer(kind=C_INT), VALUE :: TDA
    real(kind=C_FLOAT), DIMENSION(LDB,*) :: B
    integer(kind=C_INT), VALUE :: LDB
    integer(kind=C_INT), VALUE :: TDB
    real(kind=C_FLOAT), VALUE :: BETA
    real(kind=C_FLOAT), DIMENSION(LDC,*) :: C
    integer(kind=C_INT), VALUE :: LDC
    integer(kind=C_INT), VALUE :: TDC
    integer(kind=C_INT), VALUE :: BATCHCOUNT
    integer(kind=C_SIZE_T) :: STREAM
    type(C_PTR), intent(in), VALUE :: ALLOC

interface

  • public subroutine CLEAN_GEMM(RESOL_ID) bind(C, NAME="clean_gemm")

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=C_INT), intent(in), VALUE :: RESOL_ID

interface

  • public subroutine HIP_DGEMM_GROUPED(RESOL_ID, BLAS_ID, CTA, CTB, M, N, K, ALPHA, A, LDA, OFFSETA, B, LDB, OFFSETB, BETA, C, LDC, OFFSETC, BATCHCOUNT, STREAM, ALLOC) bind(C, NAME='hipblas_dgemm_wrapper_grouped')

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=C_INT), VALUE :: RESOL_ID
    integer(kind=C_INT), VALUE :: BLAS_ID
    character(kind=C_CHAR, len=1), VALUE :: CTA
    character(kind=C_CHAR, len=1), VALUE :: CTB
    integer(kind=C_INT), VALUE :: M
    integer(kind=C_INT) :: N(*)
    integer(kind=C_INT) :: K(*)
    real(kind=C_DOUBLE), VALUE :: ALPHA
    real(kind=C_DOUBLE) :: A(*)
    integer(kind=C_INT), VALUE :: LDA
    integer(kind=C_INT64_T) :: OFFSETA(*)
    real(kind=C_DOUBLE) :: B(*)
    integer(kind=C_INT) :: LDB(*)
    integer(kind=C_INT64_T) :: OFFSETB(*)
    real(kind=C_DOUBLE), VALUE :: BETA
    real(kind=C_DOUBLE) :: C(*)
    integer(kind=C_INT), VALUE :: LDC
    integer(kind=C_INT64_T) :: OFFSETC(*)
    integer(kind=C_INT), VALUE :: BATCHCOUNT
    integer(kind=C_SIZE_T) :: STREAM
    type(C_PTR), intent(in), VALUE :: ALLOC

interface

  • public subroutine HIP_SGEMM_GROUPED(RESOL_ID, BLAS_ID, CTA, CTB, M, N, K, ALPHA, A, LDA, OFFSETA, B, LDB, OFFSETB, BETA, C, LDC, OFFSETC, BATCHCOUNT, STREAM, ALLOC) bind(C, NAME='hipblas_sgemm_wrapper_grouped')

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=C_INT), VALUE :: RESOL_ID
    integer(kind=C_INT), VALUE :: BLAS_ID
    character(kind=C_CHAR, len=1), VALUE :: CTA
    character(kind=C_CHAR, len=1), VALUE :: CTB
    integer(kind=C_INT), VALUE :: M
    integer(kind=C_INT) :: N(*)
    integer(kind=C_INT) :: K(*)
    real(kind=C_FLOAT), VALUE :: ALPHA
    real(kind=C_FLOAT) :: A(*)
    integer(kind=C_INT), VALUE :: LDA
    integer(kind=C_INT64_T) :: OFFSETA(*)
    real(kind=C_FLOAT) :: B(*)
    integer(kind=C_INT) :: LDB(*)
    integer(kind=C_INT64_T) :: OFFSETB(*)
    real(kind=C_FLOAT), VALUE :: BETA
    real(kind=C_FLOAT) :: C(*)
    integer(kind=C_INT), VALUE :: LDC
    integer(kind=C_INT64_T) :: OFFSETC(*)
    integer(kind=C_INT), VALUE :: BATCHCOUNT
    integer(kind=C_SIZE_T) :: STREAM
    type(C_PTR), intent(in), VALUE :: ALLOC

Subroutines

public subroutine HIP_DGEMM_BATCHED_OVERLOAD(TRANSA, TRANSB, M, N, K, ALPHA, AARRAY, LDA, STRIDEA, BARRAY, LDB, STRIDEB, BETA, CARRAY, LDC, STRIDEC, BATCHCOUNT, STREAM, ALLOC)

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), VALUE :: TRANSA
character(kind=C_CHAR, len=1), VALUE :: TRANSB
integer(kind=JPIM) :: M
integer(kind=JPIM) :: N
integer(kind=JPIM) :: K
real(kind=JPRD) :: ALPHA
real(kind=JPRD), DIMENSION(:) :: AARRAY
integer(kind=JPIM) :: LDA
integer(kind=JPIM) :: STRIDEA
real(kind=JPRD), DIMENSION(:,:) :: BARRAY
integer(kind=JPIM) :: LDB
integer(kind=JPIM) :: STRIDEB
real(kind=JPRD) :: BETA
real(kind=JPRD), DIMENSION(:) :: CARRAY
integer(kind=JPIM) :: LDC
integer(kind=JPIM) :: STRIDEC
integer(kind=JPIM) :: BATCHCOUNT
integer(kind=C_INT) :: STREAM
type(GROWING_ALLOCATION_TYPE), intent(in), POINTER :: ALLOC

public subroutine HIP_SGEMM_BATCHED_OVERLOAD(TRANSA, TRANSB, M, N, K, ALPHA, AARRAY, LDA, STRIDEA, BARRAY, LDB, STRIDEB, BETA, CARRAY, LDC, STRIDEC, BATCHCOUNT, STREAM, ALLOC)

Arguments

Type IntentOptional Attributes Name
character(kind=C_CHAR, len=1), VALUE :: TRANSA
character(kind=C_CHAR, len=1), VALUE :: TRANSB
integer(kind=JPIM) :: M
integer(kind=JPIM) :: N
integer(kind=JPIM) :: K
real(kind=JPRM) :: ALPHA
real(kind=JPRM), DIMENSION(:) :: AARRAY
integer(kind=JPIM) :: LDA
integer(kind=JPIM) :: STRIDEA
real(kind=JPRM), DIMENSION(*) :: BARRAY
integer(kind=JPIM) :: LDB
integer(kind=JPIM) :: STRIDEB
real(kind=JPRM) :: BETA
real(kind=JPRM), DIMENSION(:) :: CARRAY
integer(kind=JPIM) :: LDC
integer(kind=JPIM) :: STRIDEC
integer(kind=JPIM) :: BATCHCOUNT
integer(kind=C_INT) :: STREAM
type(GROWING_ALLOCATION_TYPE), intent(in), POINTER :: ALLOC

public subroutine HIP_DGEMM_GROUPED_OVERLOAD(RESOL_ID, BLAS_ID, TRANSA, TRANSB, M, N, K, ALPHA, AARRAY, LDA, OFFSETA, BARRAY, LDB, OFFSETB, BETA, CARRAY, LDC, OFFSETC, BATCHCOUNT, STREAM, ALLOC)

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), intent(in) :: RESOL_ID
integer(kind=C_INT), intent(in) :: BLAS_ID
character(kind=C_CHAR, len=1), VALUE :: TRANSA
character(kind=C_CHAR, len=1), VALUE :: TRANSB
integer(kind=JPIM) :: M
integer(kind=JPIM) :: N(:)
integer(kind=JPIM) :: K(:)
real(kind=JPRD) :: ALPHA
real(kind=JPRD), DIMENSION(:) :: AARRAY
integer(kind=JPIM) :: LDA
integer(kind=JPIB) :: OFFSETA(:)
real(kind=JPRD), DIMENSION(*) :: BARRAY
integer(kind=JPIM) :: LDB(:)
integer(kind=JPIB) :: OFFSETB(:)
real(kind=JPRD) :: BETA
real(kind=JPRD), DIMENSION(:) :: CARRAY
integer(kind=JPIM) :: LDC
integer(kind=JPIB) :: OFFSETC(:)
integer(kind=JPIM) :: BATCHCOUNT
integer(kind=C_INT) :: STREAM
type(GROWING_ALLOCATION_TYPE), intent(in), POINTER :: ALLOC

public subroutine HIP_SGEMM_GROUPED_OVERLOAD(RESOL_ID, BLAS_ID, TRANSA, TRANSB, M, N, K, ALPHA, AARRAY, LDA, OFFSETA, BARRAY, LDB, OFFSETB, BETA, CARRAY, LDC, OFFSETC, BATCHCOUNT, STREAM, ALLOC)

Arguments

Type IntentOptional Attributes Name
integer(kind=C_INT), intent(in) :: RESOL_ID
integer(kind=C_INT), intent(in) :: BLAS_ID
character(kind=C_CHAR, len=1), VALUE :: TRANSA
character(kind=C_CHAR, len=1), VALUE :: TRANSB
integer(kind=JPIM) :: M
integer(kind=JPIM) :: N(:)
integer(kind=JPIM) :: K(:)
real(kind=JPRM) :: ALPHA
real(kind=JPRM), DIMENSION(:) :: AARRAY
integer(kind=JPIM) :: LDA
integer(kind=JPIB) :: OFFSETA(:)
real(kind=JPRM), DIMENSION(*) :: BARRAY
integer(kind=JPIM) :: LDB(:)
integer(kind=JPIB) :: OFFSETB(:)
real(kind=JPRM) :: BETA
real(kind=JPRM), DIMENSION(:) :: CARRAY
integer(kind=JPIM) :: LDC
integer(kind=JPIB) :: OFFSETC(:)
integer(kind=JPIM) :: BATCHCOUNT
integer(kind=C_INT) :: STREAM
type(GROWING_ALLOCATION_TYPE), intent(in), POINTER :: ALLOC