#include <AMReX_FFT_Helper.H>
◆ setBatchSize()
| Info & amrex::FFT::Info::setBatchSize |
( |
int |
bsize | ) |
|
|
inline |
Specify the batch size for FFT.
- Parameters
-
| bsize | Number of independent transforms executed together. |
- Returns
- Reference to this Info.
◆ setDomainStrategy()
Select how the domain is decomposed across MPI ranks.
- Parameters
-
| s | Strategy (automatic|slab|pencil). |
- Returns
- Reference to this Info.
◆ setNumProcs()
| Info & amrex::FFT::Info::setNumProcs |
( |
int |
n | ) |
|
|
inline |
Cap the number of MPI ranks used by FFT.
- Parameters
-
- Returns
- Reference to this Info.
◆ setOneDMode()
| Info & amrex::FFT::Info::setOneDMode |
( |
bool |
x | ) |
|
|
inline |
Flag the degenerate 2-D mode (nx==1 or ny==1) that still batches along z.
This keeps the solver in “two-dimensional” mode but makes it clear that only one transverse direction has more than one cell; the z-direction remains the batch axis.
- Parameters
-
| x | True when running on effectively 1-D x/y planes while batching along z. |
- Returns
- Reference to this Info.
◆ setPencilThreshold()
| Info & amrex::FFT::Info::setPencilThreshold |
( |
int |
t | ) |
|
|
inline |
Override the slab→pencil break-even threshold for the automatic strategy.
- Parameters
-
| t | Minimum cells per rank before switching to pencil decomposition. |
- Returns
- Reference to this Info.
◆ setTwoDMode()
| Info & amrex::FFT::Info::setTwoDMode |
( |
bool |
x | ) |
|
|
inline |
Restrict transforms to the first two dimensions (3-D problems only).
- Parameters
-
| x | True to operate on x/y planes while batching along z. |
- Returns
- Reference to this Info.
◆ batch_size
| int amrex::FFT::Info::batch_size = 1 |
Batched FFT size. Only support in R2C, not R2X.
◆ domain_strategy
Domain composition strategy.
◆ nprocs
| int amrex::FFT::Info::nprocs = std::numeric_limits<int>::max() |
Max number of processes to use.
◆ oned_mode
| bool amrex::FFT::Info::oned_mode = false |
We might have a special twod_mode: nx or ny == 1 && nz > 1.
◆ pencil_threshold
| int amrex::FFT::Info::pencil_threshold = 4 |
For automatic strategy, this is the size per process below which we switch from slab to pencil.
◆ twod_mode
| bool amrex::FFT::Info::twod_mode = false |
Supported only in 3D. When twod_mode is true, FFT is performed on the first two dimensions only and the third dimension size is the batch size.
The documentation for this struct was generated from the following file: