Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/integrator/render_scheduler.h
| Show First 20 Lines • Show All 180 Lines • ▼ Show 20 Lines | public: | ||||
| RenderWork get_render_work(); | RenderWork get_render_work(); | ||||
| /* Report that the path tracer started to work, after scene update and loading kernels. */ | /* Report that the path tracer started to work, after scene update and loading kernels. */ | ||||
| void report_work_begin(const RenderWork &render_work); | void report_work_begin(const RenderWork &render_work); | ||||
| /* Report time (in seconds) which corresponding part of work took. */ | /* Report time (in seconds) which corresponding part of work took. */ | ||||
| void report_path_trace_time(const RenderWork &render_work, double time, bool is_cancelled); | void report_path_trace_time(const RenderWork &render_work, double time, bool is_cancelled); | ||||
| void report_path_trace_occupancy(const RenderWork &render_work, float occupancy); | |||||
| void report_adaptive_filter_time(const RenderWork &render_work, double time, bool is_cancelled); | void report_adaptive_filter_time(const RenderWork &render_work, double time, bool is_cancelled); | ||||
| void report_denoise_time(const RenderWork &render_work, double time); | void report_denoise_time(const RenderWork &render_work, double time); | ||||
| void report_display_update_time(const RenderWork &render_work, double time); | void report_display_update_time(const RenderWork &render_work, double time); | ||||
| void report_rebalance_time(const RenderWork &render_work, double time, bool balance_changed); | void report_rebalance_time(const RenderWork &render_work, double time, bool balance_changed); | ||||
| /* Generate full multi-line report of the rendering process, including rendering parameters, | /* Generate full multi-line report of the rendering process, including rendering parameters, | ||||
| * times, and so on. */ | * times, and so on. */ | ||||
| string full_report() const; | string full_report() const; | ||||
| ▲ Show 20 Lines • Show All 178 Lines • ▼ Show 20 Lines | struct { | ||||
| bool full_frame_was_written = false; | bool full_frame_was_written = false; | ||||
| bool path_trace_finished = false; | bool path_trace_finished = false; | ||||
| bool time_limit_reached = false; | bool time_limit_reached = false; | ||||
| /* Time at which rendering started and finished. */ | /* Time at which rendering started and finished. */ | ||||
| double start_render_time = 0.0; | double start_render_time = 0.0; | ||||
| double end_render_time = 0.0; | double end_render_time = 0.0; | ||||
| /* Measured occupancy of the render devices measured normalized to the number of samples. | |||||
| * | |||||
| * In a way it is "trailing": when scheduling new work this occupancy is measured when the | |||||
| * previous work was rendered. */ | |||||
| int occupancy_num_samples = 0; | |||||
| float occupancy = 1.0f; | |||||
| } state_; | } state_; | ||||
| /* Timing of tasks which were performed at the very first render work at 100% of the | /* Timing of tasks which were performed at the very first render work at 100% of the | ||||
| * resolution. This timing information is used to estimate resolution divider for fats | * resolution. This timing information is used to estimate resolution divider for fats | ||||
| * navigation. */ | * navigation. */ | ||||
| struct { | struct { | ||||
| double path_trace_per_sample; | double path_trace_per_sample; | ||||
| double denoise_time; | double denoise_time; | ||||
| ▲ Show 20 Lines • Show All 68 Lines • Show Last 20 Lines | |||||