enum Fourier_transform_format
  • Split_complex = 0
  • Interleaved_complex = 1
class vtb::opencl::Fourier_transform_base
Derived classes
Types
  • using int1 = blitz::TinyVector< int, 1 >
  • using int2 = blitz::TinyVector< int, 2 >
  • using int3 = blitz::TinyVector< int, 3 >
Methods
  • precompile(const int3 & max_power, Context * context) -> void

    Compile the code for each power of 2 up to max_power.

  • context() -> Context *
  • context(Context * rhs) -> void
  • shape(const int3 & rhs) -> void
  • shape() const -> const int3 &
  • dump(std::ostream & out) -> void
  • backward(clx::buffer x, int batch_size = 1) -> void
  • forward(clx::buffer x, int batch_size = 1) -> void
  • enqueue(clx::buffer x, int direction, int batch_size = 1) -> void
  • Fourier_transform_base(const int3 & shape)explicit
  • Fourier_transform_base()
template <class T, int N>
class vtb::opencl::Chirp_Z_transform
Base classes
Types
  • using shape_type = blitz::TinyVector< int, N >
Methods
  • transform(clx::buffer x, int dir) -> void
  • backward(clx::buffer x) -> void
  • forward(clx::buffer x) -> void
  • shape(const shape_type & rhs) -> void
  • shape() const -> const shape_type &
  • Chirp_Z_transform(const shape_type & shp)explicit
  • Chirp_Z_transform()
template <class T, int N>
class vtb::opencl::Fourier_transform
Base classes
Types
  • using shape_type = blitz::TinyVector< int, N >
Methods
  • precompile(const shape_type & shp, Context * context) -> void
  • dump(std::ostream & out) -> void
  • context() -> Context *
  • context(Context * rhs) -> void
  • backward(clx::buffer x, int batch_size = 1) -> void
  • forward(clx::buffer x, int batch_size = 1) -> void
  • shape(const shape_type & rhs) -> void
  • shape() const -> shape_type
  • Fourier_transform(const shape_type & shape)explicit
  • Fourier_transform()
class vtb::opencl::Chirp_Z_transform_base
Derived classes
Fields
  • clx::kernel _zero_init
  • clx::kernel _mult3
  • clx::kernel _mult2
  • clx::kernel _mult1
  • clx::kernel _reciprocal_chirp
  • clx::kernel _makechirp
  • Buffer< C > _xp
  • Buffer< C > _ichirp
  • Buffer< C > _chirp
  • fft_type _fft
Methods
  • make_chirp(const int3 & shape, const int3 & fft_shape) -> voidprotected
  • context() -> Context *
  • context(Context * rhs) -> void
  • enqueue(clx::buffer x, int direction, int batch_size = 1) -> void
struct vtb::opencl::Kernel_info
Fields
  • bool in_place_possible
  • int axis
  • int num_workitems_per_workgroup
  • int num_xforms_per_workgroup
  • int num_workgroups
  • int lmem_size
  • std::string name
  • clx::kernel kernel
template <int N>
make_shape(const blitz::TinyVector< int, N > & rhs) -> blitz::TinyVector< int, 3 >
template <int N>
reduce_shape(const blitz::TinyVector< int, 3 > & rhs) -> blitz::TinyVector< int, N >
make_shape< 3 >(const blitz::TinyVector< int, 3 > & rhs) -> blitz::TinyVector< int, 3 >
reduce_shape< 3 >(const blitz::TinyVector< int, 3 > & rhs) -> blitz::TinyVector< int, 3 >