create Subroutine

private subroutine create(self, backend, tranpose_type, helper, comm_id, send_displs, send_counts, recv_displs, recv_counts, base_storage)

Uses

  • proc~~create~6~~UsesGraph proc~create~6 abstract_backend%create iso_c_binding iso_c_binding proc~create~6->iso_c_binding iso_fortran_env iso_fortran_env proc~create~6->iso_fortran_env

Creates Abstract GPU Backend

Type Bound

abstract_backend

Arguments

Type IntentOptional Attributes Name
class(abstract_backend), intent(inout) :: self

Abstract GPU Backend

type(dtfft_backend_t), intent(in) :: backend

GPU Backend type

type(dtfft_transpose_t), intent(in) :: tranpose_type

Type of transpose to create

type(backend_helper), intent(in) :: helper

Backend helper

integer(kind=int8), intent(in) :: comm_id

Id of communicator to use

integer(kind=int32), intent(in) :: send_displs(:)

Send data displacements, in original elements

integer(kind=int32), intent(in) :: send_counts(:)

Send data elements, in float elements

integer(kind=int32), intent(in) :: recv_displs(:)

Recv data displacements, in float elements

integer(kind=int32), intent(in) :: recv_counts(:)

Recv data elements, in float elements

integer(kind=int64), intent(in) :: base_storage

Number of bytes to store single element


Calls

proc~~create~6~~CallsGraph proc~create~6 abstract_backend%create create_private create_private proc~create~6->create_private interface~cudaeventcreatewithflags cudaEventCreateWithFlags proc~create~6->interface~cudaeventcreatewithflags interface~cudastreamcreate cudaStreamCreate proc~create~6->interface~cudastreamcreate interface~int_to_str int_to_str proc~create~6->interface~int_to_str mpi_abort mpi_abort proc~create~6->mpi_abort mpi_comm_rank mpi_comm_rank proc~create~6->mpi_comm_rank mpi_comm_size mpi_comm_size proc~create~6->mpi_comm_size proc~cudageterrorstring cudaGetErrorString proc~create~6->proc~cudageterrorstring proc~is_backend_mpi is_backend_mpi proc~create~6->proc~is_backend_mpi proc~is_backend_pipelined is_backend_pipelined proc~create~6->proc~is_backend_pipelined proc~int_to_str_int32 int_to_str_int32 interface~int_to_str->proc~int_to_str_int32 proc~int_to_str_int64 int_to_str_int64 interface~int_to_str->proc~int_to_str_int64 proc~int_to_str_int8 int_to_str_int8 interface~int_to_str->proc~int_to_str_int8 interface~cudageterrorstring_c cudaGetErrorString_c proc~cudageterrorstring->interface~cudageterrorstring_c proc~string_c2f string_c2f proc~cudageterrorstring->proc~string_c2f