17 #ifndef __DEVICE_SPLIT_KERNEL_H__
18 #define __DEVICE_SPLIT_KERNEL_H__
30 #define DATA_ALLOCATION_MEM_FACTOR 5000000
97 double avg_time_per_sample;
103 bool kernel_data_initialized;
104 size_t local_size[2];
105 size_t global_size[2];
119 size_t num_threads) = 0;
126 int num_global_elements,
virtual bool enqueue_split_kernel_data_init(const KernelDimensions &dim, RenderTile &rtile, int num_global_elements, device_memory &kernel_globals, device_memory &kernel_data_, device_memory &split_data, device_memory &ray_state, device_memory &queue_index, device_memory &use_queues_flag, device_memory &work_pool_wgs)=0
virtual SplitKernelFunction * get_split_kernel_function(const string &kernel_name, const DeviceRequestedFeatures &)=0
size_t max_elements_for_max_buffer_size(device_memory &kg, device_memory &data, uint64_t max_buffer_size)
virtual int2 split_kernel_local_size()=0
bool load_kernels(const DeviceRequestedFeatures &requested_features)
bool path_trace(DeviceTask &task, RenderTile &rtile, device_memory &kgbuffer, device_memory &kernel_data)
virtual uint64_t state_buffer_size(device_memory &kg, device_memory &data, size_t num_threads)=0
DeviceSplitKernel(Device *device)
virtual int2 split_kernel_global_size(device_memory &kg, device_memory &data, DeviceTask &task)=0
virtual ~DeviceSplitKernel()
KernelDimensions(size_t global_size_[2], size_t local_size_[2])
virtual ~SplitKernelFunction()
virtual bool enqueue(const KernelDimensions &dim, device_memory &kg, device_memory &data)=0
#define CCL_NAMESPACE_END
struct blender::compositor::@172::@174 task
unsigned __int64 uint64_t