dbcsr_acc_stream Module

Accelerator support



Variables

Type Visibility Attributes Name Initial
character(len=*), private, parameter :: moduleN = 'dbcsr_acc_stream'

Derived Types

type, public ::  acc_stream_type

Components

Type Visibility Attributes Name Initial
integer, private :: dummy = 1

Functions

public function acc_stream_cptr(this) result(res)

Returns C-pointer of given stream.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: this

stream ID

Return Value logical

false (accelerator support is not enabled)

public function acc_stream_equal(this, other) result(res)

Checks if two streams are equal

Arguments

Type IntentOptional Attributes Name
type(acc_stream_type), intent(in) :: this
type(acc_stream_type), intent(in) :: other

Return Value logical

true if equal, false otherwise

public function acc_stream_associated(this) result(res)

Checks if a streams is associated

Arguments

Type IntentOptional Attributes Name
type(acc_stream_type), intent(in) :: this

Return Value logical

true if associated, false otherwise


Subroutines

public subroutine acc_stream_create(this, name, priority)

Fortran-wrapper for creation of a CUDA/HIP stream.

Arguments

Type IntentOptional Attributes Name
type(acc_stream_type), intent(out) :: this
character(len=*), intent(in) :: name
integer, intent(in), optional :: priority

public subroutine acc_stream_destroy(this)

Fortran-wrapper for destruction of a CUDA/HIP stream.

Arguments

Type IntentOptional Attributes Name
type(acc_stream_type), intent(inout) :: this

public subroutine acc_stream_synchronize(this)

Fortran-wrapper for waiting for CUDA/HIP stream tasks to complete.

Arguments

Type IntentOptional Attributes Name
type(acc_stream_type), intent(in) :: this

public subroutine acc_stream_priority_range(least, greatest)

Fortran-wrapper for getting CUDA/HIP streams' priority range.

Arguments

Type IntentOptional Attributes Name
integer, intent(out) :: least
integer, intent(out) :: greatest