SELF_GPUBLAS Module


Uses

  • module~~self_gpublas~2~~UsesGraph module~self_gpublas~2 SELF_GPUBLAS iso_fortran_env iso_fortran_env module~self_gpublas~2->iso_fortran_env module~self_gpu_enums~2 SELF_GPU_enums module~self_gpublas~2->module~self_gpu_enums~2 iso_c_binding iso_c_binding module~self_gpublas~2->iso_c_binding module~self_constants SELF_Constants module~self_gpublas~2->module~self_constants module~self_gpu_enums~2->iso_c_binding module~self_constants->iso_fortran_env module~self_constants->iso_c_binding

Used by

  • module~~self_gpublas~2~~UsedByGraph module~self_gpublas~2 SELF_GPUBLAS module~self_scalar_3d SELF_Scalar_3D module~self_scalar_3d->module~self_gpublas~2 module~self_tensor_2d SELF_Tensor_2D module~self_tensor_2d->module~self_gpublas~2 module~self_scalar_2d~2 SELF_Scalar_2D module~self_scalar_2d~2->module~self_gpublas~2 module~self_vector_2d SELF_Vector_2D module~self_vector_2d->module~self_gpublas~2 module~self_mappedvector_3d SELF_MappedVector_3D module~self_mappedvector_3d->module~self_gpublas~2 module~self_scalar_1d SELF_Scalar_1D module~self_scalar_1d->module~self_gpublas~2 module~self_scalar_1d~2 SELF_Scalar_1D module~self_scalar_1d~2->module~self_gpublas~2 module~self_vector_3d~2 SELF_Vector_3D module~self_vector_3d~2->module~self_gpublas~2 module~self_tensor_3d~2 SELF_Tensor_3D module~self_tensor_3d~2->module~self_gpublas~2 module~self_mappedvector_2d~2 SELF_MappedVector_2D module~self_mappedvector_2d~2->module~self_gpublas~2

Contents


Interfaces

public interface hipblasCreate

  • public function hipblasCreate_(handle) bind(c,name="cublasCreate_v2")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr) :: handle

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))

public interface hipblasDestroy

  • public function hipblasDestroy_(handle) bind(c,name="cublasDestroy_v2")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr), value:: handle

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))

public interface hipblasDgemm

  • public function hipblasDgemm_(handle, transa, transb, m, n, k, alpha, A, lda, B, ldb, beta, C, ldc) bind(c,name="cublasDgemm_v2")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr), value:: handle
    integer(kind=kind(HIPBLAS_OP_N)), value:: transa
    integer(kind=kind(HIPBLAS_OP_N)), value:: transb
    integer(kind=c_int), value:: m
    integer(kind=c_int), value:: n
    integer(kind=c_int), value:: k
    real(kind=c_double) :: alpha
    type(c_ptr), value:: A
    integer(kind=c_int), value:: lda
    type(c_ptr), value:: B
    integer(kind=c_int), value:: ldb
    real(kind=c_double) :: beta
    type(c_ptr), value:: C
    integer(kind=c_int), value:: ldc

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))

public interface hipblasDgemvStridedBatched

  • public function hipblasDgemvStridedBatched_(handle, trans, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batchCount) bind(c,name="cublasDgemvStridedBatched")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr), value:: handle
    integer(kind=kind(HIPBLAS_OP_N)), value:: trans
    integer(kind=c_int), value:: m
    integer(kind=c_int), value:: n
    real(kind=c_double) :: alpha
    type(c_ptr), value:: A
    integer(kind=c_int), value:: lda
    integer(kind=c_int64_t), value:: strideA
    type(c_ptr), value:: x
    integer(kind=c_int), value:: incx
    integer(kind=c_int64_t), value:: stridex
    real(kind=c_double) :: beta
    type(c_ptr), value:: y
    integer(kind=c_int), value:: incy
    integer(kind=c_int64_t), value:: stridey
    integer(kind=c_int), value:: batchCount

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))

public interface hipblasSgemm

  • public function hipblasSgemm_(handle, transa, transb, m, n, k, alpha, A, lda, B, ldb, beta, C, ldc) bind(c,name="cublasSgemm_v2")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr), value:: handle
    integer(kind=kind(HIPBLAS_OP_N)), value:: transa
    integer(kind=kind(HIPBLAS_OP_N)), value:: transb
    integer(kind=c_int), value:: m
    integer(kind=c_int), value:: n
    integer(kind=c_int), value:: k
    real(kind=c_float) :: alpha
    type(c_ptr), value:: A
    integer(kind=c_int), value:: lda
    type(c_ptr), value:: B
    integer(kind=c_int), value:: ldb
    real(kind=c_float) :: beta
    type(c_ptr), value:: C
    integer(kind=c_int), value:: ldc

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))

public interface hipblasSgemvStridedBatched

  • public function hipblasSgemvStridedBatched_(handle, trans, m, n, alpha, A, lda, strideA, x, incx, stridex, beta, y, incy, stridey, batchCount) bind(c,name="cublasSgemvStridedBatched")

    Arguments

    TypeIntentOptionalAttributesName
    type(c_ptr), value:: handle
    integer(kind=kind(HIPBLAS_OP_N)), value:: trans
    integer(kind=c_int), value:: m
    integer(kind=c_int), value:: n
    real(kind=c_float) :: alpha
    type(c_ptr), value:: A
    integer(kind=c_int), value:: lda
    integer(kind=c_int64_t), value:: strideA
    type(c_ptr), value:: x
    integer(kind=c_int), value:: incx
    integer(kind=c_int64_t), value:: stridex
    real(kind=c_float) :: beta
    type(c_ptr), value:: y
    integer(kind=c_int), value:: incy
    integer(kind=c_int64_t), value:: stridey
    integer(kind=c_int), value:: batchCount

    Return Value integer(kind=kind(HIPBLAS_STATUS_SUCCESS))


Subroutines

public subroutine hipblasCheck(hipblasError_t)

Arguments

TypeIntentOptionalAttributesName
integer(kind=kind(HIPBLAS_STATUS_SUCCESS)) :: hipblasError_t

public subroutine self_blas_matrixop_1d(A, f, Af, opArows, opAcols, bcols, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:)
integer, intent(in) :: opArows
integer, intent(in) :: opAcols
integer, intent(in) :: bcols
type(c_ptr), intent(inout) :: handle

public subroutine self_blas_matrixop_dim1_2d(A, f, Af, controldegree, targetdegree, nvars, nelems, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:,:)
integer, intent(in) :: controldegree
integer, intent(in) :: targetdegree
integer, intent(in) :: nvars
integer, intent(in) :: nelems
type(c_ptr), intent(inout) :: handle

public subroutine self_blas_matrixop_dim1_3d(A, f, Af, controldegree, targetdegree, nvars, nelems, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:,:,:)
integer, intent(in) :: controldegree
integer, intent(in) :: targetdegree
integer, intent(in) :: nvars
integer, intent(in) :: nelems
type(c_ptr), intent(inout) :: handle

public subroutine self_blas_matrixop_dim2_2d(A, f, Af, beta, controldegree, targetdegree, nvars, nelems, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:,:)
real(kind=c_prec), intent(in) :: beta
integer, intent(in) :: controldegree
integer, intent(in) :: targetdegree
integer, intent(in) :: nvars
integer, intent(in) :: nelems
type(c_ptr), intent(inout) :: handle

public subroutine self_blas_matrixop_dim2_3d(A, f, Af, beta, controldegree, targetdegree, nvars, nelems, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:,:,:)
real(kind=c_prec), intent(in) :: beta
integer, intent(in) :: controldegree
integer, intent(in) :: targetdegree
integer, intent(in) :: nvars
integer, intent(in) :: nelems
type(c_ptr), intent(inout) :: handle

public subroutine self_blas_matrixop_dim3_3d(A, f, Af, beta, controldegree, targetdegree, nvars, nelems, handle)

Arguments

TypeIntentOptionalAttributesName
type(c_ptr), intent(in) :: A
real(kind=prec), intent(in), pointer:: f(:,:,:,:,:)
real(kind=prec), intent(inout), pointer:: Af(:,:,:,:,:)
real(kind=c_prec), intent(in) :: beta
integer, intent(in) :: controldegree
integer, intent(in) :: targetdegree
integer, intent(in) :: nvars
integer, intent(in) :: nelems
type(c_ptr), intent(inout) :: handle