Rate This Document
Findability
Accuracy
Completeness
Readability

kml_fft(f)_mpi_local_size_ext

Describe the size and location of the local process data and calculate the space to be allocated.

Interface Definition

C interface:

ptrdiff_t kml_fft_mpi_local_size_ext(int rnk, const ptrdiff_t *n, MPI_Comm comm, enum SCALFFT_DECOMPOSE_TYPE_E decomp_type, ptrdiff_t *low, ptrdiff_t *high);

ptrdiff_t kml_fftf_mpi_local_size_ext(int rnk, const ptrdiff_t *n, MPI_Comm comm, enum SCALFFT_DECOMPOSE_TYPE_E decomp_type, ptrdiff_t *low, ptrdiff_t *high);

Return Value

The function returns a value of the ptrdiff_t type, indicating the number of buffer elements to be allocated. Return value: 0 if the operation is successful; -1 otherwise.

Parameters

Parameter

Data Type

Description

Input/Output

rnk

int

Number of dimensions of the data to be processed.

Input

n

const ptrdiff_t *

Array whose dimension is rank, including the size of each dimension in the data sequence. The constraint is n[i] ≥ 1, for i in 0 to rank - 1.

Input

comm

MPI_Comm

Communicator.

Input

decomp_type

enum SCALFFT_DECOMPOSE_TYPE_E

Decomposition algorithm, which can be SCALFFT_DECOMPOSE_TYPE_SLAB, SCALFFT_DECOMPOSE_TYPE_PENCIL, or SCALFFT_DECOMPOSE_TYPE_BRICK.

Input

low

ptrdiff_t *

Start point of local data.

Output

high

ptrdiff_t *

End point of local data.

Output

Dependencies

C: "kfft-mpi.h"

Examples

C interface: See kml_fft(f)_mpi_plan_create.