CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Classes | Namespaces | Enumerations | Functions
CLHelper.h File Reference

CL helper for creating binaries. More...

#include <CLRX/Config.h>
#include <exception>
#include <vector>
#include <utility>
#include <CL/cl.h>
#include <CLRX/amdasm/Commons.h>
#include <CLRX/utils/Containers.h>
#include <CLRX/utils/CString.h>
#include <CLRX/utils/Utilities.h>
#include <CLRX/utils/GPUId.h>

Go to the source code of this file.

Classes

class  CLRX::CLError
 error class based on std::exception More...
 
struct  CLRX::CLAsmSetup
 structure that holds assembler setup for OpenCL programs More...
 

Namespaces

 CLRX
 main namespace
 

Enumerations

enum  : Flags { CLRX::CLHELPER_USEAMDCL2 = 1, CLRX::CLHELPER_USEAMDLEGACY = 2 }
 

Functions

cl_platform_id CLRX::chooseCLPlatformForCLRX ()
 choose suitable OpenCL platform for CLRX assembler programs
 
std::vector< cl_platform_id > CLRX::chooseCLPlatformsForCLRX ()
 choose suitable OpenCL many platforms for CLRX assembler programs
 
CLAsmSetup CLRX::assemblerSetupForCLDevice (cl_device_id clDevice, Flags flags=0, Flags asmFlags=0)
 get assembler setup(compile assembler code) binary for OpenCL device
 
Array< cxbyteCLRX::createBinaryForOpenCL (const CLAsmSetup &asmSetup, const char *sourceCode, size_t sourceCodeLen=0)
 create program binary for OpenCL
 
Array< cxbyteCLRX::createBinaryForOpenCL (const CLAsmSetup &asmSetup, const std::vector< std::pair< CString, uint64_t > > &defSymbols, const char *sourceCode, size_t sourceCodeLen=0)
 create program binary for OpenCL
 
cl_program CLRX::createProgramForCLDevice (cl_context clContext, cl_device_id clDevice, const CLAsmSetup &asmSetup, const Array< cxbyte > &binary, CString *buildLog=nullptr)
 create (build program) binary for OpenCL device
 
cl_program CLRX::createProgramForCLDevice (cl_context clContext, cl_device_id clDevice, const CLAsmSetup &asmSetup, const char *sourceCode, size_t sourceCodeLen=0, CString *buildLog=nullptr)
 create (compile assembler code and build program) binary for OpenCL device
 
cl_program CLRX::createProgramForCLDevice (cl_context clContext, cl_device_id clDevice, const CLAsmSetup &asmSetup, const std::vector< std::pair< CString, uint64_t > > &defSymbols, const char *sourceCode, size_t sourceCodeLen=0, CString *buildLog=nullptr)
 create (compile assembler code and build program) binary for OpenCL device
 

Detailed Description

CL helper for creating binaries.