alloc_and_set_aux Function

private function alloc_and_set_aux(helper, backend, cart_comm, aux, paux, plans, bplans) result(is_aux_alloc)

Uses

  • proc~~alloc_and_set_aux~~UsesGraph proc~alloc_and_set_aux alloc_and_set_aux iso_fortran_env iso_fortran_env proc~alloc_and_set_aux->iso_fortran_env

Allocates auxiliary memory according to the backend and sets it to the plans

Arguments

Type IntentOptional Attributes Name
type(backend_helper), intent(inout) :: helper

Backend helper

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

GPU backend

type(MPI_Comm), intent(in) :: cart_comm

Cartesian communicator

type(c_ptr), intent(inout) :: aux

Allocatable auxiliary memory

real(kind=real32), intent(inout), pointer :: paux(:)

Pointer to auxiliary memory

type(transpose_handle_cuda), intent(in) :: plans(:)

Plans

type(transpose_handle_cuda), intent(in), optional :: bplans(:)

Backward plans

Return Value logical

Is auxiliary memory allocated


Calls

proc~~alloc_and_set_aux~~CallsGraph proc~alloc_and_set_aux alloc_and_set_aux mpi_abort mpi_abort proc~alloc_and_set_aux->mpi_abort mpi_allreduce mpi_allreduce proc~alloc_and_set_aux->mpi_allreduce proc~alloc_mem alloc_mem proc~alloc_and_set_aux->proc~alloc_mem proc~dtfft_get_error_string dtfft_get_error_string proc~alloc_and_set_aux->proc~dtfft_get_error_string proc~get_aux_size~3 transpose_handle_cuda%get_aux_size proc~alloc_and_set_aux->proc~get_aux_size~3 proc~alloc_mem->mpi_abort proc~alloc_mem->mpi_allreduce interface~cudamalloc cudaMalloc proc~alloc_mem->interface~cudamalloc interface~cudamemgetinfo cudaMemGetInfo proc~alloc_mem->interface~cudamemgetinfo interface~ncclcommregister ncclCommRegister proc~alloc_mem->interface~ncclcommregister interface~ncclmemalloc ncclMemAlloc proc~alloc_mem->interface~ncclmemalloc interface~nvshmem_malloc nvshmem_malloc proc~alloc_mem->interface~nvshmem_malloc interface~to_str to_str proc~alloc_mem->interface~to_str is_null_ptr is_null_ptr proc~alloc_mem->is_null_ptr proc~cudageterrorstring cudaGetErrorString proc~alloc_mem->proc~cudageterrorstring proc~dtfft_get_backend_string dtfft_get_backend_string proc~alloc_mem->proc~dtfft_get_backend_string proc~get_conf_log_enabled get_conf_log_enabled proc~alloc_mem->proc~get_conf_log_enabled proc~is_backend_nccl is_backend_nccl proc~alloc_mem->proc~is_backend_nccl proc~is_backend_nvshmem is_backend_nvshmem proc~alloc_mem->proc~is_backend_nvshmem proc~ncclgeterrorstring ncclGetErrorString proc~alloc_mem->proc~ncclgeterrorstring proc~write_message write_message proc~alloc_mem->proc~write_message temp temp proc~alloc_mem->temp proc~get_aux_size~4 abstract_backend%get_aux_size proc~get_aux_size~3->proc~get_aux_size~4 proc~double_to_string double_to_string interface~to_str->proc~double_to_string proc~float_to_string float_to_string interface~to_str->proc~float_to_string proc~int32_to_string int32_to_string interface~to_str->proc~int32_to_string proc~int64_to_string int64_to_string interface~to_str->proc~int64_to_string proc~int8_to_string int8_to_string interface~to_str->proc~int8_to_string interface~cudageterrorstring_c cudaGetErrorString_c proc~cudageterrorstring->interface~cudageterrorstring_c proc~string_c2f string_c2f proc~cudageterrorstring->proc~string_c2f interface~get_conf_internal get_conf_internal proc~get_conf_log_enabled->interface~get_conf_internal interface~ncclgeterrorstring_c ncclGetErrorString_c proc~ncclgeterrorstring->interface~ncclgeterrorstring_c proc~ncclgeterrorstring->proc~string_c2f mpi_comm_rank mpi_comm_rank proc~write_message->mpi_comm_rank mpi_finalized mpi_finalized proc~write_message->mpi_finalized proc~get_conf_internal_int32 get_conf_internal_int32 interface~get_conf_internal->proc~get_conf_internal_int32 proc~get_conf_internal_logical get_conf_internal_logical interface~get_conf_internal->proc~get_conf_internal_logical

Called by

proc~~alloc_and_set_aux~~CalledByGraph proc~alloc_and_set_aux alloc_and_set_aux proc~create_cuda transpose_plan_cuda%create_cuda proc~create_cuda->proc~alloc_and_set_aux proc~run_autotune_backend run_autotune_backend proc~create_cuda->proc~run_autotune_backend proc~autotune_grid_decomposition~2 autotune_grid_decomposition proc~create_cuda->proc~autotune_grid_decomposition~2 proc~run_autotune_backend->proc~alloc_and_set_aux proc~autotune_grid~2 autotune_grid proc~autotune_grid~2->proc~run_autotune_backend proc~autotune_grid_decomposition~2->proc~autotune_grid~2