config_constructor Function

private pure function config_constructor(enable_z_slab, platform, stream, backend, enable_mpi_backends, enable_pipelined_backends, enable_nccl_backends, enable_nvshmem_backends) result(config)

Creates a new configuration

Arguments

Type IntentOptional Attributes Name
logical, intent(in), optional :: enable_z_slab

Should dtFFT use Z-slab optimization or not.

type(dtfft_platform_t), intent(in), optional :: platform

Selects platform to execute plan.

type(dtfft_stream_t), intent(in), optional :: stream

Main CUDA stream that will be used in dtFFT.

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

Backend that will be used by dtFFT when effort is DTFFT_ESTIMATE or DTFFT_MEASURE.

logical, intent(in), optional :: enable_mpi_backends

Should MPI GPU Backends be enabled when effort is DTFFT_PATIENT or not.

logical, intent(in), optional :: enable_pipelined_backends

Should pipelined GPU backends be enabled when effort is DTFFT_PATIENT or not.

logical, intent(in), optional :: enable_nccl_backends

Should NCCL Backends be enabled when effort is DTFFT_PATIENT or not.

logical, intent(in), optional :: enable_nvshmem_backends

Should NVSHMEM Backends be enabled when effort is DTFFT_PATIENT or not.

Return Value type(dtfft_config_t)

Constructed dtFFT config ready to be set by call to dtfft_set_config


Called by

proc~~config_constructor~~CalledByGraph proc~config_constructor config_constructor interface~dtfft_config_t dtfft_config_t interface~dtfft_config_t->proc~config_constructor