#include "oct-fftw.h"
Public Types | |
enum | FftwMethod { UNKNOWN = -1 , ESTIMATE , MEASURE , PATIENT , EXHAUSTIVE , HYBRID } |
Public Member Functions | |
float_fftw_planner (const float_fftw_planner &)=delete | |
~float_fftw_planner (void) | |
float_fftw_planner & | operator= (const float_fftw_planner &)=delete |
Static Public Member Functions | |
static void * | create_plan (const int rank, const dim_vector &dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const float *in, FloatComplex *out) |
static void * | create_plan (int dir, const int rank, const dim_vector &dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const FloatComplex *in, FloatComplex *out) |
static bool | instance_ok (void) |
static FftwMethod | method (FftwMethod meth) |
static FftwMethod | method (void) |
static void | threads (int nt) |
static int | threads (void) |
Protected Member Functions | |
float_fftw_planner (void) | |
Private Member Functions | |
void * | do_create_plan (const int rank, const dim_vector &dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const float *in, FloatComplex *out) |
void * | do_create_plan (int dir, const int rank, const dim_vector &dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const FloatComplex *in, FloatComplex *out) |
FftwMethod | do_method (FftwMethod meth) |
FftwMethod | do_method (void) |
Static Private Member Functions | |
static void | cleanup_instance (void) |
Private Attributes | |
octave_idx_type | m_d [2] |
octave_idx_type | m_h [2] |
bool | m_inplace [2] |
FftwMethod | m_meth |
dim_vector | m_n [2] |
int | m_nthreads |
void * | m_plan [2] |
int | m_r [2] |
octave_idx_type | m_rd |
octave_idx_type | m_rh |
dim_vector | m_rn |
void * | m_rplan |
int | m_rr |
octave_idx_type | m_rs |
bool | m_rsimd_align |
octave_idx_type | m_s [2] |
bool | m_simd_align [2] |
Static Private Attributes | |
static float_fftw_planner * | s_instance = nullptr |
Definition at line 186 of file oct-fftw.h.
Enumerator | |
---|---|
UNKNOWN | |
ESTIMATE | |
MEASURE | |
PATIENT | |
EXHAUSTIVE | |
HYBRID |
Definition at line 205 of file oct-fftw.h.
|
protected |
Definition at line 430 of file oct-fftw.cc.
References m_d, m_h, m_inplace, m_n, m_nthreads, m_plan, m_r, m_s, m_simd_align, OCTAVE_NPROC_CURRENT_OVERRIDABLE, and octave_num_processors_wrapper().
Referenced by instance_ok().
|
delete |
float_fftw_planner::~float_fftw_planner | ( | void | ) |
Definition at line 457 of file oct-fftw.cc.
|
inlinestaticprivate |
Definition at line 265 of file oct-fftw.h.
Referenced by instance_ok().
|
inlinestatic |
Definition at line 230 of file oct-fftw.h.
|
inlinestatic |
Definition at line 218 of file oct-fftw.h.
Referenced by fftw::fft(), fftw::fftNd(), fftw::ifft(), and fftw::ifftNd().
|
private |
Definition at line 635 of file oct-fftw.cc.
References CHECK_SIMD_ALIGNMENT, ESTIMATE, EXHAUSTIVE, HYBRID, m_meth, m_rd, m_rh, m_rn, m_rplan, m_rr, m_rs, m_rsimd_align, MEASURE, nn, OCTAVE_LOCAL_BUFFER, PATIENT, and UNKNOWN.
|
private |
Definition at line 509 of file oct-fftw.cc.
References CHECK_SIMD_ALIGNMENT, ESTIMATE, EXHAUSTIVE, HYBRID, m_d, m_h, m_inplace, m_meth, m_n, m_plan, m_r, m_s, m_simd_align, MEASURE, nn, OCTAVE_LOCAL_BUFFER, PATIENT, and UNKNOWN.
|
private |
|
private |
Definition at line 753 of file oct-fftw.cc.
References m_meth.
|
static |
Definition at line 475 of file oct-fftw.cc.
References float_fftw_planner(), singleton_cleanup_list::add(), cleanup_instance(), and s_instance.
Referenced by threads().
|
inlinestatic |
Definition at line 247 of file oct-fftw.h.
|
inlinestatic |
Definition at line 240 of file oct-fftw.h.
Referenced by Ffftw().
|
delete |
|
static |
Definition at line 489 of file oct-fftw.cc.
References instance_ok(), m_nthreads, m_plan, m_rplan, s_instance, and threads().
|
inlinestatic |
Definition at line 256 of file oct-fftw.h.
|
private |
Definition at line 291 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 300 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 306 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 283 of file oct-fftw.h.
Referenced by do_create_plan(), and do_method().
|
private |
Definition at line 303 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 330 of file oct-fftw.h.
Referenced by float_fftw_planner(), and threads().
|
private |
Definition at line 288 of file oct-fftw.h.
Referenced by float_fftw_planner(), ~float_fftw_planner(), do_create_plan(), do_method(), and threads().
|
private |
Definition at line 297 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 312 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 321 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 324 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 309 of file oct-fftw.h.
Referenced by ~float_fftw_planner(), do_create_plan(), do_method(), and threads().
|
private |
Definition at line 318 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 315 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 326 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 294 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
private |
Definition at line 305 of file oct-fftw.h.
Referenced by float_fftw_planner(), and do_create_plan().
|
staticprivate |
Definition at line 263 of file oct-fftw.h.
Referenced by instance_ok(), and threads().