Highly Efficient FFT for Exascale: HeFFTe v2.3
|
Classes | |
struct | heffte::backend::is_enabled< mkl > |
Indicate that the MKL backend has been enabled. More... | |
struct | heffte::backend::is_enabled< mkl_cos > |
Indicate that the MKL Cosine Transform backend has been enabled. More... | |
struct | heffte::backend::is_enabled< mkl_sin > |
Indicate that the MKL Sine Transform backend has been enabled. More... | |
struct | heffte::backend::default_backend< tag::cpu > |
Make MKL the default CPU backend. More... | |
struct | heffte::is_ccomplex< float _Complex > |
Recognize the MKL single precision complex type. More... | |
struct | heffte::is_zcomplex< double _Complex > |
Recognize the MKL double precision complex type. More... | |
struct | heffte::plan_mkl< scalar_type > |
Base plan for backend::mkl, works only for float and double complex. More... | |
class | heffte::mkl_executor |
Wrapper around the MKL API. More... | |
struct | heffte::plan_mkl_r2c< scalar_type, dir > |
Unlike the C2C plan R2C is non-symmetric and it requires that the direction is built into the plan. More... | |
class | heffte::mkl_executor_r2c |
Wrapper to mkl API for real-to-complex transform with shortening of the data. More... | |
struct | heffte::one_dim_backend< backend::mkl > |
Helper struct that defines the types and creates instances of one-dimensional executors. More... | |
struct | heffte::one_dim_backend< backend::mkl_cos > |
Helper struct that defines the types and creates instances of one-dimensional executors. More... | |
struct | heffte::one_dim_backend< backend::mkl_sin > |
Helper struct that defines the types and creates instances of one-dimensional executors. More... | |
struct | heffte::default_plan_options< backend::mkl > |
Sets the default options for the mkl backend. More... | |
struct | heffte::default_plan_options< backend::mkl_cos > |
Sets the default options for the mkl backend. More... | |
struct | heffte::default_plan_options< backend::mkl_sin > |
Sets the default options for the mkl backend. More... | |
struct | heffte::backend::mkl |
Type-tag for the MKL backend. More... | |
struct | heffte::backend::mkl_cos |
Type-tag for the Cosine Transform using the MKL FFT backend. More... | |
struct | heffte::backend::mkl_sin |
Type-tag for the Sine Transform using the MKL FFT backend. More... | |
struct | heffte::backend::uses_fft_types< mkl_cos > |
Sets the cos() transform types. More... | |
struct | heffte::backend::uses_fft_types< mkl_sin > |
Sets the sin() transform types. More... | |
struct | heffte::backend::uses_fft_types< cufft_cos > |
Sets the cos() transform types. More... | |
struct | heffte::backend::uses_fft_types< cufft_sin > |
Sets the sin() transform types. More... | |
struct | heffte::backend::uses_fft_types< rocfft_cos > |
Sets the cos() transform types. More... | |
struct | heffte::backend::uses_fft_types< rocfft_sin > |
Sets the sin() transform types. More... | |
struct | heffte::backend::uses_fft_types< onemkl_cos > |
Sets the cos() transform types. More... | |
struct | heffte::backend::uses_fft_types< onemkl_sin > |
Sets the sin() transform types. More... | |
Functions | |
void | heffte::check_error (MKL_LONG status, std::string const &function_name) |
Checks the status of a call to the MKL backend. | |
template<> | |
std::string | heffte::backend::name< mkl > () |
Returns the human readable name of the MKL backend. | |
template<> | |
std::string | heffte::backend::name< mkl_cos > () |
Returns the human readable name of the MKL backend. | |
template<> | |
std::string | heffte::backend::name< mkl_sin > () |
Returns the human readable name of the MKL backend. | |
Wrappers and template specializations related to the MKL backend. Requires CMake option: