vSMC
vSMC: Scalable Monte Carlo
|
Sampler<T>::init_type subtype using OpenCL. More...
#include <vsmc/opencl/backend_cl.hpp>
Public Member Functions | |
virtual std::size_t | accept_count (Particle< T > &particle, const ::cl::Buffer &accept_buffer) |
CLConfigure & | configure () |
const CLConfigure & | configure () const |
virtual void | initialize_param (Particle< T > &, void *) |
virtual void | initialize_state (std::string &) |
const ::cl::Kernel & | kernel () const |
::cl::Kernel & | kernel () |
const std::string & | kernel_name () const |
std::size_t | operator() (Particle< T > &particle, void *param) |
virtual void | post_processor (Particle< T > &) |
virtual void | pre_processor (Particle< T > &) |
virtual void | set_kernel (const Particle< T > &particle) |
virtual void | set_kernel_args (const Particle< T > &particle) |
Static Public Member Functions | |
static constexpr::cl_uint | kernel_args_offset () |
The index offset of additional kernel arguments set by the user. More... | |
Protected Member Functions | |
InitializeCL () | |
InitializeCL (const InitializeCL< T, PlaceHolder > &)=default | |
InitializeCL (InitializeCL< T, PlaceHolder > &&)=default | |
virtual | ~InitializeCL () |
InitializeCL< T, PlaceHolder > & | operator= (const InitializeCL< T, PlaceHolder > &)=default |
InitializeCL< T, PlaceHolder > & | operator= (InitializeCL< T, PlaceHolder > &&)=default |
Sampler<T>::init_type subtype using OpenCL.
Kernel requirement (initialize_state
)
pre_processor
.state
has size N * StateSize
where accept
has size N
.state
has to be treat as a length N
array. In summary, on the host side, it is a cl::Buffer
object being passed to the kernel, which is not much unlike void *
pointer. Definition at line 543 of file backend_cl.hpp.
|
inlineprotected |
Definition at line 619 of file backend_cl.hpp.
|
protecteddefault |
|
inlineprotectedvirtual |
Definition at line 619 of file backend_cl.hpp.
|
protecteddefault |
|
inlinevirtual |
Definition at line 577 of file backend_cl.hpp.
|
inline |
Definition at line 615 of file backend_cl.hpp.
|
inline |
Definition at line 615 of file backend_cl.hpp.
|
inlinevirtual |
Reimplemented in vsmc::InitializeAdapterBase< T, NullType, InitializeCL< T > >, and vsmc::InitializeAdapterBase< T, F, InitializeCL< T > >.
Definition at line 572 of file backend_cl.hpp.
|
inlinevirtual |
Reimplemented in vsmc::InitializeAdapter< T, InitializeCL, NullType >, and vsmc::InitializeAdapter< T, InitializeCL, F >.
Definition at line 573 of file backend_cl.hpp.
|
inline |
Definition at line 615 of file backend_cl.hpp.
|
inline |
Definition at line 615 of file backend_cl.hpp.
|
inlinestatic |
The index offset of additional kernel arguments set by the user.
The first user supplied additional argument shall have index kernel_args_offset
Definition at line 552 of file backend_cl.hpp.
|
inline |
Definition at line 615 of file backend_cl.hpp.
|
inline |
Definition at line 554 of file backend_cl.hpp.
|
protecteddefault |
|
protecteddefault |
|
inlinevirtual |
Reimplemented in vsmc::InitializeAdapterBase< T, NullType, InitializeCL< T > >, and vsmc::InitializeAdapterBase< T, F, InitializeCL< T > >.
Definition at line 575 of file backend_cl.hpp.
|
inlinevirtual |
Reimplemented in vsmc::InitializeAdapterBase< T, NullType, InitializeCL< T > >, and vsmc::InitializeAdapterBase< T, F, InitializeCL< T > >.
Definition at line 574 of file backend_cl.hpp.
|
inlinevirtual |
Definition at line 588 of file backend_cl.hpp.
|
inlinevirtual |
Definition at line 595 of file backend_cl.hpp.