27 const int sample_start,
28 const int samples_num,
29 const int sample_offset,
30 const float scrambling_distance)
59 if (num_path_states_in_tile == 0) {
60 LOG_DEBUG <<
"Will not schedule any tiles: no work remained for the device";
71 LOG_DEBUG <<
"Number of unused path states: "
101 const int start_sample = sample_range_index *
tile_size_.num_samples;
123 const int tile_work_size = work_tile.
w * work_tile.
h * work_tile.
num_samples;
127 if (max_work_size && tile_work_size > max_work_size) {
134 *work_tile_ = work_tile;
int2 image_full_offset_px_
int num_tiles_per_sample_range_
void set_accelerated_rt(bool accelerated_rt)
void reset(const BufferParams &buffer_params, const int sample_start, const int samples_num, const int sample_offset, float scrambling_distance)
void set_max_num_path_states(const int max_num_path_states)
bool get_work(KernelWorkTile *work_tile, const int max_work_size=0)
void reset_scheduler_state()
float scrambling_distance_
#define CCL_NAMESPACE_END
TileSize tile_calculate_best_size(const bool accel_rt, const int2 &image_size, const int num_samples, const int max_num_path_states, const float scrambling_distance)
ccl_gpu_kernel_postfix ccl_global KernelWorkTile const int num_tiles
ccl_device_inline size_t divide_up(const size_t x, const size_t y)