Skip to content

Struct TempLat::FFTDecomposition

template <size_t NDim>

ClassList > TempLat > FFTDecomposition

The MPI Cartesian decomposition an FFT backend will use for a given runtime setup. More...

  • #include <fftdecomposition.h>

Public Attributes

Type Name
std::array< int, NDim > dims = {}
int nDimsToSplit = 0

Detailed Description

Backends advertise this via a static decomposition(baseComm, nGridPoints) method so the MPI Cartesian group can be built to match the backend's requirements before any plan is constructed.

Fields: * nDimsToSplit: number of leading dimensions MPI should distribute over. A value of 0 means the backend does not use an MPI decomposition (e.g. KokkosFFT, single-rank FFTW). * dims: optional explicit grid shape (rank counts per lattice dimension). An entry of 0 means "let MPI\_Dims\_create choose". If all nDimsToSplit leading entries are nonzero, the shape is pinned exactly and the product must equal the rank count.

Public Attributes Documentation

variable dims

std::array<int, NDim> TempLat::FFTDecomposition< NDim >::dims;

variable nDimsToSplit

int TempLat::FFTDecomposition< NDim >::nDimsToSplit;


The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/fft/fftdecomposition.h