Base plan for backend::mkl, works only for float and double complex.
More...
#include <heffte_backend_mkl.h>
|
| plan_mkl (int size, int howmanyffts, int stride, int dist) |
| Constructor, takes inputs identical to MKL FFT descriptors. More...
|
|
| plan_mkl (size_t size1, size_t size2, std::array< MKL_LONG, 2 > const &embed, size_t howmanyffts, size_t dist) |
| Constructor, takes inputs identical to MKL FFT descriptors. More...
|
|
| plan_mkl (int size1, int size2, int size3) |
| Constructor, takes inputs identical to MKL FFT descriptors. More...
|
|
| ~plan_mkl () |
| Destructor, deletes the plan.
|
|
| operator DFTI_DESCRIPTOR_HANDLE () const |
| Custom conversion to the MKL plan.
|
|
|
DFTI_DESCRIPTOR_HANDLE | plan |
| The MKL opaque structure (pointer to struct).
|
|
template<typename scalar_type>
struct heffte::plan_mkl< scalar_type >
Base plan for backend::mkl, works only for float and double complex.
MKL library uses a unique plan type for forward and backward fft transforms. This class will wrap around such plan and provide RAII style of memory management and simple constructors that take inputs suitable to HeFFTe.
◆ plan_mkl() [1/3]
template<typename scalar_type >
Constructor, takes inputs identical to MKL FFT descriptors.
- Parameters
-
size | is the number of entries in a 1-D transform |
howmanyffts | is the number of transforms in the batch |
stride | is the distance between entries of the same transform |
dist | is the distance between the first entries of consecutive sequences |
◆ plan_mkl() [2/3]
template<typename scalar_type >
heffte::plan_mkl< scalar_type >::plan_mkl |
( |
size_t |
size1, |
|
|
size_t |
size2, |
|
|
std::array< MKL_LONG, 2 > const & |
embed, |
|
|
size_t |
howmanyffts, |
|
|
size_t |
dist |
|
) |
| |
|
inline |
Constructor, takes inputs identical to MKL FFT descriptors.
- Parameters
-
size1 | is the number of entries in a 2-D transform, direction 1 |
size2 | is the number of entries in a 2-D transform, direction 2 |
embed | is the size of the leading dimensions of the data array |
howmanyffts | is the number of transforms in the batch |
dist | is the distance between the first entries of consecutive sequences |
◆ plan_mkl() [3/3]
template<typename scalar_type >
Constructor, takes inputs identical to MKL FFT descriptors.
- Parameters
-
size1 | is the number of entries in a 3-D transform, direction 1 |
size2 | is the number of entries in a 3-D transform, direction 2 |
size3 | is the number of entries in a 3-D transform, direction 3 |
The documentation for this struct was generated from the following file: