create_plans_110 Subroutine

public subroutine create_plans_110(self, mesh, fft_n, fft_n_loc, fw_plan_type, bw_plan_type)

R2C with Z-transpose, on (nz, nx, ny). A single rank keeps the plain cuFFT path; on multiple ranks cuFFTMp distributes the transform, and the physical Z-slab is redistributed into its Y-slab input through an MPI_Alltoall (see redistribute_110_to_yslab).

Type Bound

cuda_poisson_110_t

Arguments

Type IntentOptional Attributes Name
class(cuda_poisson_110_t) :: self
type(mesh_t), intent(in) :: mesh
integer, intent(in) :: fft_n(3)
integer, intent(in) :: fft_n_loc(2)
integer, intent(in) :: fw_plan_type
integer, intent(in) :: bw_plan_type

Calls

proc~~create_plans_110~~CallsGraph proc~create_plans_110 m_cuda_poisson_fft::cuda_poisson_110_t%create_plans_110 cufftxtmalloc cufftxtmalloc proc~create_plans_110->cufftxtmalloc proc~check_cufft m_cuda_errors::check_cufft proc~create_plans_110->proc~check_cufft proc~create_fft_plan_pair m_cuda_poisson_fft::create_fft_plan_pair proc~create_plans_110->proc~create_fft_plan_pair proc~log_info m_logger::log_info proc~create_plans_110->proc~log_info interface~str m_logger::str proc~check_cufft->interface~str proc~abort_run m_logger::abort_run proc~check_cufft->proc~abort_run proc~create_fft_plan_pair->proc~check_cufft cufftdestroy cufftdestroy proc~create_fft_plan_pair->cufftdestroy proc~create_fft_plan m_cuda_poisson_fft::create_fft_plan proc~create_fft_plan_pair->proc~create_fft_plan proc~log_info->interface~str mpi_comm_rank mpi_comm_rank proc~log_info->mpi_comm_rank mpi_comm_size mpi_comm_size proc~log_info->mpi_comm_size mpi_finalized mpi_finalized proc~log_info->mpi_finalized mpi_initialized mpi_initialized proc~log_info->mpi_initialized proc~abort_run->interface~str proc~abort_run->mpi_comm_rank proc~abort_run->mpi_comm_size proc~abort_run->mpi_finalized proc~abort_run->mpi_initialized mpi_abort mpi_abort proc~abort_run->mpi_abort mpi_barrier mpi_barrier proc~abort_run->mpi_barrier proc~create_fft_plan->proc~check_cufft proc~create_fft_plan->cufftdestroy proc~create_fft_plan->interface~str cufftcreate cufftcreate proc~create_fft_plan->cufftcreate cufftmakeplan3d cufftmakeplan3d proc~create_fft_plan->cufftmakeplan3d cufftmpattachcomm cufftmpattachcomm proc~create_fft_plan->cufftmpattachcomm cufftsetautoallocation cufftsetautoallocation proc~create_fft_plan->cufftsetautoallocation proc~log_warn m_logger::log_warn proc~create_fft_plan->proc~log_warn proc~log_warn->interface~str proc~log_warn->mpi_comm_rank proc~log_warn->mpi_comm_size proc~log_warn->mpi_finalized proc~log_warn->mpi_initialized