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.