#include "oct-fftw.h"
Public Types | |
enum | FftwMethod { UNKNOWN = -1 , ESTIMATE , MEASURE , PATIENT , EXHAUSTIVE , HYBRID } |
Public Member Functions | |
fftw_planner (const fftw_planner &)=delete | |
~fftw_planner (void) | |
fftw_planner & | operator= (const 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 double *in, Complex *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 Complex *in, Complex *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 | |
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 double *in, Complex *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 Complex *in, Complex *out) |
FftwMethod | do_method (FftwMethod _meth) |
FftwMethod | do_method (void) |
Static Private Member Functions | |
static void | cleanup_instance (void) |
Private Attributes | |
octave_idx_type | d [2] |
octave_idx_type | h [2] |
bool | inplace [2] |
FftwMethod | meth |
dim_vector | n [2] |
int | nthreads |
void * | plan [2] |
int | r [2] |
octave_idx_type | rd |
octave_idx_type | rh |
dim_vector | rn |
void * | rplan |
int | rr |
octave_idx_type | rs |
bool | rsimd_align |
octave_idx_type | s [2] |
bool | simd_align [2] |
Static Private Attributes | |
static fftw_planner * | instance = nullptr |
Definition at line 40 of file oct-fftw.h.
Enumerator | |
---|---|
UNKNOWN | |
ESTIMATE | |
MEASURE | |
PATIENT | |
EXHAUSTIVE | |
HYBRID |
Definition at line 58 of file oct-fftw.h.
|
protected |
Definition at line 68 of file oct-fftw.cc.
References d, h, inplace, n, nthreads, OCTAVE_NPROC_CURRENT_OVERRIDABLE, octave_num_processors_wrapper(), plan, r, s, and simd_align.
Referenced by instance_ok().
|
delete |
octave::fftw_planner::~fftw_planner | ( | void | ) |
Definition at line 93 of file oct-fftw.cc.
|
inlinestaticprivate |
Definition at line 118 of file oct-fftw.h.
Referenced by instance_ok().
|
inlinestatic |
Definition at line 83 of file oct-fftw.h.
|
inlinestatic |
Definition at line 71 of file oct-fftw.h.
Referenced by octave::fftw::fft(), octave::fftw::fftNd(), octave::fftw::ifft(), and octave::fftw::ifftNd().
|
private |
Definition at line 272 of file oct-fftw.cc.
References CHECK_SIMD_ALIGNMENT, ESTIMATE, EXHAUSTIVE, HYBRID, MEASURE, meth, nn, OCTAVE_LOCAL_BUFFER, PATIENT, rd, rh, rn, rplan, rr, rs, rsimd_align, and UNKNOWN.
|
private |
Definition at line 147 of file oct-fftw.cc.
References CHECK_SIMD_ALIGNMENT, d, ESTIMATE, EXHAUSTIVE, h, HYBRID, inplace, MEASURE, meth, n, nn, OCTAVE_LOCAL_BUFFER, PATIENT, plan, r, s, simd_align, and UNKNOWN.
|
private |
|
private |
Definition at line 390 of file oct-fftw.cc.
References meth.
|
static |
Definition at line 111 of file oct-fftw.cc.
References fftw_planner(), singleton_cleanup_list::add(), cleanup_instance(), instance, and retval.
Referenced by threads().
|
inlinestatic |
Definition at line 100 of file oct-fftw.h.
|
inlinestatic |
Definition at line 93 of file oct-fftw.h.
Referenced by Ffftw().
|
delete |
|
static |
Definition at line 125 of file oct-fftw.cc.
References instance, instance_ok(), nthreads, plan, rplan, and threads().
|
inlinestatic |
Definition at line 109 of file oct-fftw.h.
|
private |
Definition at line 143 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
private |
Definition at line 152 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
private |
Definition at line 158 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
staticprivate |
Definition at line 116 of file oct-fftw.h.
Referenced by instance_ok(), and threads().
|
private |
Definition at line 135 of file oct-fftw.h.
Referenced by do_create_plan(), and do_method().
|
private |
Definition at line 155 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
private |
Definition at line 182 of file oct-fftw.h.
Referenced by fftw_planner(), and threads().
|
private |
Definition at line 140 of file oct-fftw.h.
Referenced by fftw_planner(), ~fftw_planner(), do_create_plan(), do_method(), and threads().
|
private |
Definition at line 149 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
private |
Definition at line 164 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 173 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 176 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 161 of file oct-fftw.h.
Referenced by ~fftw_planner(), do_create_plan(), do_method(), and threads().
|
private |
Definition at line 170 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 167 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 178 of file oct-fftw.h.
Referenced by do_create_plan().
|
private |
Definition at line 146 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().
|
private |
Definition at line 157 of file oct-fftw.h.
Referenced by fftw_planner(), and do_create_plan().