46 DeviceBuffer *device_buffer;
51 bool needs_copy_to_device;
53 Allocation() : mem(
NULL), device_buffer(
NULL),
size(0), needs_copy_to_device(false)
73 void add_allocation(Allocation &allocation);
77 void free(OpenCLDevice *device);
84 typedef unordered_map<string, Allocation> AllocationsMap;
85 AllocationsMap allocations;
89 DeviceBuffer *smallest_device_buffer();
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
void alloc(const char *name, device_memory &mem)
bool free(device_memory &mem)
MemoryManager(OpenCLDevice *device)
BufferDescriptor get_descriptor(string name)
void set_kernel_arg_buffers(cl_kernel kernel, cl_uint *narg)
void update_device_memory()
static const int NUM_DEVICE_BUFFERS
#define CCL_NAMESPACE_END
__kernel void ccl_constant KernelData ccl_global void ccl_global char ccl_global int ccl_global char ccl_global unsigned int ccl_global float * buffer