Rosetta
Public Member Functions | Public Attributes | List of all members
CL Struct Reference

#include <CL.hh>

Public Member Functions

 CL (std::ostream &out)
 
 ~CL ()
 
void make_kernel (std::string kname)
 
cl_kernel & operator[] (std::string kname)
 
void handle_error (std::string msg)
 
void exit_on_error ()
 
void dont_exit_on_error ()
 
void zero_gpu_mem (cl_mem buf, uint size)
 
cl_mem makeROmem (size_t size)
 
cl_mem makeWOmem (size_t size)
 
cl_mem makeRWmem (size_t size)
 
void cpu2gpu (void const *const dat, cl_mem buf, std::size_t size)
 
void gpu2cpu (cl_mem buf, void *dat, std::size_t size)
 
bool havekernel (std::string kname)
 
void q1d (std::string kname, std::size_t gdim0, std::size_t ldim0=0)
 
void q2d (std::string kname, std::size_t gdim0, sstd::ize_t gdim1, std::size_t ldim0=0, std::size_t ldim1=1)
 
void q3d (std::string kname, std::size_t gdim0, std::size_t gdim1, std::size_t gdim2, std::size_t ldim0=0, std::size_t ldim1=1, std::size_t ldim2=1)
 
void finish ()
 
std::string errstr (int input)
 
void setargs (std::string kname, cl_mem a1, cl_mem a2, cl_mem a3, cl_mem a4, cl_mem a5)
 

Public Attributes

int err_
 
Size wgsize_
 
cl_platform_id platform_
 
cl_device_id device_id_
 
cl_context context_
 
cl_command_queue queue_
 
cl_program program_
 
cl_mem zmem_size_
 
bool exitonerr_
 
std::ostream & out_
 
std::map< std::string, cl_kernel > kernels_
 

Constructor & Destructor Documentation

◆ CL()

CL::CL ( std::ostream &  out)
inline

◆ ~CL()

CL::~CL ( )
inline

Member Function Documentation

◆ cpu2gpu()

void CL::cpu2gpu ( void const *const  dat,
cl_mem  buf,
std::size_t  size 
)
inline

◆ dont_exit_on_error()

void CL::dont_exit_on_error ( )
inline

References exitonerr_.

Referenced by test_k_square().

◆ errstr()

std::string CL::errstr ( int  input)
inline

◆ exit_on_error()

void CL::exit_on_error ( )
inline

References exitonerr_.

◆ finish()

void CL::finish ( )
inline

References queue_.

Referenced by gpu_refold_test(), gpu_score_test(), and refold_gpu().

◆ gpu2cpu()

void CL::gpu2cpu ( cl_mem  buf,
void *  dat,
std::size_t  size 
)
inline

◆ handle_error()

void CL::handle_error ( std::string  msg)
inline

◆ havekernel()

bool CL::havekernel ( std::string  kname)
inline

References kernels_.

Referenced by q1d(), q2d(), and q3d().

◆ make_kernel()

void CL::make_kernel ( std::string  kname)
inline

◆ makeROmem()

cl_mem CL::makeROmem ( size_t  size)
inline

◆ makeRWmem()

cl_mem CL::makeRWmem ( size_t  size)
inline

◆ makeWOmem()

cl_mem CL::makeWOmem ( size_t  size)
inline

◆ operator[]()

cl_kernel& CL::operator[] ( std::string  kname)
inline

References kernels_.

◆ q1d()

void CL::q1d ( std::string  kname,
std::size_t  gdim0,
std::size_t  ldim0 = 0 
)
inline

◆ q2d()

void CL::q2d ( std::string  kname,
std::size_t  gdim0,
sstd::ize_t  gdim1,
std::size_t  ldim0 = 0,
std::size_t  ldim1 = 1 
)
inline

◆ q3d()

void CL::q3d ( std::string  kname,
std::size_t  gdim0,
std::size_t  gdim1,
std::size_t  gdim2,
std::size_t  ldim0 = 0,
std::size_t  ldim1 = 1,
std::size_t  ldim2 = 1 
)
inline

◆ setargs()

void CL::setargs ( std::string  kname,
cl_mem  a1,
cl_mem  a2,
cl_mem  a3,
cl_mem  a4,
cl_mem  a5 
)
inline

◆ zero_gpu_mem()

void CL::zero_gpu_mem ( cl_mem  buf,
uint  size 
)
inline

Member Data Documentation

◆ context_

cl_context CL::context_

Referenced by CL(), makeROmem(), makeRWmem(), makeWOmem(), and ~CL().

◆ device_id_

cl_device_id CL::device_id_

Referenced by CL().

◆ err_

int CL::err_

◆ exitonerr_

bool CL::exitonerr_

◆ kernels_

std::map<std::string,cl_kernel> CL::kernels_

◆ out_

std::ostream& CL::out_

Referenced by CL(), and handle_error().

◆ platform_

cl_platform_id CL::platform_

Referenced by CL().

◆ program_

cl_program CL::program_

Referenced by CL(), make_kernel(), and ~CL().

◆ queue_

cl_command_queue CL::queue_

◆ wgsize_

Size CL::wgsize_

Referenced by CL(), q1d(), q2d(), and q3d().

◆ zmem_size_

cl_mem CL::zmem_size_

Referenced by CL().


The documentation for this struct was generated from the following file: